http://ref.x86asm.net/coder64.html#xF0 上的页面提供了各种十六进制操作码。
在我的Visual studio中,我有
FF E0 jmp rax
我刚刚发现粘贴'jmp rax‘并在 https://defuse.ca/online-x86-assembler.htm#disassembly 中进行汇编会给出相应的十六进制操作码(本例中为FF E0 )。
但是,是否有任何手册或文档说明我们如何找出十六进制的跳转指令等价物。我想找出jmp rbx的等价物)谢谢
发布于 2020-08-10 16:30:51
是的,英特尔SDM第2卷包含有关编码指令的完整信息。
Felix Cloutier’s site 以web友好的格式包含相同的信息。
该站点的 This page 包含了jmp指令。它显示 jmp rm32 被编码为 ff /4 。/4表示rmmod字节的三位(位5:3),它们用作指令的扩展。其他位对源进行编码。位7:6为11,表示寄存器。位2:0标识哪个寄存器。在 ff e0 中,位2:0是000,表示rax。要使用rbx,位2:0将为011,给出 ff e3 。
jmp rm32
ff /4
ff e0
ff e3
https://stackoverflow.com/questions/63336493