AAA – коррекция сложения двоично-десятичных распакованных чисел
37 | AAA | десятичная коррекция сложения AX |
Описание.
Эта инструкция корректирует сумму двух распакованных двоично-десятичных чисел с целью получить двоично-десятичный распакованный результат. Она используется после инструкции ADD или ADC, выполняющей сложение, и корректирует результат, находящийся в регистре AL.
Если операция сложения сформировала признак вспомогательного переноса (флажок AF в регистре FLAGS был установлен) или если младший полубайт регистра AL содержит значение A16–F16, устанавливаются флажки AF и CF и производится инкремент регистра AH. Если же флажок AF был сброшен, а младший полубайт регистра AL содержал правильный десятичный код (значение 0–9), флажки AF и CF сбрасываются, а инкремент регистра AH не выполняется. В любом случае старший полубайт регистра AL обнуляется.
Флажки AF и CF устанавливаются в соответствии с результатом операции (см. выше).
Значение флажков OF, SF, ZF и PF не определено.