Přidáno 1 204 bajtů,
21. 1. 2013, 17:06 ;Instrukce: XCHG - záměna bytů nebo slov
;Časování: 3-5
;Popis
: Instrukce XCHG zaměňuje bytový nebo slovní zdrojový operand s odpovídajícím cílovým operandem.
;Syntaxe
: XCHG destination, source
;Ovlivňuje příznaky
: žádné
;Nedefinované příznaky
: žádné
;Výjimky v privilegovaném módu
: Jestliže operand leží v segmentu nepřístupném zápisu je generovaná všeobecná výjimka porušení ochrany paměti. 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
XCHG AX, BX
XCHG DH, DATA_BTE
XCHG AL, DL
XCHG EAX, EBX ; jen pro 80386
;Poznámka
: Při užití instrukce [[XCHG]] s prefixem [[LOCK]] lze efektně implementovat semafóry pro obsluhu sdílených zdrojů v operačním systému.
[[Category:Assembler]]
[[Category:Instrukce mikroprocesoru 80386]]