Vol. 2A 2-1
第
2
章
指令格式
这一章详细描述所有Intel 64和IA-32处理器指令格式.保护模式指令,实地址模式以及虚拟
8086模式指令格式将在2.1节描述.IA-32e模式及其子模式指令格式将在2.2节描述.
2.1 实模式,保护模式,以及虚拟8086模式指令格式
Intel-64和IA-32架构指令编码是图2-1所示格式的子集.一条指令包括可选的指令前缀(顺序
任意),主操作码(最多3字节),由ModR/M和SIB字节(可选) 组成的地址格式描述符(如果需要
的话),偏移量(可选)以及立即数(可选).
前缀
主操作码
ModR/M
SIB
偏移量
立即数
最多四个
1, 2, 3
字节
1
字节
1
字节
1,2,
4
1,2,4
前缀,每个
1字节
(
可选
)
(
可选
) (
可选
)
字节
(
可选
)
字节
(
可选
)
7 6 5 3
2
0
7
6 5 3
2
0
Mod
Reg/
Opcod
e
R/M
Scal
e
Inde
x
Base
图
2-1. Intel 64
和
IA-32
架构指令格式
2.1.1 指令前缀
指令前缀分为四组,每一组包含一些允许的前缀码.对于任何指令,前缀可以从这四组(组
1,2,3,4)里的挑选,并且它们不区分次序.
• 组1
— 锁定和重复前缀:
评论1