汇编语言LAHF和SAHF指令

 

LAHF(加载状态标志位到 AH)指令将 EFLAGS 寄存器的低字节复制到 AH。被复制的标志位包括:符号标志位、零标志位、辅助进位标志位、奇偶标志位和进位标志位。使用这条指令,可以方便地把标志位副本保管在变量中:

1 .data
2 saveflags BYTE ?
3 .code
4 lahf                      ;将标志位加载到 AH
5 mov saveflags, ah         ;用变量保存这些标志位

SAHF(保存 AH 内容到状态标志位)指令将 AH 内容复制到 EFLAGS(或 RFLAGS)寄存器低字节。例如,可以检索之前保存到变量中的标志位数值:

1 mov ah, saveflags  ;加载被保存标志位到 AH
2 sahf                        ;复制到 FLAGS 寄存器

L:应该就是Load 的意思

S:应该就是Save的意思

 

用于什么场景呢?大家知道吗?

posted @ 2019-11-19 16:51  青山下  阅读(2063)  评论(0编辑  收藏  举报