1. CF(carry flag) PF(parity flag) AF(auxiliary flag) ZF(zero flag)
SF(sign flag) TF(timer overblow flag) IF(interrupt flag)
DF(direction flag) OF(overflow flag)
sub al,al ZF=1 PF=1 SF=0
mov al,1 ZF= 1 PF=1 SF=0
push ax ZF= 1 PF=1 SF=0
pop bx ZF=1 PF=1 SF=0
add al,bl ZF= 0 PF=0 SF=0
add al,10 ZF= 0 PF=1 SF=0
mul al ZF= 0 PF=1 SF=0
2.
CF OF SF ZF PF
sub al,al 0 0 0 1 1
mov al,10h 0 0 0 1 1
add al,90h 0 0 1 0 1
mov al,80h 0 0 1 0 1
CF OF SF ZF PF
add al,80h 1 1 0 1 1
mov al,0fch 1 1 0 1 1
add al,05h 1 0 0 0 0
mov al,7dh 1 0 0 0 0
add al,0bh 0 1 1 0 1
3. CF是进位标志符,当最高位数发生进位的时候置1,否则清零。
OF是溢出标志符,当数据有溢出的时候置1,无溢出清零。
4. 定义了九个标志,分别是CF,PF,AF,ZF,SF,IF,TF,DF,OF.
分为两类:
(1)运算结果标志,包括进位标志CF,零标志ZF,符号标志SF,溢出标志OF,奇偶标志PF,辅助进位标志AF。
(2)状态控制标志,包括方向标志DF,中断允许标志IF,追踪标志TF。
CF,最高位进位置1
PF,二进制数1的个数为偶置1,为奇数清零
AF,低字节向高字节,低字向高字,低双字向高双字进位,置1
ZF,结果为0,置1,非0,清零
SF,有符号数为负值置1,正数清零
IF,CPU可响应外部的可屏蔽中断请求,置1,不响应,清零cli,sti
TF,默认为0,debug调用了CPU的这个功能
DF,置1时,从高位到低位拷贝数据,清零时,从低位到高位拷贝数据,std,cld
OF,有数据溢出,置1,无溢出,清零
5. CF、ZF、SF、OF、PF、AF
mov al,89 nc nz pl nv po na
add al,al cy nz pl ov pe ac
add al,9dh nc nz ng nv pe na
cmp al,0bch cy nz ng nv pe na
sub al,al nc zr pl nv pe na
dec al nc nz ng nv pe ac
inc al nc zr pl nv pe ac
6. ZF、SF、PF
mov al,45h 0 0 0
and al,0fh 0 0 1
or al,0c3h 0 1 0
xor al,al 1 0 1
7. CF、ZF、SF、PF
mov al,84h 0 0 0 0
sar al,1 0 0 1 0
shr al,1 0 0 0 0
ror al,1 1 0 0 0
rcl al,1 1 0 0 0
shl al,1 0 0 1 0
rol al,1 1 0 1 0