寄存器 #30 ($fp) 与 MIPS 中的 jal 函数有什么关系吗?

Does register #30 ($fp) have anything to do with the jal function in MIPS?

"jal Rout 是 MIPS 处理器执行的指令,位于地址 0x00400100。标号 Rout 指向位于地址 Rout 的子程序地址 0x00555500。执行 jal Rout 指令后,寄存器 #30($fp,帧指针)的值是多少?

据我了解,它不会被更改,因为 $fp 未被 jal 使用,而是使用寄存器 #31($ra、return 地址)。我错了吗?这个问题还有更多内容吗?谢谢。

在搜索、询问和阅读各种参考资料后,结论是,确实,jal 影响 $ra 寄存器,而不是 $fp,因此各种地址和其余这个问题没用;答案是“jal 不影响寄存器号 30”。