微机原理-标志位及debug下的表示

在这里插入图片描述
debug中的标志位显示顺序 :OF DF IF SF ZF AF PF CF

OF: 溢出标志位。记录了有符号运算的结果是否发生了溢出,如果发生溢出OF=1,如果没有OF=0。
OF = 1, 显示OV
OF = 0, 显示NV
影响OF的指令:INC

DF: 方向标志位。在串处理指令中,每次操作后,如果DF=0,si、di递增,如果DF=1,si、di递减;注意此处DF的值是由程序员进行设定的 cld命令是将DF设置为0,std命令是将DF设置为1。
DF = 0, 显示UP
DF = 1, 显示DN
影响DF的指令:CLD, STD

IF: 中断允许标志位。它用来控制8086是否允许接收外部中断请求。若IF=1,8086能响应外部中断,反之则屏蔽外部中断。
IF = 0,显示DI
IF = 1, 显示EI
影响IF的指令: CLI, STI

SF: 符号标志位。相关指令执行后结果为负那么SF=1,结果非负数则SF=0。
SF = 1, 显示NG, 表示负数
SF = 0, 显示PL, 表示为正数
影响SF的指令举例:INC

ZF: 零标志位。相关指令执行后结果为0那么ZF=1,结果不为0则ZF=0。
ZF = 1, 显示ZR
ZF = 0, 显示NZ
影响ZF的指令举例:XOR

AF: 辅助进位标志位。运算过程中看最后四位,不论长度为多少。最后四位向前有进位或者借位,AF=1,否则AF=0。
AF = 0, 显示NA
AF = 1, 显示AC
影响AF的指令举例:INC

PF: 奇偶标志位。相关指令执行后结果所有bit中1的个数为偶数,那么PF=1,1的个数为奇数则PF=0。
PF = 1, 显示PE
PF = 0, 显示PO
影响PF的指令举例:INC

CF: 进位标志位。在无符号运算时,记录了运算结果的最高有效位向更高位的进位值或从更高位借位,产生进位或借位时CF=1,否则CF=0。
CF = 1, 显示 CY
CF = 0, 显示 NC
影响CF的指令举例:CLC, STC

参考:https://blog.csdn.net/weixin_41890599/article/details/99866410
https://blog.csdn.net/jia970426/article/details/84189089

你可能感兴趣的:(微机原理)