以 mips 为单位的分支指令范围是多少?
what is the range of Branch instruction in mips?
所以我有这个问题说,beq instruction
是从0x80000000
地址执行的,你能到达的最低目标地址是多少。
答案是 0x7ffe0004
,但我不知道如何得到这个结果。有什么帮助吗?
偏移量是一个16位有符号字段,范围从-32768到+32767。这个偏移量是字,所以它乘以 4。PC 已经提前了,所以新地址是 PC + 4 + 4*offset
。 4 x 32768 是 0x20000。 0x80000000 + 4 - 0x20000 是 0x7ffe0004。
所以我有这个问题说,beq instruction
是从0x80000000
地址执行的,你能到达的最低目标地址是多少。
答案是 0x7ffe0004
,但我不知道如何得到这个结果。有什么帮助吗?
偏移量是一个16位有符号字段,范围从-32768到+32767。这个偏移量是字,所以它乘以 4。PC 已经提前了,所以新地址是 PC + 4 + 4*offset
。 4 x 32768 是 0x20000。 0x80000000 + 4 - 0x20000 是 0x7ffe0004。