Статус флаги это 1 байтный (8 бит) системный регистр, который сделан для того что бы во время выполнения программы можно было понять, наступило то или иное событие/статус и что сделать если это установлено. В основном статусы используются для ветвления программы. Рассмотрим список флагов: Приведу несколько примеров использования флагов в программе: LDA tmp
BEQ itsTmpZero
BNE itsTmpNoZero
itsTmpZero:
JSR tmpZero
itsTmpNoZero:
JSR tmpNoZero В этом примере если переменная равна 0 то программа запустит выполнения подпрограммы tmpZero, так как будет установлен флаг Z(Zero) и сработает инструкция BEQ (Branch if Eque) - перейти если результат операции равен нулю. Кроме флага Z, интересен еще флаг Carry - флаг переноса, дело в том что он устанавливается при операции сравнения CMP (compare) - при этом если значение больше или равно то флаг будет установлен. Пример кода: LDA tmp
CMP #$02
BCS greatOrEq ; срабатывает если значение tmp больше либо равно 2
BCC less ; если меньше В качес