PUSHA - ulož do zásobníku všechny všeobecné registry

Z Delphi & Pascal (česká wiki)
Verze z 10. 1. 2013, 17:30, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky) (1 revízia: Assembler pismeno N-P)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaci Skočit na vyhledávání
Instrukce
PUSHA - ulož do zásobníku všechny všeobecné registry
Časování
17 (80286), 18 (80386)
Popis
Ukláda registry AX, CX, DX, BX a původní SP, BP, SI, DI (resp. EAX, ECX, EDX, EBX a původní ESP, EBP, ESI, EDI) do zásobníku, v uvedeném poradí. Ukazatel zásobníku je dekrementován o 16 (je ukládano 8 dvoubytových hodnot).


Syntaxe
PUSHA (žádné operandy)


Ovlivňuje příznaky
žádné


Nedefinované příznaky
žádné


Výjimky v privilegovaném módu
Je generována výjimka "chyba zásobníku" v případe, že počáteční či konečná adresa je vně rozsahu segmentu SS.


Výjimky v reálnem módu
Jestliže je slovní operand na offsetu 0FFFFH, je generováno přerušení INT 13.


Poznámka pro 80386
Šírka slova je 32 bitů.


Příklad
PUSHA