(2)标志位操作指令
标志位操作指令是一组对标志位置位、复位、保存和恢复等操作的指令。
1、进位CF操作指令
Ø 清进位指令CLC(Clear Carry Flag):CF←0
Ø 置进位指令STC(Set Carry Flag):CF←1
Ø 进位取反指令CMC(Complement Carry Flag):CF←not CF
2、方向位DF操作指令
Ø 清方向位指令CLD(Clear Direction Flag):DF←0
Ø 置方向位指令STD(Set Direction Flag):DF←1
3、中断允许位IF操作指令
Ø 清中断允许位指令CLI(Clear Interrupt Flag):IF←0
其功能是不允许可屏蔽的外部中断来中断其后程序段的执行。
Ø 置中断允许位指令STI(Set Interrupt Flag):IF←1
其功能是恢复可屏蔽的外部中断的中断响应功能,通常是与CLI成对使用的。
4、取标志位操作指令
Ø LAHF(Load AH from Flags):AH←Flags的低8位
Ø SAHF(Store AH in Flags):Flags的低8位←AH
5、标志位堆栈操作指令
Ø PUSHF/PUSHFD(Push Flags onto Stack):把16位/32位标志寄存器进栈;
POPF/POPFD(Pop Flags off Stack):把16位/32位标志寄存器出栈;