C++ 的哪些功能使用了 JR 指令?

问题描述 投票:0回答:1

MIPS 跳转寄存器 (JR) 指令经常出现在 C++ 代码的二进制中。那么,C++ 中的哪些功能使用了 JR 指令以及为什么使用这些指令?

c++ mips
1个回答
1
投票

分支指令只能用于目标地址在“编译时”已知并且位于当前指令“小范围内”的情况。您不能(轻松)使用它来分支到未知的地址静态并且必须在运行时计算/加载,或者跳转到太远的目标 因此,这里有一些必须使用 JR

JALR

的示例(两者完全相同,只是

JALR
存储当前地址以便稍后返回):

跳转到任意地址

© www.soinside.com 2019 - 2024. All rights reserved.