POPF
(POP Flags register from the stack)
Извлечение регистра флагов из стека
Схема команды: | popf |
Назначение: извлечение из стека слова и восстановление его в регистр флагов flags.
Алгоритм работы:
извлечь из вершины стека слово и поместить его в регистр flags;
увеличить значение указателя стека esp на 2.
Состояние флагов после выполнения команды:
14 | 1312 | 11 | 10 | 09 | 08 | 07 | 06 | 04 | 02 | 00 |
NT | IOPL | OF | DF | IF | TF | SF | ZF | AF | PF | CF |
r | r | r | r | r | r | r | r | r | r | r |
Применение:
Команда popf по принципу работы является обратной команде pushf и используется для восстановления из стека содержимого регистра флагов eflags. Возможным вариантом использования этой команды являются программы обработки прерываний или другие случаи, в которых необходимо сохранять некоторый локальный контекст процесса вычисления. Из-за того, что регистр eflags/flags непосредственно недоступен, команда popf является одной из немногих возможностей влияния на его содержимое.
;установить значение регистра flags в 03h mov ax,3h push ax popf |
См. также: уроки 7, 10, 14, 15, 16, 17 и команды , , , , , , , ,