| DAA |
| Корекция на резултата след събиране на пакетирани BCD числа |
| Обща форма: |
DAA |
| |
| Форма |
КОП |
|
I8086 |
I80386 |
I80486 |
| DAA |
27 |
x86-64 |
4 |
4 |
2 |
|
| Действие |
IF (AF = 1) OR (AL AND 0F > 09)
AL ← AL+06
AF ← 1
ELSE
AF ← 0
ENDIF
IF (CF = 1) OR (AL > 9F)
AL ← AL+60
AC ← 1
ELSE
CF ← 0
ENDIF
|
| Флагове |
| PE |
VM |
NT |
IOPL |
OF |
DF |
IF |
TF |
SF |
ZF |
AF |
PF |
CF |
| |
|
|
|
? |
|
|
|
? |
? |
TF |
? |
TAF |
Аритметичният смисъл на CF е да подготви събирането на следващите десетични цифри с инструкция ADC; булевият смисъл е, че е извършена корекция на старшата цифра. Булевият смисъл на AF е, че е извършена корекция на младшата цифра.
|
| CPU |
| 8086 |
186 |
V20 |
286 |
386 |
486 |
P |
P-P |
P-II |
MMX |
SSE |
3D! |
E64 |
| • |
• |
• |
• |
• |
• |
• |
• |
• |
|
|
|
— |
|
| Изключения | няма |