8086 CPU有16位状态标志寄存器(flag register,FR ),但只使用了9位。
其中6位是反映算术运算或逻辑运算结果的状态的状态标志位,
其他3位是控制位,用于控制CPU的动作。
大家的意思:(1)状态标志位(6位)
进位标志(carry flag, CF)
状态标志位表示在此次加法或减法运算中,最高位(D7或D15 )发生了进位或借位。
CF值的含义cf=有1进位CF=0无进位(减法表示借位) 奇偶校验标志(parity flag, PF)
表示本次运算结果中包含的“1”的个数。
PF值的含义PF=1为偶数个“1”pf=1为奇数个“1” 辅助进位标志(auxiliary carry flag, AF)
表示加法或减法运算的结果,从D3位进位或借位到D4位时的情况。
AF值的含义af=有1进位且AF=0无进位(减法表示借位) 零标志(zero flag, ZF):
指示当前运算结果是否为零。
ZF值的含义ZF=1运算结果零ZF=0运算结果不为零 符号标志(sign flag, SF):
表示运算结果的正负。
SF值的含义SF=1运算结果为负SF=0运算结果为正 溢出标志(overflow flag, OF):
表示运算中发生溢出的情况。
OF值含义OF=1当前正在进行的补数运算有溢出OF=0无溢出(2)控制标志位(3位)
方向标志(direction flag, DF):
用于设定控制字符串操作命令步方向的控制标志。
DF值的含义DF=1连操作中的地址自动为1DF=0的地址自动为1 中断允许标志(interrupt enable flag, IF):
用于控制可屏蔽中断的标志位。
IF值意味着IF=1接通中断,CPU可以接收可屏蔽中断请求IF=0关闭中断,CPU可以接收可屏蔽中断请求 单步标志(trap flag, TF):
控制CPU以一步操作。
TF值的含义TF=18086 CPU单步动作,每次执行指令时内部中断TF=0CPU无法单步动作。 CPU的单步工作方式为程序调试提供了重要的方法