将二进制/十六进制转换为MIPS指令
对于以下条目,它们分别代表什么指令 二进制:0000000 111000101100001000001 十六进制:144FFF9D 我完全不知道我在这里做什么——在线搜索产生了一系列对我来说毫无意义的结果,但我收集的是我基本上应该将数字与它们相应的指令/寄存器匹配,但我如何确切地知道它们是什么?我在哪里可以找到一份全面的清单?我如何知道它是R I还是J格式函数?前6位(二进制更容易使用)是操作码,您可以从中确定如何解释其余的。此网站应该让您开始:将二进制/十六进制转换为MIPS指令,mips,Mips,对于以下条目,它们分别代表什么指令 二进制:0000000 111000101100001000001 十六进制:144FFF9D 我完全不知道我在这里做什么——在线搜索产生了一系列对我来说毫无意义的结果,但我收集的是我基本上应该将数字与它们相应的指令/寄存器匹配,但我如何确切地知道它们是什么?我在哪里可以找到一份全面的清单?我如何知道它是R I还是J格式函数?前6位(二进制更容易使用)是操作码,您可以从中确定如何解释其余的。此网站应该让您开始: 更新:调用操作码的前6位(太客气了)有误导性,但
更新:调用操作码的前6位(太客气了)有误导性,但它足以告诉您如何解释指令的其余部分;您可能需要查看其他地方(通常在指令末尾)以完全确定操作码。有3种类型的MIPS指令:
- R_类型:操作码必须是000000(前6位),最后6位我们可以知道什么是正确的指令
- I_型
- j_型
Opcode rs rt rd shamt funct
000000 01110 00101 10001 00000 100001
addu $s1 , $t6 , $a1
所以在第一个二进制示例中-因为它有0000 00,所以应该是R格式,对吗?最后6位数字(在我的例子中是1000 01)将是实际的功能/操作?这就是我链接到的页面所说的。