A.5.245 POPAx: Pop All General-Purpose Registers
POPA ; 61 [186]
POPAW ; o16 61 [186]
POPAD ; o32 61 [386]
- POPAW pops a word from the stack into each of, successively, DI,
SI, BP, nothing (it discards a word from the stack which was a
placeholder for SP), BX, DX, CX and AX. It is intended to reverse
the operation of PUSHAW (see section A.5.264), but it ignores the
value for SP that was pushed on the stack by PUSHAW.
- POPAD pops twice as much data, and places the results in EDI, ESI,
EBP, nothing (placeholder for ESP), EBX, EDX, ECX and EAX. It
reverses the operation of PUSHAD.
POPA is an alias mnemonic for either POPAW or POPAD, depending on the
current BITS setting.
Note that the registers are popped in reverse order of their numeric
values in opcodes (see section A.2.1).