POPA
(POP All general registers from the stack)
Извлечение всех регистров общего назначения из стека
Схема команды: | popa |
Назначение: извлечение из стека регистров общего назначения di, si, bp, sp, bx, dx, cx, ax.
Алгоритм работы:
извлечь из стека последовательно значения и загрузить ими регистры общего назначения di, si, bp, sp, bx, dx, cx, ax. Содержимое di восстанавливается первым. Содержимое sp извлекается, но не восстанавливается;
увеличить значение указателя стека esp/sp на 16.
Состояние флагов после выполнения команды:
выполнение команды не влияет на флаги |
Применение:
Команда popa по принципу работы является обратной команде pusha и используется для восстановления содержимого всех регистров общего назначения значениями из стека. Эту команду можно использовать в процедурах и программах обработки прерываний для восстановления регистров общего назначения прерванной программы.
.386 my_proc proc near pusha ;тело процедуры, в которой изменяется ;содержимое регистров общего назначения ... popa ret endp |
См. также: уроки 7, 10, 14, 15, 16, 17 и команды , , , , , , , ,