在risc规范中,它说j是jal的伪代码。我不明白这是如何工作的,因为对于j (25位即时)和jal (20位即时),以及12位即时的jalr,即时值的范围是不同的。
任何关于如何处理此翻译的澄清将不胜感激!
发布于 2019-10-10 18:55:36
不,对于j和jal来说,即时值大小并没有什么不同,因为官方文档中说:
纯无条件跳转(汇编程序伪指令J)被编码为带有rd=x0的JAL。
以下指示:
j offset将扩展到
jal x0, offset也许您认为编码rd寄存器(x0)的5位被包含在偏移量中,但没有。
https://stackoverflow.com/questions/58327197
复制相似问题