Otevřít hlavní menu

Změny

XLAT - převod podle převodní tabulky

Přidáno 1 492 bajtů, 21. 1. 2013, 18:13
Vytvorená stránka „;Instrukce : XLAT - převod podle převodní tabulky ;Časování : 5 ;Popis : Instrukce XLAT provádí translaci byte v AL pomoci převodní tabulky (lookup ...“
;Instrukce
: XLAT - převod podle převodní tabulky

;Časování
: 5

;Popis
: Instrukce [[XLAT]] provádí translaci byte v [[AL]] pomoci převodní tabulky (lookup table). Ukazatel na 256 bytovou převodní tabulku je zaveden do [[BX]]. Byte který má být převeden je umístěn v [[AL]] slouží jako index do převodní tabulky. Po provedení instrukce [[XLAT]] je byte v [[AL]] nahrazen bytem který odpovídá bytu vzdálenému [[AL]]-bytu od začátku převodní tabulky.


;Syntaxe
: XLAT translation_table


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


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


;Výjimky v privilegovaném módu
: Jestliže registry [[CS]], [[DS]] nebo [[ES]] obsahují neplatné efektivní adresy operandu je generovaná všeobecná výjimka porušení ochrany paměti. Jestliže [[SS]] obsahuje neplatnou adresu je generovaná výjimka "[[chyba zásobníku]]".


;Výjimky v reálnem módu
: Jestliže je slovní operand umístěn na offsetu 0FFFFH je generováno přerušení [[INT 13]].


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


;Příklad
LEA BX, MYTABLE ; umisteni tabulky
MOV AL, INDEX ; offset do tabulky
XLAT MYTABLE ; hodnota z tabulky vracena v AL


Poznámka
: Delka translacni tabulky muze byt i mensi nez 256 bytu. Operand translation_table je nepovinny, protoze registr BX musi byt pred provedenim instrukce XLAT stejne naplnen ukazatelem na tabulku.

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