第2章 1.标志寄存器传送 标志寄存器传送指令用来传送标志寄存 器 FLAGS的内容,方便进行对各个标 志位的直接操作 >有2对4条指令 ■低8位传送:LAHF和SAHF 16位传送: PUSHF和POPF
第 2 章 1. 标志寄存器传送 ➢标志寄存器传送指令用来传送标志寄存 器FLAGS的内容,方便进行对各个标 志位的直接操作 ➢有2对4条指令 ◼低8位传送:LAHF和SAHF ◼ 16位传送:PUSHF和POPF
第2章 标志低字节进出AH指令 LAHE SAHF ;AH← FLAGS的低字节 ; FLAGS的低字节←AH >LAF指令将标志寄存器>SAF将寄存器内容 的低字节送寄存器AH 送 FLAGS的低字节 SF/ZF/AF/PF/CF状态标>用AH的第7/6/4/2/0位 志位分别送入AH的第相应设置SF/ZF/AF/ 7/6/4/2/0位,而AH的PF/CF标志 第5/3/1位任意
第 2 章 标志低字节进出AH指令 LAHF ;AH←FLAGS的低字节 ➢ LAHF指令将标志寄存器 的低字节送寄存器AH ➢ SF/ZF/AF/PF/CF状态标 志 位分 别送入AH 的 第 7/6/4/2/0位,而AH 的 第5/3/1位任意 SAHF ;FLAGS的低字节←AH ➢ SAHF将AH寄存器内容 送FLAGS的低字节 ➢ 用AH的第7/6/4/2/0位 相应设置 SF/ZF/AF/ PF/CF标志
第2章 标志寄存器进出堆栈指令 PUSHE POPF ;SP←SP-2 ; FLAGS←SS:[SP] ;SS:[SP]← FLAGS ;SP←SP+2 >PUSH指令将标志寄存>POP指令将栈顶字单元 器的内容压入堆栈, 内容送标志寄存器,同 同时栈顶指针SP减2 时栈顶指针SP加2 例题2.12
第 2 章 标志寄存器进出堆栈指令 PUSHF ;SP←SP-2 ;SS:[SP]←FLAGS ➢ PUSHF指令将标志寄存 器的内容压入堆栈, 同时栈顶指针SP减2 POPF ;FLAGS←SS:[SP] ;SP←SP+2 ➢ POPF指令将栈顶字单元 内容送标志寄存器,同 时栈顶指针SP加2 例题2.12
第2章 2.标志位操作 标志位操作指令直接对CF、DF、I标 志进行复位或置位,常用于特定的情况 >对标志位进行设置的指令 ■ CLC STC CMC ■ CLD STD ■CLsT
第 2 章 2. 标志位操作 ➢标志位操作指令直接对CF、DF、IF标 志进行复位或置位,常用于特定的情况 ➢对标志位进行设置的指令 ◼ CLC STC CMC ◼ CLD STD ◼ CLI STI
第2章 进位标志操作指令 >用于任意设置进位标志 CLC;复位进位标志:CF←0 STC;置位进位标志:CF← CMC;求反进位标志:CF←~CF
第 2 章 进位标志操作指令 ➢用于任意设置进位标志 CLC ;复位进位标志:CF←0 STC ;置位进位标志:CF←1 CMC ;求反进位标志:CF←~CF