LSL - získej limit segmentu

Z Delphi & Pascal (česká wiki)
Verze z 4. 1. 2013, 18:02, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky) (1 revízia: Assembler pismeno L,M)
(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
LSL - získej limit segmentu
Časování
14-16 (80286), 20-26 (80386)
Popis
Pokud je selektor (druhý operand - registr nebo paměť) viditelný pri CPL (Current Privilege Level), je do cílového operandu instrukce přesunuto slovo z pole LIMIT v deskriptoru. Cílový operand musí byt registr. Jeho hodnota udáva velikost limitu pro tento segment. Jestliže byl přesun uskutečnen, je příznak ZF nastaven na 1, jinak je ZF nulován.


Syntaxe
LSL seg_limit,selector


Ovlivňuje příznaky
ZF


Nedefinované příznaky
žádné


Výjimky v privilegovaném módu
Jestliže registry CS, DS nebo ES obsahuji neplatné efektívni 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
Je generováno přerušení INT 6. Instrukce LSL není v reálnem módu rozpoznána.


Příklad
LSL AX, SELECTR