Files
nand2tetris/projects/12/MathTest/Main.vm
T
QkoSad 7894b48931 .
2025-07-16 13:00:37 +03:00

163 lines
2.2 KiB
Plaintext
Executable File

function Main.main 1
push constant 8000
pop local 0
push local 0
push constant 0
push constant 2
push constant 3
call Math.multiply 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 1
push local 0
push constant 0
add
pop pointer 1
push that 0
push constant 30
neg
call Math.multiply 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 2
push local 0
push constant 1
add
pop pointer 1
push that 0
push constant 100
call Math.multiply 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 3
push constant 1
push local 0
push constant 2
add
pop pointer 1
push that 0
call Math.multiply 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 4
push local 0
push constant 3
add
pop pointer 1
push that 0
push constant 0
call Math.multiply 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 5
push constant 9
push constant 3
call Math.divide 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 6
push constant 18000
neg
push constant 6
call Math.divide 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 7
push constant 32766
push constant 32767
neg
call Math.divide 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 8
push constant 9
call Math.sqrt 1
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 9
push constant 32767
call Math.sqrt 1
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 10
push constant 345
push constant 123
call Math.min 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 11
push constant 123
push constant 345
neg
call Math.max 2
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 12
push constant 27
call Math.abs 1
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push local 0
push constant 13
push constant 32767
neg
call Math.abs 1
pop temp 1
add
pop pointer 1
push temp 1
pop that 0
push constant 0
return