理解 8086 指令编码

理解 8086 指令编码

我正在尝试理解 8086 指令编码。尽管我找到了一般说明和笨重的参考我还是不明白。

您能否向我解释一下如何从字节数据进行以下“翻译”?

提前致谢!

48 -> dec ax

EB0D -> jmp short 0xf

642120 -> and [fs:bx+si],sp

答案1

您的反汇编程序显示 JMP SHORT 偏移量从指令开头开始,而实际 JMP SHORT 是从指令后的字节开始计算的。也许您需要其他能够很好地解码的反汇编程序。

答案2

无条件跳转 (或此) 后跟数据,可以是实际数据,也可以是对齐数据。对于 8086,2 或 4 是良好的对齐,因此下一条指令可以从 21 或 20 开始,甚至更远。

相关内容