You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Intel手册中r/m8、reg/m8等操作数寄存器含义的确认

关于x86指令操作数符号解读的验证

根据《Intel联合手册》Vol.2A 3-5(编号325462-080US,2023年6月)中操作码摘要表的指令列定义:

  • r/m8、r/m16、r/m32、r/m64分别对应8位、16位、32位、64位通用寄存器(GPR)或内存操作数
  • reg指宽度不影响指令语义的r16/r32/r64 GPR

你提出的以下两个解读均为正确:

  1. r/mN中的r对应N位GPR
  2. reg/m8、reg/m16中的reg对应r16/r32/r64 GPR

解读验证说明

  • 对于r/mN:手册明确该符号代表N位宽度的通用寄存器或内存操作数,因此其中的"r"必然严格对应N位GPR,和操作数位宽完全匹配,符合定义。
  • 对于reg/m8、reg/m16:这类符号中的"reg"遵循手册对reg的通用定义——即宽度不影响指令核心语义的r16/r32/r64 GPR。以你整理的指令为例(如PEXTRB/VPEXTRB提取8位数据到通用寄存器),通用寄存器的宽度(16/32/64位)仅影响高位数据的处理规则(零扩展等),不会改变"提取8位数据"的核心语义,完全符合手册中reg的定义。

包含reg/m8、reg/m16的指令列表

PEXTRB reg/m8, xmm2, imm8 ; 66 0F 3A 14 /r ib
PEXTRW reg/m16, xmm, imm8 ; 66 0F 3A 15 /r ib
VMOVW xmm1, reg/m16 ; EVEX.128.66.MAP5.WIG 6E  /r
VMOVW reg/m16, xmm1 ; EVEX.128.66.MAP5.WIG 7E  /r
VPEXTRB reg/m8, xmm2, imm8 ; VEX.128.66.0F3A.W0 14 /r ib
VPEXTRB reg/m8, xmm2, imm8 ; EVEX.128.66.0F3A.WIG 14 /r ib
VPEXTRW reg/m16, xmm2, imm8 ; VEX.128.66.0F3A.W0 15 /r ib
VPEXTRW reg/m16, xmm2, imm8 ; EVEX.128.66.0F3A.WIG 15 /r ib

内容的提问来源于stack exchange,提问作者YutakaAoki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 02:12:14