В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > AVR > Команды
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


Команда DEC - декрементировать

Описание:

Вычитание единицы - 1 - из содержимого регистра Rd и размещение результата в регистре назначения Rd. Флаг переноса регистра статуса данной командой не активируется, что позволяет использовать команду DEC использовать при реализации счетчика циклов для вычислений с повышенной точностью. При обработке чисел без знаков за командой могут выполняться переходы BREQ и BRNE. При обработке значений в форме дополнения до двух допустимы все учитывающие знак переходы.

Операция:

(i) Rd<-- Rd - 1
 
  Синтаксис Операнды: Счетчик программ:
(i) DEC Rd 0 < d < 31 PC <- PC + 1


16-разрядный код операции:


1001 010d dddd 1010

Булевы выражения регистра статуса (SREG)
I T H S V N Z C
- - - Ы Ы Ы Ы -


S: NЕV, Для проверок со знаком
V: R7*R6*R5*R4*R3*R2*R1*R0
Устанавливается если в результате получено переполнение дополнения до двух, в ином случае очищается. Переполнение дополнения до двух будет если и только если перед операцией содержимое Rd было $80.
N: R7
Устанавливается если в результате установлен MSB, в ином случае очищается
Z: R7*R6*R5*R4*R3*R2*R1*R0
Устанавливается если результат $00, в ином случае очищается
R: (Результат)соответствует Rd после выполнения команды

Пример:

          ldi r17, $10 ; Загрузить константу в r17
loop:     add r1, r2   ; Сложить r2 с r1
          dec r17      ; Уменьшить на 1 r17
          brne loop    ; Перейти если r17 <> 0
          nop          ; Продолжать (пустая операция)

Слов: 1 (2 байта)

Циклов: 1