МИКРОКОНТРОЛЛЕР AVR - МИКРОКОНТРОЛЛЕР AVR

Основным признаком в регистре состояния является флаг нуля, который устанавливается в 1, когда результатом операции является ноль. Когда будут рассматриваться команды процессора, вы увидите, что многие команды могут изменить этот флаг, что делает его неудобным для передачи параметров. Вместо него лучше использовать флаг переноса С, который применяется для этих целей другими процессорами во многих приложениях. В ряде случаев более удобным может оказаться использование временного бита Т, с подошью которого можно задавать значение одного бита, в качестве условия ветвления программы.

Как и в большинстве микроконтроллеров и микропроцессоров, флаг переноса/заема С в AVR устанавливается после каждой операции сложения или вычитания. Он также используется для временного сохранения старшего или младшего бита операнда при операциях обыкновенных и циклических сдвигов, что типично для многих микроконтроллеров. При сложении флаг переноса устанавливается в 1, если результат больше $FF, а при вычитании - если результат меньше нуля.

Флаг переноса между тетрадами Н (полупереноса) устанавливается после выполнения сложения или вычитания, в процессе которого произошел перенос из младшей или заем в старшей тетраде (полубайте). Например, если вы прибавили 7 к содержимому регистра, в котором хранилось число 9:

Go to Top