Регистр статуса (SREG) |
SREG: |
Регистр статуса |
C: |
Флаг переноса |
Z: |
Флаг нулевого значения |
N: |
Флаг отрицательного значения |
V: |
Флаг-указатель переполнения дополнения до двух |
S: |
NЕV, Для проверок со знаком |
H: |
Флаг полупереноса |
T: |
Флаг пересылки, используемый командами BLD и BST |
I: |
Флаг разрешения/запрещения глобального прерывания |
Регистры и операнды |
Rd: |
Регистр назначения (и источник) в регистровом файле |
Rr: |
Регистр источник в регистровом файле |
R: |
Результат выполнения команды |
K: |
Литерал или байт данных (8 бит) |
k: |
Данные адреса константы для счетчика программ |
b: |
Бит в регистровом файле или I/O регистр (3 бита) |
s: |
Бит в регистре статуса (3 бита) |
X, Y, Z: |
Регистр косвенной адресации (X=R27:R26, Y=R29:R28, Z=R31:R30) |
P: |
Адрес I/O порта |
q: |
Смещение при прямой адресации (6 бит) |
I/O регистры |
RAMPX, RAMPY, RAMPZ: |
Регистры связанные с X, Y и Z регистрами, обеспечивающие косвенную
адресацию всей области СОЗУ микроконтроллера с объемом СОЗУ более 64
Кбайт |
Стек: |
STACK: |
Стек для адреса возврата и опущенных в стек регистров |
SP: |
Указатель стека |
Флаги: |
Ы |
Флаг, на который воздействует команда |
0: |
Очищенный командой Флаг |
1: |
Установленный командой флаг |
-: |
Флаг, на который не воздействует команда |
Обозначение |
Функция |
ADC |
Сложить с переносом |
ADD |
Сложить без переноса |
ADIW |
Сложить непосредственное значение со словом |
AND |
Выполнить логическое AND |
ANDI |
Выполнить логическое AND c непосредственным значением |
ASR |
Арифметически сдвинуть вправо |
BCLR |
Очистить флаг |
BLD |
Загрузить T флаг в бит регистра |
BRBC |
Перейти если бит в регистре статуса очищен |
BRBS |
Перейти если бит в регистре статуса установлен |
BRCC |
Перейти если флаг переноса очищен |
BRCS |
Перейти если флаг переноса установлен |
BREQ |
Перейти если равно |
BRGE |
Перейти если больше или равно (с учетом знака) |
BRHC |
Перейти если флаг полупереноса очищен |
BRHS |
Перейти если флаг полупереноса установлен |
BRID |
Перейти если глобальное прерывание запрещено |
BRIE |
Перейти если глобальное прерывание разрешено |
BRLO |
Перейти если меньше (без знака) |
BRLT |
Перейти если меньше чем (со знаком) |
BRMI |
Перейти если минус |
BRNE |
Перейти если не равно |
BRPL |
Перейти если плюс |
BRSH |
Перейти если равно или больше (без знака) |
BRTC |
Перейти если флаг T очищен |
BRTS |
Перейти если флаг T установлен |
BRVC |
Перейти если переполнение очищено |
BRVS |
Перейти если переполнение установлено |
BSET |
Установить флаг |
BST |
Переписать бит из регистра во флаг T |
CALL |
Выполнить длинный вызов подпрограммы |
CBI |
- Очистить бит в регистре I/O |
CBR |
Очистить биты в регистре |
CLC |
Очистить флаг переноса |
CLH |
Очистить флаг полупереноса |
CLI |
Очистить флаг глобального прерывания |
CLN |
Очистить флаг отрицательного значения |
CLR |
Очистить регистр |
CLS |
Очистить флаг знака |
CLT |
Очистить флаг T |
CLV |
Очистить флаг переполнения |
CLZ |
Очистить флаг нулевого значения |
COM |
Выполнить дополнение до единицы |
CP |
Сравнить |
CPC |
Сравнить с учетом переноса |
CPI |
Сравнить c константой |
CPSE |
Сравнить и пропустить если равно |
DEC |
Декрементировать |
EOR |
Выполнить исключающее OR |
ICALL |
Вызвать подпрограмму косвенно |
IJMP |
Перейти косвенно |
IN |
Загрузить данные из порта I/O в регистр |
INC |
Инкрементировать |
FMUL |
Дробное незнаковое умножение |
FMULS |
Дробное умножение со знаком |
FMULSU |
Дробное умножение знакового с незнаковым |
JMP |
Перейти |
LD Rd,X |
Загрузить косвенно |
LD Rd,X+ |
Загрузить косвенно инкрементировав впоследствии |
LD Rd,-X |
Загрузить косвенно декрементировав предварительно |
LDI |
Загрузить непосредственное значение |
LDS |
Загрузить непосредственно из СОЗУ |
LPM |
Загрузить байт памяти программ |
LSL |
Логически сдвинуть влево |
LSR |
Логически сдвинуть вправо |
MOV |
Копировать регистр |
MUL |
Перемножить |
NEG |
Выполнить дополнение до двух |
NOP |
Выполнить холостую команду |
OR |
Выполнить логическое OR |
ORI |
Выполнить логическое OR с непосредственным значением |
OUT |
Записать данные из регистра в порт I/O |
POP |
Загрузить регистр из стека |
PUSH |
Поместить регистр в стек |
RCALL |
Вызвать подпрограмму относительно |
RET |
Вернуться из подпрограммы |
RETI |
Вернуться из прерывания |
RJMP |
Перейти относительно |
ROL |
Сдвинуть влево через перенос |
ROR |
Сдвинуть вправо через перенос |
SBC |
Вычесть с переносом |
SBCI |
Вычесть непосредственное значение с переносом |
SBI |
Установить бит в регистр I/O |
SBIC |
Пропустить если бит в регистре I/O очищен |
SBIS |
Пропустить если бит в регистре I/O установлен |
SBIW |
Вычесть непосредственное значение из слова |
SBR |
Установить биты в регистре |
SBRC |
Пропустить если бит в регистре очищен |
SBRS |
Пропустить если бит в регистре установлен |
SEC |
Установить флаг переноса |
SEH |
Установить флаг полупереноса |
SEI |
Установить флаг глобального прерывания |
SEN |
Установить флаг отрицательного значения |
SER |
Установить все биты регистра |
SES |
Установить флаг знака |
SET |
Установить флаг T |
SEV |
Установить флаг переполнения |
SEZ |
Установить флаг нулевого значения |
SLEEP |
Установить режим SLEEP |
ST X,Rr |
Записать косвенно |
ST Y,Rr |
Записать косвенно из регистра в СОЗУ с использованием индекса Y |
ST Z,Rr |
Записать косвенно из регистра в СОЗУ с использованием индекса Z |
STS |
Загрузить непосредственно в СОЗУ |
SUB |
Вычесть без переноса |
SUBI |
Вычесть непосредственное значение |
SWAP |
Поменять нибблы местами |
TST |
Проверить на ноль или минус |
WDR |
Сбросить сторожевой таймер |