我目前正在使用一种名为 Y86、AT&T 语法的教育汇编语言编写函数,并试图完成/解决一些不支持的问题。我想向存储在内存中的值添加一个数字,出于某种愚蠢的原因,您只能使用 addl 添加到寄存器中。我不知道这是为什么。
在函数内部,我想做这样的事情,但不知道如何:
addl $1, -4(ebp)
另外,我似乎遇到了寄存器用完的问题。也许是因为我不知道如何为存储局部变量腾出空间。我听说有一个概念,即调用者和被调用者保存寄存器。我将非常感谢任何与上述内容相同但在 Y86 中的命令。此外,保存寄存器的任何提示都会很棒!谢谢你!我知道查看这些东西真的很痛苦。