【发布时间】:2017-09-28 18:54:01
【问题描述】:
我正在研究 MIPS 架构,但我不明白为什么寄存器 $v0 被调用者保存。
这个寄存器是函数存储返回值的地方。调用者何时以及为什么必须保存它?有人可以举个例子吗?
【问题讨论】:
-
如果这个寄存器存储了返回值,那么它肯定不能被被调用者保存/恢复,因此如果你想保存它,那么调用者必须是保存它的那个。
标签: assembly mips cpu-registers mips32
我正在研究 MIPS 架构,但我不明白为什么寄存器 $v0 被调用者保存。
这个寄存器是函数存储返回值的地方。调用者何时以及为什么必须保存它?有人可以举个例子吗?
【问题讨论】:
标签: assembly mips cpu-registers mips32
由于保存返回值的是寄存器,所以不能被调用者保存。这会造成一种情况,即被调用者都
所以它是调用者保存的。这并不意味着调用者必须保存它,它只是意味着如果调用者需要该值在调用中保持不变,那么它必须将它保存在其他地方。
【讨论】: