|
|
8(495)909-90-01
8(964)644-46-00
pro@sio.su
|
|
Раздел: Документация0 ... 72 73 74 75 76 77 78 ... 195 SBCI Rd, К Вычитание константы из РОН с заемом Операция | Rd = Rd | -К-С | | | | | | | Код операции | 0100 KKKK dddd KKKK | | | | 1 слово (2 байта) | Операнды | 16<d<31,0<K<255 | Описание | Вычитает из регистра Rd значение константы К. Если флаг переноса С установлен, полученная разность уменьшается на 1. Результат помещается в регистр Rd. Если результат вычитания не равен нулю, флаг нуля Z сбрасывается в 0, в противном случае он остается без изменений | Регистр SREG | I | т | н | S | V | N | Z | С | - | - | <=> | <=> | <=> | | <=> | <=> | Число тактов | 1 | Пример | ; Вычитание двухбайтного числа $4F23 из регистровой ; пары R17:R16 subi rl6,$23 ; Вычесть младший байт sbci rl7,$4F ; Вычесть старший байт с учетом переноса |
SBI А, Ь Установить бит РВВ Операция | 1/0(А).Ь | = 1 | | | | | | | Код операции | 1001 1010 AAAAAbbb | | | | 1 слово (2 байта) | Операнды | 0<A<31,0<b<7 | Описание | Устанавливает бит b регистра ввода/вывода, расположенного по адресу А пространства ввода/вывода. Эта команда применима только к младшим 32 регистрам (адреса 0...31) | Регистр SREG | I | Т | н | S | V | N | Z | С | - | - | - | - | - | - | - | - | Число тактов | 2 | Пример | out $1Е,г0 sbi $1С,0 in rl,$lD | ; Задать адрес ячейки EEPROM ; Установить запрос на чтение ; Считать данные из EEPROM | |
SBICA, b Пропустить команду, если бит РВВ сброшен Операция | Если 1/0(А).Ь = 0, то PC = PC + 2 (3), иначе PC = | = РС+1 | | | Код операции | 1001 1001 AAAAAbbb | | | | 1 слово (2 байта) | Операнды | 0<A<31,0<b<7 | Описание | Проверяет состояние бита b регистра ввода/вывода А. Если бит сброшен, команда, следующая за SBIC А, Ь, пропускается. Эта команда применима только к младшим 32 регистрам (адреса 0...31) | Регистр SREG | I | Т | Н | S | V | N | Z | С | - | - | - | - | - | - | - | - | Число тактов | 1, если I/0(A).b = 1 (нет пропуска команды) 2,если 1/0(А).Ь = 0 (размер пропускаемой команды — 1 слово) 3,если 1/0(А).Ь = 0 (размер пропускаемой команды — 2 слова) | Пример | e2wait: sbic rjmp | $1С,1 e2wait | ; Пропустить команду, если флаг EEWE сброшен ; Запись в EEPROM еще не закончилась |
SBISA,b Пропустить команду, если бит РВВ установлен Операция | Если I/0(A).b = 1, то PC = PC + 2 (3), иначе PC = | РС+ 1 | | | Код операции | 1001 1011 AAAAAbbb | | | | 1 слово (2 байта) | Операнды | 0<A<31,0<b<7 | Описание | Проверяет состояние бита b регистра ввода/вывода А. Если бит установлен, команда, следующая за SBIS А, Ь, пропускается. Эта команда применима только к младшим 32 регистрам (адреса 0...31) | Регистр SREG | I | Т | H | S | V | N | Z | С | - | - | - | - | - | - | - | - | Число тактов | 1, если 1/0(А).Ь = 0 (нет пропуска команды) 2,если I/0(A).b = 1 (размер пропускаемой команды — 1 слово) 3,если I/0(A).b = 1 (размер пропускаемой команды — 2 слова) | Пример | waitset sbis rjmp | $1D,0 waitset | ; Пропустить след. команду, если 0-й бит ; порта D установлен ; Ждать, пока бит не будет установлен |
SBIW Rd+1, Rd, К Вычитание константы из регистровой пары Операция | Rd+l:Rd | = Rd+l:Rd-K | | | | | | Код операции | 100ЮП | KKdd KKKK | | | | 1 слово (2 байта) | Операнды | de{24, 26,28,30},0<К<63 | Описание | Вычитает из регистровой пары Rd+1 :Rd значение константы К. Результат помещается обратно в регистровую пару. Команда применима только к 4 старшим регистровым парам из регистров общего назначения | Регистр SREG | I | Т | Н | S | V | N | Z | С | - | - | - | | | | | | Число тактов | 2 | Пример | ; Вычитание двухбайтного числа $4F23 из регистровой ; пары R17:R16 sbiw r25:r24,l ; Вычесть единицу из г25:г24 sbiw YH:YL,63 ; Вычесть 63 из индексного регистра Y |
SBR Rd, К Установка битов РОН Операция | Rd = Rd v К | Код операции | 0110 KKKK dddd KKKK | | | | 1 слово (2 байта) | Операнды | 16<d<31,0<K<255 | Описание | Устанавливает отдельные биты регистра Rd путем выполнения операции «Логическое ИЛИ» между содержимым регистра Rd и маской, задаваемой константой К. Результат помещается в регистр Rd | Регистр SREG | I | Т | Н | S | V | N | Z | С | - | - | - | <=> | 0 | | | - | Число тактов | 1 | Пример | sbr sbr | rl6,3 ; Установить биты 0 и 1 регистра г1б rl8,$F0 ; Установить 4 старших бита регистра г18 | 0 ... 72 73 74 75 76 77 78 ... 195
|
|