请点开看,简介形式表格会结构混乱。

指令类型 助记符 对标志寄存器的影响 备注
ZF CF PF SF OF AF DF IF TF
 

 

通用 MOV  

 

 

不影响标志位

 

 

 

 

交换 XCHG
堆栈操作 PUSH
POP
地址传送 LEA
LDS
LES
累加器专用 IN
OUT
XALT
标志寄存器 LAHF
SAHF 标志寄存器低八位的内容由AH的值决定 CF,AF,ZF,SF,PF的值会被影响
PUSHF 不影响标志位
POPF 标志寄存器的内容由装入的具体值决定 可能影响所有标志位
 

 

 

 

 

算术运算类

 

加法

指令

ADD
ADC
INC INC指令不影响CF
AAA ?表示不确定或者未定义
DAA
减法

指令

SUB
SBB
DEC DEC指令不影响CF
AAS
DAS DAA指令不影响OF
乘法指令 MUL
IMUL
AAM
除法指令 DIV 此指令可能会产生中断,故影响IF,TF
IDIV 同上
AAD
符号位扩展 CBW 不影响标志位
CWD 不影响标志位
比较指令 CMP 由计算结果确定标志位的值 不会影响到DF,IF,TF
逻辑运算类 单操作数逻辑指令 求反 NOT 不影响标志位
移位 SAL 见备注 OF标志位只在移位次数是1时有效,AF未定义
SHL
SAR
SHR
循环移位 ROL 循环移位指令影响OF和CF,AF未定义
ROR
RCL
RCR
指令类型 助记符 对标志寄存器的影响 备注
ZF CF PF SF OF AF DF IF TF ?
双操作数 AND 置0 置0
OR 置0 置0
异或 XOR 置0 置0
检测 TSET 置0 置0
字符串操作 传送 MOVS 不影响标志位
比较 CMPS 由计算结果确定标志位的值 不会影响DF,IF,TF
搜索 SCAS 由计算结果确定标志位的值 不会影响DF,IF,TF
装入 LODS 不影响标志位
填充 STOS 不影响标志位
前缀 REP 不影响标志位
 

 

 

程序控制类

无条件 JMP  

 

 

不影响标志位

条件转移指令 单个标志位 JS/JNS SF=1/0,则转移到目的地址
JZ/ JNZ ZF=1/0,则转移到目的地址
JP/JNP PF=1/0,则转移到目的地址
JB/JNB CF=1/0,则转移到目的地址
JO/JNO OF=1/0,则转移到目的地址
若干标志位的逻辑组合 JA 两个无符号数比较,A>B
JBE 两个无符号数比较,A <=B
JG 两个带符号数比较,A>B
JGE 两个带符号数比较,A>=B
JL 两个带符号数比较,A<B
JLE 两个带符号数比较,A <=B
循环控制 LOOP 不影响标志位 

 

LOOPE
LOOPNE
JCXZ
中断控制 INT 不影响标志位
INTO
IRET 影响所有标志位 标志位到恢复中断以前的状态
 

CPU控制指令

 

标志位操作

CLC 此指令置CF=0
CMC 此指令CF取反
STC 此指令置CF=1
CLD 此指令置DF=0
STD 此指令置DF=1
CLI 此指令置IF=0
STI 此指令置IF=1
空操作 NOP 不影响标志位

 

暂停 HLT
等待 WAIT’
交权 ESC
总线锁定前缀 LOCK

CF(Carry Flag):进位标志。当指令执行的结果(8位或16位)在最高位上产生了一个进位或借位时,CF =1。

 

AF(Auxiliary Carry Flag):辅助进位标志。当一个8位数(或16位数)的低四位向高四位(即b3向b4)有进位或借位时,AF=1。常用于十进制算术运算指令。

 

OF(Overflow Flag): 溢出标志。在算术运算中,带符号数的运算结果超出了8位或16位符号数所能表示的范围时,OF=1。

 

ZF(Zero Flag): 零标志。当运算结果为全零时,ZF=1。

 

SF(Sign Flag): 符号标志。当运算结果为正数,即结果的最高位为0时,SF=1。

 

PF(Parity Flag):奇偶标志。当算术逻辑运算的结果中1的个数为偶数时,PF=1,为奇数时,PF=0。

 

DF(Direction Flag):方向标志。用于控制数据串操作指令的步进方向,当DF=1时,表示从高地址向低地址以递减的顺序对数据串中的数据进行处理。

 

IF(Interrupt-enable Flag):中断允许标志。当IF=1时,CPU可以响应外部可屏蔽中断请求。该标志可以用指令设置为1或0。

 

TF(Trap Flag):陷阱标志。当TF=1时,CPU进入单步工作方式,每执行完一条指令就自动产生一个内部中断,以便进行程序调试。当TF=0时,正常执行程序。

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*