📜  8086微处理器的标志寄存器

📅  最后修改于: 2021-06-28 17:09:10             🧑  作者: Mango

先决条件– 8085微处理器中的标志寄存器
标志寄存器是专用寄存器。根据进行任何算术和逻辑运算后的结果值,标志位将被置1(1)或复位(0)。


图–标志寄存器的格式
8086中共有9个标志,标志寄存器分为两种类型:

(a)状态标志– 8086微处理器中有6个标志寄存器,根据8位或16位操作后的情况,这些寄存器将变为set(1)或reset(0)。这些标志是条件/状态标志。这些标志中的5个与8085微处理器的情况相同,其工作也与8085微处理器的情况相同。第六位是溢出标志。

6个状态标志是:

  1. 标牌(S)
  2. 零标记(Z)
  3. 辅助龋标志(AC)
  4. 奇偶校验标志(P)
  5. 进位标志(CY)
    这头五个标志在这里定义
  6. 溢出标志(O)–如果有符号运算的结果太大而无法容纳可表示该标志的位数,则将设置此标志(1),否则将其复位(0)。进行任何操作后,如果D [6]产生任何进位并传递给D [7],或者如果D [6]不产生进位但D [7]产生,则溢出标志将被置1,如果D [6] D [7]和D [7]都产生进位或不产生任何进位,则溢出标志复位,即0。

    示例:在添加100 + 50字节时(结果不在-128…127范围内),因此将设置溢出标志。

    MOV AL, 50 (50 is 01010000 which is positive)
    MOV BL, 32 (32 is 00110010 which is positive)
    ADD AL, BL (82 is 10000010 which is negative)
    

    当我们加上2 + ve个数字并且得到一个-ve数字时,就会设置溢出标志。

(b)控制标志–控制标志启用或禁用微处理器的某些操作。 8086微处理器中有3个控制标志,它们是:

  1. 方向标志(D)–此标志专门用于字符串指令。
    如果设置了方向标记(1),则从较高的存储位置向较低的存储位置访问字符串数据。
    如果方向标记被重置(0),则从较低的存储位置向较高的存储位置访问字符串数据。
  2. 中断标志(I)–此标志用于中断。
    如果设置了中断标志(1),则微处理器将识别来自外设的中断请求。
    如果将中断标志复位(0),则微处理器将无法识别任何中断请求,并将其忽略。
  3. 陷阱标志(T)–此标志用于片上调试。设置陷阱标志可使微处理器进入单步模式进行调试。在单步执行中,微处理器执行一条指令并进入单步ISR。
    如果设置了陷阱标志(1),则CPU会在每条指令后自动生成内部中断,从而允许在执行一条指令时检查程序。
    如果陷阱标志被复位(0),则不执行任何函数。