Извиняюсь за этот, казалось бы, незначительный вопрос, но я нигде не могу найти ответ - я только подхожу к реализации инструкции DAA в своем эмуляторе Z80, и я заметил в руководстве Zilog, что это для целей настройки аккумулятор для двоично-десятичной арифметики. В нем говорится, что инструкция предназначена для запуска сразу после инструкции сложения или вычитания.
Мои вопросы:
- что произойдет, если он запустится после другой инструкции?
- откуда он знает, какая инструкция ему предшествовала?
- Я понимаю, что есть флаг N, но это, конечно, не будет окончательно указывать на то, что предыдущая инструкция была инструкцией сложения или вычитания?
- В любом случае он просто модифицирует аккумулятор на основе условий, изложенных в таблице DAA, независимо от предыдущей инструкции?