Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
356 Микроконтроллеры AVR от азов программирования... Бит 7 — I: Общее разрешение прерываний. При установке этого флага в единичное состояние разрешается работа всей системы прерываний. Отдельные виды прерываний включаются и выключаются при помощи дополнительных регистров конфигурации (см. далее). Если флаг «Общее разрешение прерываний» имеет нулевое значение, все прерывания заблокированы, независимо от того, включены они или нет в дополнительных регистрах конфигурации. Флаг I аппаратно сбрасывается сразу после вызова соответствующей процедуры обработки прерывания и устанавливается при выполнении команды RETI, разрешая последующие прерывания. Флаг I может быть также установлен и сброшен программно при помощи команд SEI и CLI соответственно. Бит 6 — Т: Пользовательский бит для временного хранения инфор мации. Бит Т используется командами BLD (загрузка бита Т) и BST (чте ние бита Т) как ячейка для временного хранения информации. Любой бит любого регистра общего назначения может быть скопирован в Т, а затем содержимое Т может быть скопировано в любой другой бит того же либо любого другого регистра. Бит 5 — Н: Флаг половинного переноса. Этот флаг устанавливается в единицу, если имел место перенос из младшей половины байта (из 3-го разряда в 4-й) или заем из старшей половины байта при выполнении некоторых арифметических операций. Бит 4 — S: Флаг знака, S = N ® V. Этот флаг является результатом операции «Исключающее ИЛИ» (XOR) между флагами N (отрица тельный результат) и V (переполнение числа в дополнительном коде). Соответственно, этот флаг устанавливается в единицу, если результат выполнения арифметической операции меньше нуля. Бит 3 — V: Флаг переполнения дополнительного кода. Этот флаг используется при работе со знаковыми числами (числами, представлен ными в дополнительном коде). Флаг устанавливается в единицу, если в результате арифметической операции произойдет переполнение числа, представленного в дополнительном коде. Бит 2 — N: Флаг отрицательного значения. Этот флаг устанавливается в единицу, если в результате арифметической операции старший разряд результата равен единице. Если старший разряд результата вычислений равен нулю, то флаг N тоже равен нулю. Бит 1 — Z: Флаг нуля. Этот флаг устанавливается в единицу, если результат выполняемой операции равен нулю. Бит 0 — С: Флаг переноса. Этот флаг индицирует переполнение результата (перенос в старший разряд) при выполнении арифметической операции. Кроме того, флаг переноса используется в операциях сдвига.
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==