【发布时间】:2012-06-26 07:39:09
【问题描述】:
我正在研究一个使用过程的 MIPS 代码,但我无法理解堆栈 (sp) 和帧指针 (fp) 的用途。
例如,我研究的代码如下所示。它会打印您输入的数字之前的所有数字,例如3. 3,2,1,0 并显示它使用了多少堆栈大小。在此示例中,它使用了 16。我将 -4 更改为 -8,但出现错误。
但是,我注意到其他一些使用-8 的代码。
问题是我错过了什么?
proc:
addi $sp,$sp,-4 #
sw $ra,0($sp) # push $ra
【问题讨论】: