x64 弹出指令(操作码 + rd)
Posted
技术标签:
【中文标题】x64 弹出指令(操作码 + rd)【英文标题】:x64 pop instructions (opcode + rd) 【发布时间】:2015-04-15 21:59:15 【问题描述】:以下是使用 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 吗?我以前从未遇到过这些注册快捷指令。
【问题讨论】:
【参考方案1】:将寄存器操作数编码为操作码一部分的指令使用 REX.B 字段来访问寄存器 r8 等。
64 位推送和弹出不需要 REX.W,它们默认为 64 位,无法将它们设为 32 位。它们可以通过使用 66h 前缀制成 16 位。
【讨论】:
没有你哈罗德我该怎么办!谢谢!!以上是关于x64 弹出指令(操作码 + rd)的主要内容,如果未能解决你的问题,请参考以下文章