以下是使用intel x64手册第1159页的快捷操作码的弹出说明:
58+ rw POP r16 Pop top of stack into r16; increment stack
pointer.
58+ rd POP r64 Pop top of stack into r64; increment stack
pointer.
这些指令是使用Rex.R还是Rex.B来编码寄存器9-16还是只是添加到操作码中? 64位版本也使用Rex.W吗?我以前从未遇到过这些注册快捷方式指令。
答案 0 :(得分:1)
将寄存器操作数编码为操作码的一部分的指令使用REX.B字段来访问寄存器r8,依此类推。
64位推送和弹出不需要REX.W,它们默认是64位,没有办法使它们成为32位。它们可以使用66h前缀制作16位。