1 .標志送 ah 指令 lahf
2 . ah 送標志指令 sahf
3 .標志寄存器進棧指令 pushf
4 .標志寄存器出棧指令 popf
1 .標志送 ah 指令 lahf
語句格式: lahf
功能:將標志寄存器的低 8 位送入 ah 寄存器。
即( flags ) 7-0 → ah 。該指令的執(zhí)行對標志位無影響。
【例】標志寄存器傳送。
執(zhí)行前:( flags ) =0485h ,( ax ) =0ffffh
執(zhí)行指令: lahf
執(zhí)行后:( flags ) =0485h ,( ax ) =085ffh
2 . ah 送標志指令 sahf
語句格式: sahf
功能:將 ah 的內(nèi)容送入標志寄存器的低 8 位,高 8 位不變。即( ah ) → flags7-0 。
從該指令功能可看出, sahf 為 lahf 的逆過程。
3 .標志寄存器進棧指令 pushf
語句格式: pushf
功能:將標志寄存器的內(nèi)容壓入堆棧。即( flags )→↓( sp )。
4 .標志寄存器出棧指令 popf
功能: 將棧頂內(nèi)容彈出送入標志寄存器中。即↑( sp )→ flags 。
popf 指令與 pushf 指令互為逆過程。
【例】將標志寄存器的單步標志 tf 置位。
pushf ;( flsgs )→↓( sp )
pop ax ;( sp )→ ax
or ax , 0100h ;設置 d8=tf=1
push ax ;( ax )→↓( sp )
popf ;( sp )→↓ flags ,即( ax )→↓ flags