POPA
Usage: POPA Modifies flags: None
Pops the top 8 words off the stack into the 8 general purpose 16/32 bit registers. Registers are popped in the following order: (E)DI, (E)SI, (E)BP, (E)SP, (E)DX, (E)CX and (E)AX. The (E)SP value popped from the stack is actually discarded.
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 ), 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 POPAD, under 32 bit mode.
Note that the registers are popped in reverse order of their numeric values in opcodes (see rv).
Example:
pushad
call Goofy ; he uses all the registers
popad
POPA
Usage: POPA Modifies flags: None
Pops the top 8 words off the stack into the 8 general purpose 16/32 bit registers. Registers are popped in the following order: (E)DI, (E)SI, (E)BP, (E)SP, (E)DX, (E)CX and (E)AX. The (E)SP value popped from the stack is actually discarded.
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 ), 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 POPAD, under 32 bit mode.
Note that the registers are popped in reverse order of their numeric values in opcodes (see rv).
Example:
pushad
call Goofy ; he uses all the registers
popad
POPA
Usage: POPA Modifies flags: None
Pops the top 8 words off the stack into the 8 general purpose 16/32 bit registers. Registers are popped in the following order: (E)DI, (E)SI, (E)BP, (E)SP, (E)DX, (E)CX and (E)AX. The (E)SP value popped from the stack is actually discarded.
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 ), 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 POPAD, under 32 bit mode.
Note that the registers are popped in reverse order of their numeric values in opcodes (see rv).
Example:
pushad
call Goofy ; he uses all the registers
popad