Мнемоника
| Операнды
| Описание
| Операция
| Флаги
| Циклы
|
MOV
| Rd,Rr
| Скопировать регистр
| Rd = Rr
| None
|
|
MOVW
| Rd,Rr
| Скопировать пару регистров
| Rd+1:Rd = Rr+1:Rr, r,d even
| None
|
|
LDI
| Rd,K8
| Загрузить константу
| Rd = K
| None
|
|
LDS
| Rd,k
| Прямая загрузка
| Rd = (k)
| None
| 2*
|
LD
| Rd,X
| Косвенная загрузка
| Rd = (X)
| None
| 2*
|
LD
| Rd,X+
| Косвенная загрузка с пост-инкрементом
| Rd = (X), X=X+1
| None
| 2*
|
LD
| Rd,-X
| Косвенная загрузка с пре-декрементом
| X=X-1, Rd = (X)
| None
| 2*
|
LD
| Rd,Y
| Косвенная загрузка
| Rd = (Y)
| None
| 2*
|
LD
| Rd,Y+
| Косвенная загрузка с пост-инкрементом
| Rd = (Y), Y=Y+1
| None
| 2*
|
LD
| Rd,-Y
| Косвенная загрузка с пре-декрементом
| Y=Y-1, Rd = (Y)
| None
| 2*
|
LDD
| Rd,Y+q
| Косвенная загрузка с замещением
| Rd = (Y+q)
| None
| 2*
|
LD
| Rd,Z
| Косвенная загрузка
| Rd = (Z)
| None
| 2*
|
LD
| Rd,Z+
| Косвенная загрузка с пост-инкрементом
| Rd = (Z), Z=Z+1
| None
| 2*
|
LD
| Rd,-Z
| Косвенная загрузка с пре-декрементом
| Z=Z-1, Rd = (Z)
| None
| 2*
|
LDD
| Rd,Z+q
| Косвенная загрузка с замещением
| Rd = (Z+q)
| None
| 2*
|
STS
| k,Rr
| Прямое сохранение
| (k) = Rr
| None
| 2*
|
ST
| X,Rr
| Косвенное сохранение
| (X) = Rr
| None
| 2*
|
ST
| X+,Rr
| Косвенное сохранение с пост-инкрементом
| (X) = Rr, X=X+1
| None
| 2*
|
ST
| -X,Rr
| Косвенное сохранение с пре-декрементом
| X=X-1, (X)=Rr
| None
| 2*
|
ST
| Y,Rr
| Косвенное сохранение
| (Y) = Rr
| None
| 2*
|
ST
| Y+,Rr
| Косвенное сохранение с пост-инкрементом
| (Y) = Rr, Y=Y+1
| None
|
|
ST
| -Y,Rr
| Косвенное сохранение с пре-декрементом
| Y=Y-1, (Y) = Rr
| None
|
|
ST
| Y+q,Rr
| Косвенное сохранение с замещением
| (Y+q) = Rr
| None
|
|
ST
| Z,Rr
| Косвенное сохранение
| (Z) = Rr
| None
|
|
ST
| Z+,Rr
| Косвенное сохранение с пост-инкрементом
| (Z) = Rr, Z=Z+1
| None
|
|
ST
| -Z,Rr
| Косвенное сохранение с пре-декрементом
| Z=Z-1, (Z) = Rr
| None
|
|
ST
| Z+q,Rr
| Косвенное сохранение с замещением
| (Z+q) = Rr
| None
|
|
LPM
| Нет
| Загрузка из программной памяти
| R0 = (Z)
| None
|
|
LPM
| Rd,Z
| Загрузка из программной памяти
| Rd = (Z)
| None
|
|
LPM
| Rd,Z+
| Загрузка из программной памяти с пост-инкрементом
| Rd = (Z), Z=Z+1
| None
|
|
ELPM
| Нет
| Расширенная загрузка из программной памяти
| R0 = (RAMPZ:Z)
| None
|
|
ELPM
| Rd,Z
| Расширенная загрузка из программной памяти
| Rd = (RAMPZ:Z)
| None
|
|
ELPM
| Rd,Z+
| Расширенная загрузка из программной памяти с пост-инкрементом
| Rd = (RAMPZ:Z), Z = Z+1
| None
|
|
SPM
| Нет
| Сохранение в программной памяти
| (Z) = R1:R0
| None
| -
|
ESPM
| Нет
| Расширенное сохранение в программной памяти
| (RAMPZ:Z) = R1:R0
| None
| -
|
IN
| Rd,P
| Чтение порта
| Rd = P
| None
|
|
OUT
| P,Rr
| Запись в порт
| P = Rr
| None
|
|
PUSH
| Rr
| Занесение регистра в стек
| STACK = Rr
| None
|
|
POP
| Rd
| Извлечение регистра из стека
| Rd = STACK
| None
|
|
* Для операций доступа к данным количество циклов указано при условии доступа к внутренней памяти данных, и не корректно при работе с внешним ОЗУ. Для инструкций LD, ST, LDD, STD, LDS, STS, PUSH и POP, необходимо добавить один цикл плюс по одному циклу для каждого ожидания.