Cамоучитель по Assembler




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



Команда daa корректирует результат сложения в регистре AL двух упакованных двоично-десятичных (BCD) чисел (по одной цифре в каждом полубайте), чтобы получить пару правильных упакованных двоично-десятичных цифр. Команда используется вслед за операцией сложения упакованных двоично-десятичных чисел. Если результат сложения превышает 99, возникает перенос и устанавливается флаг CF. Команда воздействует на флаги SF, ZF, AF, PF и CF.

Пример


mov AL,87h ;Упакованное BCD 87

add AL,04h ;После сложения AL=8Bh

daa ;AL=91h, т.е. упакованное BCD 91

Пример


mov AL,87h ;Упакованное BCD 87
add AL,11h ;После сложения AL=97h
daa ;AL=97h, т.е. упакованное
;BCD 97 (в данном случае
;команда daa ничего не делает)









Начало  Назад  Вперед