j(跳转)指令在内存中可以跳多远? (MIPS)

时间:2012-03-07 21:57:30

标签: assembly mips mips32

考虑MIPS中的j(跳转)指令。它能在多远的内存中跳跃?它会是32位吗?我可以请一个解释。

1 个答案:

答案 0 :(得分:4)

this page开始,您会看到跳转指令具有以下效果:

PC = nPC; nPC = (PC & 0xf0000000) | (target << 2);

target是一个26位数字。这意味着j指令可以跳转到可以从上面的操作创建的任何绝对地址。因此,target的最大值为2 26 -1(0x03FFFFFF),最高可达地址为(PC & 0xF0000000) | 0x0FFFFFFC