AsmTool
DAA
Десятичная коррекция после сложения


Назначение:
коррекция упакованного результата сложениядвух BCD-чисел в упакованном формате.

Алгоритм работы:

команда работает только с регистром al и анализирует наличие следующих ситуаций: Если имеет место одна из этих двух ситуаций, то регистр al корректируется следующим образом:


Состояние флагов после выполнения команды:
110706040200
OFSFZFAFPFCF
rrr11


Применение:

Эту команду следует применять после сложения двух упакованных BCD-чисел с целью корректировки получающегося двоичного результата сложения в правильное двузначное десятичное число. После команды daa следует анализировать состояние флага cf. Если он равен 1, то это говорит о том, что был перенос единицы в старший разряд и это нужно учесть для сложения старших десятичных цифр BCD-числа.