标志寄存器
处理器中用一个或多个二进制位表示一种标志,其0和1的不同组合表示标志的不同状态。Intel8086支持的标志形成了一个16位的标志寄存器FLAGS。以后各带80×86处理器有所增加,形成了32位的EFLAGS标志寄存器。
状态标志
状态标志是最基本的标志,用来记录指令执行结果的辅助信息。加减运算和逻辑运算指令是知足要设置状态标志的指令,其他有些指令的执行也会相应地设置它们。状态标志有6个,处理器主要使用其中5个构成各种条件,分支玲玲判断这些条件实现程序分支。从低位到高位一次是:进位标志CF(Carry Flag)、奇偶标志PF(Parity Flag)、辅助进位标志AF(Auxiliary Carry Flag)、零标志ZF(Zero Flag)、符号标志SF(Sign Flag)、溢出标志(Overflow Flag)。
控制标志
IA-32处理器只有一个控制标志:方向标志DF(Direction Flag),该标志仅用于串操作指令,控制地址的变化方向
系统标志
系统标志用于控制操作系统或核心管理程序的操作方式,应用程序不应该修改它们。例如,中断允许标志IF(Interrupt-enable Flag)或简称中断标志,用于控制外部可屏蔽中断是否可以被处理器响应。再如,陷阱标志TF(Trap Flag)也常称为单步标志,用于控制处理器是否进入单步操作方式。
8086具有9个基本标志,后续处理器增加的标志主要用于处理器控制,由操作系统使用。


发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/218083.html原文链接:https://javaforall.net
