关于“跳转”和“跳转和链接”之间的翻译的问题

时间:2019-10-10 16:16:09

标签: riscv

在risc-v规范中,它说jjal的伪代码。我对它的工作方式感到困惑,因为j(25位立即数)和jal(20位立即数)以及jalr的立即数范围都不同12位立即数。

任何对翻译处理方式的澄清将不胜感激!

1 个答案:

答案 0 :(得分:4)

不,正如官方文档所说,jjal的立即值大小没有什么不同

  

普通无条件跳转(汇编程序伪指令J)被编码为rd = x0的JAL。

以下说明:

j offset

将扩展到

jal x0, offset

也许您认为偏移量包含了对rd寄存器(x0)进行编码的5位,但没有。