コード例 #1
0
ファイル: SystemMemory.cs プロジェクト: jpeace/SharpOs
 private void ValidateMemoryAccess(Word index)
 {
     if (index >= _memorySize)
     {
         throw new MemoryAccessException();
     }
 }
コード例 #2
0
ファイル: SystemMemory.cs プロジェクト: jpeace/SharpOs
 public void SetWordAt(Word location, Word value)
 {
     for (var i = 0 ; i < Word.Width ; ++i)
     {
         this[location + i] = value.GetByte(i);
     }
 }
コード例 #3
0
ファイル: SystemMemory.cs プロジェクト: jpeace/SharpOs
 public Word GetWordAt(Word location)
 {
     var ret = new Word();
     for (var i = 0 ; i < Word.Width ; ++i)
     {
         ret.SetByte(i, this[location + i]);
     }
     return ret;
 }
コード例 #4
0
ファイル: SystemMemory.cs プロジェクト: jpeace/SharpOs
 public byte this[Word index]
 {
     get
     {
         ValidateMemoryAccess(index);
         return _space[index];
     }
     set
     {
         ValidateMemoryAccess(index);
         _space[index] = value;
     }
 }
コード例 #5
0
ファイル: SystemMemory.cs プロジェクト: jpeace/SharpOs
 public SystemMemory(Word memorySize)
 {
     _memorySize = memorySize;
     InitializeSpace();
 }
コード例 #6
0
ファイル: CpuInstruction.cs プロジェクト: jpeace/SharpOs
 public CpuInstruction(Word raw)
 {
     _raw = raw;
 }
コード例 #7
0
ファイル: Word.cs プロジェクト: jpeace/SharpOs
 public bool Equals(Word other)
 {
     return other._value == _value;
 }
コード例 #8
0
ファイル: Register.cs プロジェクト: jpeace/SharpOs
 public void Store(Word value)
 {
     _value = value;
 }