Assembleur 80x86 | POPA |
---|---|
INTEL 80186+ | Pop All General Registers |
Syntaxe
POPA |
Description
Cette instruction permet de désempiler de la pile respectivement les registres DI, SI, BP, SP, BX, DX, CX et AX.
Algorithme
DI ← SS:SP SP ← SP + 2 SI ← SS:SP SP ← SP + 2 BP ← SS:SP SP ← SP + 2 * Ne depile jamais le SP SP ← SP + 2 BX ← SS:SP SP ← SP + 2 DX ← SS:SP SP ← SP + 2 CX ← SS:SP SP ← SP + 2 AX ← SS:SP SP ← SP + 2 |
Mnémonique
Instruction | Opcode | Description |
---|---|---|
POPA | 61h | Désempile les registres DI, SI, BP, SP, BX, DX, CX et AX. Invalide en mode 64 bits. |
Exceptions
Message | Mode réel | Virtuel 8086 | Mode protégé | Description |
---|---|---|---|---|
#UD(Opcode invalide) | X | Cette instruction est exécuté en mode 64 bits. | ||
#SS(Pile) | X | X | X | Une adresse mémoire dépasse la limite du segment de pile ou n'est pas canonique |
#PF(Faute de page) | X | X | Une faute de page résultat de l'exécution de l'instruction | |
#AC(Vérifie l'alignement) | X | X | Un désalignement de la référence mémoire est effectué quand une vérification d'alignement est activé |
Voir également
Langage de programmation - Assembleur 80x86 - Instruction PUSHA
Langage de programmation - Assembleur 80x86 - Instruction PUSHAD
Langage de programmation - Structure de données - Structures récursives linéaires - Pile
Références
Le livre d'Or PC, Martin Althaus, 1992, ISBN: 2-7361-0934-1, page 826
Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2B: Instruction Set Reference, N-Z, Edition Intel, Mars 2010, Publication No. 253667-034US, page 229 à 231.
AMD64 Architecture Programmer's Manual Volume 3: General-Purpose and System Instructions, Edition Advanced Micro Devices, Revision 3.14, September 2007, Publication No. 24594, page 187.