Mips 查找指令集的范围

Mips 查找指令集的范围,mips,Mips,(即它能离当前PC多远) 我试图找到mips上指令集的范围 如何查找分支指令集、j/jal/和jr指令的范围?分支指令有一个16位有符号偏移字段。这是一个字偏移量,因此分支指令的目标地址范围是当前PC的+/-128KB J和JAL指令的偏移量为26位。这是当前256MB对齐地址区域内的字偏移量,因此J和JAL指令的目标地址范围为: 从(当前PC&0xfc000000)到(当前PC&0xfc000000)+256MB JR和JALR指令跳转到寄存器中包含的地址,因此它们可以跳转到4G字节地址空

(即它能离当前PC多远)

我试图找到mips上指令集的范围


如何查找分支指令集、j/jal/和jr指令的范围?

分支指令有一个16位有符号偏移字段。这是一个字偏移量,因此分支指令的目标地址范围是当前PC的+/-128KB

J
JAL
指令的偏移量为26位。这是当前256MB对齐地址区域内的字偏移量,因此
J
JAL
指令的目标地址范围为:

  • (当前PC&0xfc000000)
    (当前PC&0xfc000000)+256MB

JR
JALR
指令跳转到寄存器中包含的地址,因此它们可以跳转到4G字节地址空间中的任何地址。

很好的详细信息,我看到您以前的答案是类似的:)为什么当前的PC是&0xfc000000?256MB占用28位,因此它应该只使用0xf0000000。