Exemplo n.º 1
0
 private void ValidateMemoryAccess(Word index)
 {
     if (index >= _memorySize)
     {
         throw new MemoryAccessException();
     }
 }
Exemplo n.º 2
0
 public void SetWordAt(Word location, Word value)
 {
     for (var i = 0 ; i < Word.Width ; ++i)
     {
         this[location + i] = value.GetByte(i);
     }
 }
Exemplo n.º 3
0
 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;
 }
Exemplo n.º 4
0
 public byte this[Word index]
 {
     get
     {
         ValidateMemoryAccess(index);
         return _space[index];
     }
     set
     {
         ValidateMemoryAccess(index);
         _space[index] = value;
     }
 }
Exemplo n.º 5
0
 public SystemMemory(Word memorySize)
 {
     _memorySize = memorySize;
     InitializeSpace();
 }
Exemplo n.º 6
0
 public CpuInstruction(Word raw)
 {
     _raw = raw;
 }
Exemplo n.º 7
0
 public bool Equals(Word other)
 {
     return other._value == _value;
 }
Exemplo n.º 8
0
 public void Store(Word value)
 {
     _value = value;
 }