Команда BRNE - Перейти если не равно
Описание:
Условный относительный переход. Тестируется бит флага нулевого значения (Z) регистра статуса и, если бит очищен, выполняется переход относительно состояния счетчика программ. Если команда выполняется непосредственно после выполнения любой из команд CP, CPI, SUB или SUBI переход произойдет если, и только если, двоичное число со знаком или без знака, представленное в Rd, не равно двоичному числу со знаком или без знака, представленному в Rr Данная команда выполняет переход в любом направлении относительно состояния счетчика программ (PC-64 < назначение < PC+63). Параметр k является смещением относительно состояния счетчика программ и представлен в форме дополнения до двух. (Команда эквивалентна BRBC 1,k).
Операция:
(i) |
If Rd № Rr (Z = 0) then then PC <- PC + k +1, else PC <- PC +1 |
|
|
Синтаксис |
Операнды: |
Счетчик программ: |
(i) |
BRNE k |
-64 < k <+63 |
PC <- PC + k + 1 PC <- PC + 1, если условия не соблюдены |
16-разрядный код операции:
Булевы выражения регистра статуса (SREG)
Пример:
eor r27, r27 ; Очистить r27
loop: inc r27 ; Увеличить на 1 r27
.....
cpi r27, 5 ; Сравнить r27 с 5
brne loop ; Перейти если r27 <> 5
nop ; Выйти из петли (пустая операция)
Слов: 1 (2 байта)
Циклов:1 если условия не соблюдены, 2 при соблюдении правильных условий
|