(PUSH Flags register onto stack)
Размещение регистра флагов в стеке
Назначение: размещение в вершине стека (ss:sp) содержимого регистра флагов flags.
Синтаксис
Алгоритм работы:
- уменьшить значение указателя стека sp на 2;
- поместить в вершину стека содержимое регистра flags.
Состояние флагов после выполнения команды:
выполнение команды не влияет на флаги
|
Применение:
Команда pushf может использоваться для получения содержимого регистра флагов. Как известно, прямой доступ к регистру флагов невозможен, поэтому данная команда является одной из немногих команд, позволяющих получить доступ к регистру флагов как к содержимому обычного регистра. Обратное действие, то есть восстановление — возможно измененного слова — в регистр флагов, осуществляется командой popf. Эта команда может использоваться в программах обработки прерываний и в других случаях, когда необходимо сохранить локальный контекст процесса вычисления.
;извлечь значение регистра flags и изменить;значение флага cf на обратное pushf pop ax xor ax,01h push ax popf |
См. также: уроки 7, 10, 14, 15, 16, 17 и команды pop, popa, popad, popfd, push, pusha, pushad, popf, pushfd