objdump MIPS64指令编码-无意义的指令?

时间:2018-07-09 19:29:52

标签: instructions objdump mips64

我有一个MIPS64二进制文件(readelf告诉我它是版本2),使用相应的objdump,我可以看到__start的第一条指令是:

1200009a0:  03e00025    move    zero,ra

我不明白这一点。看the ISA [note] ,操作码(前六位)是000000₂,对应于功能为100101₂的“特殊”块(后六位) ):or指令(参考第413页)。无论如何,我们看到move无论如何都不是一条指令(参见§3.2)。

但是,我注意到文件中存在一些其他指令,并且这些指令已正确编码。

这是怎么回事?这是objdump中的错误吗?我该如何解决?


[note] 显然,MIPS64有六个版本。修订版1-5与大多数版本兼容,而发行版6则更改了许多内容。我找不到版本2的规范,所以我链接了版本5。move至少在版本1、5或6中没有出现,这是我可以找到的所有规范。

0 个答案:

没有答案