如何在 Hack Assembly 中实现 Java 函数?我知道更改变量的指令很容易制作,但是 HACK 是如何调用函数的呢?例如:
function(int a, int b) {
if (a-b > 0)
return a;
else
return b;
}
我的(我认为错误的)结果是:
@a
D=M
@b
D=D-M
@JUMPMARK1
D;JGT
@Jumpmark2
0;JMP
(JUMPMARK1)
@a
D=M
@function
M=D
(Jumpmark2)
@b
D=M
@function
M=D
所以问题是我不知道在哪里存储结果(返回)..我应该像在这个例子中为函数创建一个变量并将它存储在那里吗?