我已经从我实现的汇编程序中生成了一个32位十六进制指令的转储。指令转储的子集如下所示:

指令的操作码长度为4、7、8、9和11,它们总是指令中的第一位。如果操作码有不同的长度,我很难理解如何解码指令?
例如:当我读一条指令时,我怎么知道我应该读多少位操作码?
以下是指令格式的图像:

谢谢
发布于 2019-04-08 08:59:12
我想通了。我读取了所有指令的最大操作码位数(11),忽略了那些没有意义的位(即不会产生可能的操作码的比特)。
https://stackoverflow.com/questions/55565210
复制相似问题