【发布时间】:2016-12-16 01:23:25
【问题描述】:
我注册是因为我一直在谷歌上搜索这个问题的答案,但找不到答案。
我想知道没有链接的跳转指令在 MIPS 中是否是绝对必要的?
我可以想象,例如,在不需要时使用“AL”版本会导致一些功率损失,但是是否有任何情况(不是完全人为设计或可以相对简单地编码)只有 J/JR 可以工作?
谢谢!
【问题讨论】:
-
它们不是绝对必要的,但您必须小心保留
$ra。 -
如果您可以通过其他方式将地址输入
$ra来模拟 JAL,那么您就不需要它。但我不太了解 MIPS,不知道是否有 PIC 方法可以做到这一点。 -
C 有
goto语句,它看起来像 J 指令。break和continue声明也可能对此有发言权。 -
在 RISC-V 上,跳转和链接指令指定一个目标寄存器(而不是始终使用
$ra)。要跳转链接,只需使用零寄存器作为目的地。
标签: assembly mips cpu-architecture