Files
N2T/projects/07/MemoryAccess/StaticTest/StaticTest.asm
2020-11-15 13:57:48 -05:00

123 lines
1.1 KiB
NASM

// push constant 111
@111
D = A
@SP
A = M
M = D
@SP
M = M + 1
// push constant 333
@333
D = A
@SP
A = M
M = D
@SP
M = M + 1
// push constant 888
@888
D = A
@SP
A = M
M = D
@SP
M = M + 1
// pop static StaticTest.8
@SP
A = M
A = A - 1
D = M
@SP
M = M - 1
// ^ pop into D
@StaticTest.8
M = D
// ^ StaticTest.8 = D
// pop static StaticTest.3
@SP
A = M
A = A - 1
D = M
@SP
M = M - 1
// ^ pop into D
@StaticTest.3
M = D
// ^ StaticTest.3 = D
// pop static StaticTest.1
@SP
A = M
A = A - 1
D = M
@SP
M = M - 1
// ^ pop into D
@StaticTest.1
M = D
// ^ StaticTest.1 = D
// push static StaticTest.3
@StaticTest.3
D = M
// ^ D = StaticTest.3
@SP
A = M
M = D
@SP
M = M + 1
// ^ push from D
// push static StaticTest.1
@StaticTest.1
D = M
// ^ D = StaticTest.1
@SP
A = M
M = D
@SP
M = M + 1
// ^ push from D
// sub
@SP
A = M
A = A - 1
A = A - 1
D = M
A = A + 1
D = D - M
A = A - 1
M = D
@SP
M = M - 1
// push static StaticTest.8
@StaticTest.8
D = M
// ^ D = StaticTest.8
@SP
A = M
M = D
@SP
M = M + 1
// ^ push from D
// add
@SP
A = M
A = A - 1
A = A - 1
D = M
A = A + 1
D = D + M
A = A - 1
M = D
@SP
M = M - 1