nand2tetris/projects/05/CPU.out
Nemo e7d72b1020 [05/CPU] Implements most of the CPU
This includes:

- Handling of data i/o (for A/D/M)
- Handling the ALU properly (all 28 computations)
- Basic incremental PC (i/o)
- PC reset
- read/write to M

What's missing:

- Handling jumps
2020-05-28 19:58:12 +05:30

26 lines
1.8 KiB
Plaintext

|time| inM | instruction |reset| outM |writeM |addre| pc |DRegiste|
|0+ | 0|0011000000111001| 0 | 0| 0 | 0| 0| 0 |
|1 | 0|0011000000111001| 0 | 0| 0 |12345| 1| 0 |
|1+ | 0|1110110000010000| 0 | 12345| 0 |12345| 1| 12345 |
|2 | 0|1110110000010000| 0 | 12345| 0 |12345| 2| 12345 |
|2+ | 0|0101101110100000| 0 | -1| 0 |12345| 2| 12345 |
|3 | 0|0101101110100000| 0 | -1| 0 |23456| 3| 12345 |
|3+ | 0|1110000111010000| 0 | 11111| 0 |23456| 3| 11111 |
|4 | 0|1110000111010000| 0 | 12345| 0 |23456| 4| 11111 |
|4+ | 0|0000001111101000| 0 | -11111| 0 |23456| 4| 11111 |
|5 | 0|0000001111101000| 0 | -11111| 0 | 1000| 5| 11111 |
|5+ | 0|1110001100001000| 0 | 11111| 1 | 1000| 5| 11111 |
|6 | 0|1110001100001000| 0 | 11111| 1 | 1000| 6| 11111 |
|6+ | 0|0000001111101001| 0 | -11111| 0 | 1000| 6| 11111 |
|7 | 0|0000001111101001| 0 | -11111| 0 | 1001| 7| 11111 |
|7+ | 0|1110001110011000| 0 | 11110| 1 | 1001| 7| 11110 |
|8 | 0|1110001110011000| 0 | 11109| 1 | 1001| 8| 11110 |
|8+ | 0|0000001111101000| 0 | -11110| 0 | 1001| 8| 11110 |
|9 | 0|0000001111101000| 0 | -11110| 0 | 1000| 9| 11110 |
|9+ | 11111|1111010011010000| 0 | -1| 0 | 1000| 9| -1 |
|10 | 11111|1111010011010000| 0 | -11112| 0 | 1000| 10| -1 |
|10+ | 11111|0000000000001110| 0 | 1000| 0 | 1000| 10| -1 |
|11 | 11111|0000000000001110| 0 | 14| 0 | 14| 11| -1 |
|11+ | 11111|1110001100000100| 0 | -1| 0 | 14| 11| -1 |
|12 | 11111|1110001100000100| 0 | -1| 0 | 14| 12| -1 |