目录:
🌵🌵🌵前言
✨你好啊,我是“ 怪& ”,是一名在校大学生哦。
🌍主页链接:怪&的个人博客主页
☀️博文主更方向为:课程学习知识、作业题解、期末备考。随着专业的深入会越来越广哦…一起期待。
❤️一个“不想让我曾没有做好的也成为你的遗憾”的博主。
💪很高兴与你相遇,一起加油!
🌳🌳🌳一、标志寄存器
CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数的结构都可能不同)
其具有以下三种作用:
- 用来存储相关指令的某些执行结果。
- 用为CPU执行相关指令提供行为依据。<.font>
- 用来控制CPU的相关工作方式
二、符号
此中特殊寄存器在8086CPU中,被称为标志寄存器(flag)
🌲🌲🌲二、图示
🍀🍀🍀三、运算结果标志及其含义
1、CF
flag的第零位是CF,即“进位标志位”。
- 用于记录运算结果的最高位向前产生的进位或借位,可用于检测无符号数运算时是否发生溢出。
- CF=1,有进位或借位
- CF=0,无进位或借位
2、PF
flag的第二位是PF,即“奇偶标志位”。
- 用于记录所有bit位/最低八位中1的个数是否为偶数。用于检错。
- PF=1,个数为偶
- PF=0,个数为奇
3、AF
flag的第四位是AF,即“辅助进位标志位”。
- 记录运算结果最低4位向前产生的进位或借位。
- 只有在执行十进制运算指令才关心此位。
- AF=1,有进位或借位
- AF=0,无进位或借位
4、ZF
flag的第六位是ZF,即“零标志位”。
- 用于记录相关指令执行结果。
- ZF=1,结果为0
- ZF=0,结果非0
5、SF
flag的第七位是SF,即“符号标志位”。
- 用于记录运算结果的符号。
- SF=1,结果为负
- SF=0,结果非负
6、OF
flag的第十一位是OF,即“溢出标志位”。
- 用于记录运算结果是否超出机器所能表示的范围。
- 可用于检测带符号数运算时是否发生溢出
- OF=1,结果超出
- OF=0,结果未超
🌍🌍🌍四、控制标志及其含义
控制标志控制处理器的操作,要通过专门的指令才能使控制标志发生变化。
1、IF
第九位:中断允许标志,IF的控制只对外部可屏蔽中断请求(INTR)起作用。
- IF=1,允许CPU响应INTR
- IF=0,禁止CPU响应INTR
2、DF
第十位:方向标志,专服务于字符串操作指令,指示串操作时操作数地址的增减方向。
- DF=1,其为自动减量
- DF=0,其为自动增量
3、TF
第八位:陷阱标志,用于程序调试。
- TF=1,CPU处于单布方式
- TF=0,CPU处于连续方式