619 B
619 B
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 |