PUSHF
(PUSH Flags register onto stack)
Размещение регистра флагов в стеке
Схема команды: | pushf |
Назначение: размещение в вершине стека (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 и команды , , , , , , , ,