Section courante

A propos

Section administrative du site

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.

Dernière mise à jour : Vendredi, le 5 septembre 2014