Changed byte array in Memory to char array (+60% performance improvement)

This commit is contained in:
simon
2017-11-18 22:23:32 -05:00
parent d004386b7b
commit 12db25e726
10 changed files with 102 additions and 55 deletions

View File

@@ -36,14 +36,14 @@ public class MemoryTest {
Memory memory = new Memory(memorySize);
assertTrue(memory.write(0, new byte[memorySize], 0, memorySize));
assertFalse(memory.write(0, new byte[memorySize], 0, memorySize + 1));
assertFalse(memory.write(0, new byte[memorySize], 0, -1));
assertFalse(memory.write(-1, new byte[memorySize], 0, 10));
assertTrue(memory.write(0, new char[memorySize], 0, memorySize));
assertFalse(memory.write(0, new char[memorySize], 0, memorySize + 1));
assertFalse(memory.write(0, new char[memorySize], 0, -1));
assertFalse(memory.write(-1, new char[memorySize], 0, 10));
assertFalse(memory.write(memorySize / 2, new byte[15], 0, 1));
assertFalse(memory.write((memorySize / 2) - 5, new byte[11], 0, 11));
assertTrue(memory.write((memorySize / 2) - 5, new byte[11], 0, 10));
assertFalse(memory.write(memorySize, new char[15], 0, 1));
assertFalse(memory.write((memorySize) - 5, new char[11], 0, 6));
assertTrue(memory.write((memorySize) - 5, new char[11], 0, 5));
}

View File

@@ -55,10 +55,10 @@ public class AddInstructionTest {
assertFalse(status.isBreakFlag());
memory.clear();
memory.set(memorySize, 10);
memory.set(memorySize - 1, 10);
memory.set(1, 10);
addInstruction.execute(memory, memorySize, memory, 1, status);
assertEquals(20, memory.get(memorySize));
addInstruction.execute(memory, memorySize - 1, memory, 1, status);
assertEquals(20, memory.get(memorySize - 1));
assertEquals(10, memory.get(1));
//FLAGS Should be CF=0 ZF=0 SF=0 OF=0
assertFalse(status.isSignFlag());