Přidáno 976 bajtů,
9. 11. 2012, 17:01 ;Instrukce
: DAA - dekadické nastavení po sečtení
;Časování
: 3 (80286), 4 (80386)
;Popis
: Instrukce DAA by mela být používaná jen po sečtení dvou sbalených BCD operandů. DAA konvertuje výsledek v [[AL]] do sbaleného dekadického tvaru podle nasledujícich pravidel:
* Je-li nižší čtverice bytů v [[AL]] větší než 9 nebo je nastaven [[CF]], je [[AL]] inkrementován o 6 a nastaven [[AF]]; jinak je [[AF]] nulován.
* Je-li (následkem predchozí operace) výsledek větší než 9FH nebo je [[CF]] = 1, je [[AL]] inkrementován o 60H a [[CF]] je nastaven do jedné; jinak je [[CF]] nulován.
;Syntaxe
: DAA (žádné operandy)
;Ovlivňuje příznaky
: [[AF]], [[CF]], [[SF]], [[ZF]], [[PF]]
;Nedefinované příznaky
: [[OF]]
;Příklad:
MOV [[AL]],08
ADD [[AL]],03 ; Vysledek v [[AL]] je OBH
DAA ; Vysledek v [[AL]] je 11H
[[Category:Assembler]]
[[Category:Instrukce mikroprocesoru 80386]]