1

您能否告诉我以下两条 MIPS 指令的目标操作数代表什么:

j target  
beq $t0,$t1,target  

目标代表指令位移或字节位移的数量?

4

1 回答 1

2

在汇编中,目标只是源代码的标签。汇编时,j无条件跳转到指令 * 4编码的有效地址。这是因为每条指令占用 4 个字节,并且每条指令都必须是字对齐的,所以指令的编码不会存储目标地址的两个低位(始终为 00)。

分支指令执行相对跳转。在机器代码中,指令存储(在 A2-compliment 中)要移动的字数,从要执行的下一条指令的地址开始计数。

用你的行话来说,它们都是“指令置换”。

于 2013-04-09T21:57:58.007 回答