小编Ait*_*las的帖子

MIPS:将BEQ计算为十六进制机器码

我有一个任务,我必须将MIPS指令转换为其十六进制机器代码.我知道如何转换add,addi,lw等指令就好了,但是当它达到像beq这样的指令时,我会感到困惑.我如何将此beq转换为十六进制?

0x00400108   beq $t3, $t5, NEXT
0x0040010C   j END
Run Code Online (Sandbox Code Playgroud)

NEXT的地址是

0x0040011C
Run Code Online (Sandbox Code Playgroud)

我尝试过的:

beq操作码= 4

$ t3​​ =注册11

$ t5 =注册13

NEXT = 0x0040011C - 0x0040010C = 10(十六进制)= 16(十进制)

4 11 13 16 (decimal)
000100 01011 01101 0000 0000 0000 1000 (convert to binary)
0001 0001 0110 1101 0000 0000 0000 1000 (group into fours)
1 1 6 D 0 0 0 8 (hexadecimal)
Run Code Online (Sandbox Code Playgroud)

但这是错的......

mips

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

mips ×1