我需要将这些Hex值转换为MIPS指令:
我先将它们转换为二进制,但不确定是否有必要。
Hex: 0x0000 0000 - Binary: 0000 0000 0000 0000 0000 0000 0000 0000
Hex: 0xAFBF 0000 - Binary: 1010 1111 1011 1111 0000 0000 0000 0000
Hex: 0x3424 001E - Binary: 0011 0100 0010 0100 0000 0000 0000 0000
请解释这个过程,以便我将来可以这样做。
答案 0 :(得分:3)
MIPS指令编码非常简单,并且在每个MIPS文档中都有解释,包括您在上面阅读的表格。只需获取操作码字段并确定它是否是R,I或J型指令以正确获取其余参数。如果操作码为0,那么它总是R型,在这种情况下查找功能字段
第一条指令0x00000000
:
6-bit opcodes = 000000: R type
6-bit funct: 000000 ==> sll
rs, rd, rt = 0
==> sll $0, $0, $0 or nop
第二条指令0xAFBF0000
:
opcode: 101011 = 0x2B => sw
最后一个0x3424001E
:
opcode: 001101 = 0x0D => ori
如果你使用像ODA这样的反汇编程序,你会看到这样的结果
.data:0x00000000 00000000 nop
.data:0x00000004 afbf0000 sw ra,0(sp)
.data:0x00000008 3424001e ori a0,at,0x1e
答案 1 :(得分:-1)
您在寻找MIPS反汇编吗?这是一个: