Otevřít hlavní menu

Změny

XBTS - extrahuj bitový řetezec

Přidáno 1 427 bajtů, 24. 1. 2013, 18:39
bez shrnutí editace
;Instrukce
: XBTS - extrahuj bitový řetezec

;Časování
: 6-13

;Popis
: Instrukce [[XBTS]] extrahuje bitový řetezec a tento řetezec je uložen zarovnaný doprava a rozšírený (t.j. s horními bity nastavenými do nuly) ve specifikovaném registru. Instrukce [[XBTS]] má 4 operandy
:* bázovou adresu bitového řetezce
:* bitový offset začátku podřetezce
:* jenž má být extrahován
:* délku extrahovaného podřetezce
:* registr kam má být extrahovaný podřetezec umísten

:Bázová adresa může být umístena v registru nebo v paměťovém operandu. Offset je uložen v registru [[EAX]] (resp. [[AX]] u 16-bitových operandu). Délka pole je daná hodnotou registru [[CL]]. Poslední pole instrukce specifikuje všeobecný registr který obsahuje extrahovanou hodnotu.


;Syntaxe
: XBTS dest, base, offset, length
: XBTS reg, reg/mem, (E)AX, CL


;Ovlivňuje příznaky
: [[OF]], [[SF]], [[AF]], [[ZF]], [[PF]]


;Nedefinované příznaky
: [[CF]]


;Výjimky v privilegovaném módu
: Jestliže operand nemůže být použit v instrukci kvůli porušení limitu segmentu nebo porušení přístupových práv pak je generovaná výjimka [[INT 13]].


;Výjimky v reálnem módu
: Jestliže operand leží mimo limit segmentu (0FFFFH) je generovaná všeobecná výjimka porušení ochrany paměti.


;Příklad
XBTS AX, BX, AX, CL

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