Změny

Skočit na navigaci Skočit na vyhledávání

POP - vyzvedni operand ze zásobníku

Přidáno 1 716 bajtů, 10. 1. 2013, 16:49
Vytvorená stránka „;Instrukce : POP - vyzvedni operand ze zásobníku ;Časování : 5 (80286), 5-7 (80386) ;Popis : Instrukce POP vyzvedáva obsah vrcholu zásobníku a ukláda jej do [...“
;Instrukce
: POP - vyzvedni operand ze zásobníku

;Časování
: 5 (80286), 5-7 (80386)

;Popis
: Instrukce POP vyzvedáva obsah vrcholu zásobníku a ukláda jej do [[DS]], [[ES]], [[SS]], paměti nebo registru. Instrukce [[POP]] vezme slovo adresované registrem [[SP]] (= ukazatel zásobníku) a uloží jej na místo specifikované cílovým operandem instrukce. Ukazatel zásobníku je pak zvýšen o 2.


;Syntaxe
: POP destination


;Ovlivňuje příznaky
: žádné


;Nedefinované příznaky
: žádné


;Výjimky v privilegovaném módu
: Je-li ze zásobníku zaváděna hodnota do segmentového registru, je generována všeobecná výjimka porušení ochrany paměti, výjimka "[[chyba zásobníku]]" nebo výjimka "[[deskriptor nenalezen]]". Výjimka "[[chyba zásobníku]]" je generována také v případe, že aktuální vrchol zásobníku není umístěn v rozsahu právě adresovaného segmentu [[SS]]. Stejnou výjimku bude generovat také umístení operandu instrukce v segmentu chráneném proti zápisu. Jestliže registry [[CS]], [[DS]] nebo [[ES]] obsahují neplatné efektivní adresy operandu, je generována všeobecná výjimka porušení ochrany paměti. Jestliže [[SS]] obsahuje neplatnou adresu, je generována výjimka "[[chyba zásobníku]]".


;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ů. Adresy operandu v paměti jsou vytvárěny z 32-bitových efektívních adres.


;Příklad
Registrový operand
POP CX
POP EAX (jen pro 80386)

Segmentový registr
POP SS

[[Category:Assembler]]
[[Category:Instrukce mikroprocesoru 80386]]

Navigační menu