NEG - negace ve dvojkovém doplňkovém kódu
Verze z 10. 1. 2013, 15:57, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky)
- Instrukce
- NEG - negace ve dvojkovém doplňkovém kódu
- Časování
- 2-7 (80286), 2-6 (80386)
- Popis
- Instrukce NEG odečíta operand od 0, pričíta k takto vznikle hodnote 1 a vrací výsledek na místo původního operandu, vytvárejíc tak dvojkový doplnek. Příznak CF je nastaven na 1 (s výjimkou nulového operandu, který způsobí nastavení CF na 0).
- Syntaxe
- NEG destination
- Nedefinované příznaky
- žádné
- Výjimky v privilegovaném módu
- V případe, že výsledek je v segmentu chráněném proti zápisu, je generována všeobecná výjimka porušení ochrany paměti. Jestliže registry CS, DS nebo ES obsahují neplatné efektívní 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ů.
- Příklad
NEG AL NEG EBX (jen pro 80386)