nand2tetris/vm
Nemo 66efa72230 [docs] Fix tables in vm/README 2020-07-07 12:36:12 +05:30
..
CodeWriter.php [08] Finishes VM Implementation 2020-06-08 23:56:54 +05:30
CommandType.php [08] Implement Return/Function/Init 2020-06-04 15:48:32 +05:30
Parser.php Break into multiple files for easier navigation 2020-06-02 03:19:28 +05:30
README.md [docs] Fix tables in vm/README 2020-07-07 12:36:12 +05:30
VMTranslator.php [08] Finishes VM Implementation 2020-06-08 23:56:54 +05:30

README.md

VM Implementation

We have 8 segments:

  • argument
  • local
  • this/that
  • pointer
  • static (shared)
  • constant (shared)
  • temp (shared)
RAM Address Usage
0-15 Virtual Registers
16-255 Static Variables (shared)
256-2047 Stack
2048-16384 Heap
16384-24575 Memory mapped I/O
Register Name Usage
RAM[0] SP Stack Pointer
RAM[1] LCL local
RAM[1] ARG argument
RAM[3] THIS this
RAM[4] THAT that
RAM[5-12] temp Segment
RAM[13-15] General Purpose Registers