
- •Часть 1
- •Содержание
- •Современный мир микроконтроллеров.
- •8‑Разрядные микроконтроллеры
- •16‑Разрядные микроконтроллеры
- •32‑Разрядные микроконтроллеры
- •Библиографический список
- •Микроконтроллер mc68hc11e9
- •Процессорный модуль
- •Встроенная память
- •Периферийные устройства
- •Система разработки
- •Монитор buffalo
- •С чего начать ?
- •Приложение 7 Программа Hello
- •Приложение 8 Команды монитора buffalo
- •Приложение 9 Подпрограммы монитора buffalo
- •Приложение 10
- •Приложение 11 Кросс-ассемблер
- •Приложение 12
- •Рекомендуемая литература
- •Часть 1
- •Новосибирск
Приложение 12
Краткий список команд процессора
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
ABA |
A Ü A + B |
Неявная |
- |
- |
ô |
- |
ô |
ô |
ô |
ô |
ABX |
IX Ü IX + 0:B |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
ABY |
IY Ü IY + 0:B |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
ADCA |
A Ü A + M + C |
Непосредственная Прямая Расширенная Индексная |
- |
- |
ô |
- |
ô |
ô |
ô |
ô |
ADCB |
B Ü B + M + C |
Непосредственная Прямая Расширенная Индексная |
- |
- |
ô |
- |
ô |
ô |
ô |
ô |
ADDA |
A Ü A + M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
ô |
- |
ô |
ô |
ô |
ô |
ADDB |
B Ü B + M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
ô |
- |
ô |
ô |
ô |
ô |
ADDD |
D Ü D + M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ANDA |
A Ü A & M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
ANDB |
B Ü B & M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
ASLA |
¬¾¾ C ¬ A7...A0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
ASLB |
¬¾¾ C ¬ B7...B0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ASL |
¬¾¾ C ¬ M7...M0 ¬ 0 |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ASLD |
¬¾¾ C ¬ D15...D0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ASRA |
¾¾® A7 ® A7...A0 ® C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ASRB |
¾¾® B7 ® B7...B0 ® C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ASR |
¾¾¾® M7 ® M7...M0 ® C |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
BCLR |
M Ü M & !mask |
Прямая Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
BITA |
A & M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
BITB |
B & M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
BSET |
M Ü M + mask |
Прямая Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
CBA |
A - B |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
CLC |
C Ü 0 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
0 |
CLI |
I Ü 0 |
Неявная |
- |
- |
- |
0 |
- |
- |
- |
- |
CLRA |
A Ü 0 |
Неявная |
- |
- |
- |
- |
0 |
1 |
0 |
0 |
CLRB |
B Ü 0 |
Неявная |
- |
- |
- |
- |
0 |
1 |
0 |
0 |
CLR |
M Ü 0 |
Расширенная Индексная |
- |
- |
- |
- |
0 |
1 |
0 |
0 |
CLV |
V Ü 0 |
Неявная |
- |
- |
- |
- |
- |
- |
0 |
- |
CMPA |
A - M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
CMPB |
B - M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
COMA |
A Ü !A |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
1 |
COMB |
B Ü !B |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
1 |
COM |
M Ü !M |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
1 |
CPD |
D - M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
CPX |
IX - M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
CPY |
IY - M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
DAA |
BCD коррекция A |
Неявная |
- |
- |
- |
- |
ô |
ô |
? |
ô |
DECA |
A Ü A - 1 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
DECB |
B Ü B - 1 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
DEC |
M Ü M - 1 |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
DES |
SP Ü SP - 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
DEX |
IX Ü IX - 1 |
Неявная |
- |
- |
- |
- |
- |
ô |
- |
- |
DEY |
IY Ü IY - 1 |
Неявная |
- |
- |
- |
- |
- |
ô |
- |
- |
EORA |
A Ü A Å M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
EORB |
B Ü B Å M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
FDIV |
D/IX; D Ü остаток, IX Ü частное |
Неявная |
- |
- |
- |
- |
- |
ô |
ô |
ô |
IDIV |
D/IX; D Ü остаток, IX Ü частное |
Неявная |
- |
- |
- |
- |
- |
ô |
0 |
ô |
INCA |
A Ü A + 1 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
INCB |
B Ü B + 1 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
INC |
M Ü M + 1 |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
- |
INS |
SP Ü SP + 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
INX |
IX Ü IX + 1 |
Неявная |
- |
- |
- |
- |
- |
ô |
- |
- |
INY |
IY Ü IY + 1 |
Неявная |
- |
- |
- |
- |
- |
ô |
- |
- |
JMP |
PC Ü адрес |
Расширенная Индексная |
- |
- |
- |
- |
- |
- |
- |
- |
JSR |
Переход на подпрограмму |
Прямая Расширенная Индексная |
- |
- |
- |
- |
- |
- |
- |
- |
LDAA |
A Ü M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
LDAB |
B Ü M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
LDD |
D Ü M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
LDS |
SP Ü M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
LDX |
IX Ü M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
LDY |
IY Ü M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
LSLA |
¬¾¾ C ¬ A7...A0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
LSLB |
¬¾¾ C ¬ B7...B0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
LSL |
¬¾¾ C ¬ M7...M0 ¬ 0 |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
LSLD |
¬¾¾ C ¬ D15...D0 ¬ 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
LSRA |
¾¾® 0 ® A7...A0 ® C |
Неявная |
- |
- |
- |
- |
0 |
ô |
ô |
ô |
LSRB |
¾¾® 0 ® B7...B0 ® C |
Неявная |
- |
- |
- |
- |
0 |
ô |
ô |
ô |
LSR |
¾¾® 0 ® M7...M0 ® C |
Расширенная Индексная |
- |
- |
- |
- |
0 |
ô |
ô |
ô |
LSRD |
¾¾® 0 ® D15...D0 ® C |
Неявная |
- |
- |
- |
- |
0 |
ô |
ô |
ô |
MUL |
D Ü A * B |
Неявная |
- |
- |
- |
- |
- |
- |
- |
ô |
NEGA |
A Ü -A |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
NEGB |
B Ü -B |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
NEG |
M Ü -M |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
NOP |
Нет операции |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
ORAA |
A Ü A + M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
ORAB |
B Ü B + M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
PSHA |
Сохранение A на стеке |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PSHB |
Сохранение B на стеке |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PSHX |
Сохранение IX на стеке |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PSHY |
Сохранение IY на стеке |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PULA |
Восстановление A со стека |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PULB |
Восстановление B со стека |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PULX |
Восстановление IX со стека |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
PULY |
Восстановление IY со стека |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
ROLA |
¬¾¾ C ¬ A7...A0 ¬ C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ROLB |
¬¾¾ C ¬ B7...B0 ¬ C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ROL |
¬¾¾ C ¬ M7...M0 ¬ C |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
RORA |
¾¾® C ® A7...A0 ® C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
RORB |
¾¾® C ® B7...B0 ® C |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
ROR |
¾¾® C ® M7...M0 ® C |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
RTI |
Возврат из прерывания |
Неявная |
ô |
ò |
ô |
ô |
ô |
ô |
ô |
ô |
RTS |
Возврат из подпрограммы |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
SBA |
A Ü A - B |
Неявная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
SBCA |
A Ü A - M - C |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
SBCB |
B Ü B - M - C |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
SEC |
C Ü 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
1 |
SEI |
I Ü 1 |
Неявная |
- |
- |
- |
1 |
- |
- |
- |
- |
SEV |
V Ü 1 |
Неявная |
- |
- |
- |
- |
- |
- |
1 |
- |
STAA |
M Ü A |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
STAB |
M Ü B |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
STD |
M:M+1 Ü D |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
STOP |
Останов процессора |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
STS |
M:M+1 Ü SP |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
STX |
M:M+1 Ü IX |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
STY |
M:M+1 Ü IY |
Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
SUBA |
A Ü A - M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
SUBB |
B Ü B - M |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
|
|
|
Флаги |
|||||||
Команда |
Описание |
Адресация |
S |
X |
H |
I |
N |
Z |
V |
C |
SUBD |
D Ü D - M:M+1 |
Непосредственная Прямая Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
ô |
ô |
SWI |
Программное прерывание |
Неявная |
- |
- |
- |
1 |
- |
- |
- |
- |
TAB |
B Ü A |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
TAP |
CCR Ü A |
Неявная |
ô |
ò |
ô |
ô |
ô |
ô |
ô |
ô |
TBA |
A Ü B |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
- |
TEST |
Тест |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
TPA |
A Ü CCR |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
TSTA |
A - 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
0 |
TSTB |
B - 0 |
Неявная |
- |
- |
- |
- |
ô |
ô |
0 |
0 |
TST |
M - 0 |
Расширенная Индексная |
- |
- |
- |
- |
ô |
ô |
0 |
0 |
TSX |
IX Ü SP + 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
TSY |
IY Ü SP + 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
TXS |
SP Ü IX - 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
TYS |
SP Ü IY - 1 |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
WAI |
Ожидание прерывания |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
XGDX |
IX Û D |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
XGDY |
IY Û D |
Неявная |
- |
- |
- |
- |
- |
- |
- |
- |
Команды ветвления
Команда |
Условие ветвления |
Комментарии |
BCC |
(C) = 0 |
Нет переноса |
BCS |
(C) = 1 |
Перенос |
BEQ |
(Z) = 1 |
Равенство (нулю) |
BGE |
(N) Å (V) = 0 |
Знаковое >= |
BGT |
(Z) + [(N) Å (V)] = 0 |
Знаковое > |
BHI |
(C) + (Z) = 0 |
Беззнаковое > |
BHS |
(C) = 0 |
Беззнаковое >= |
BLE |
(Z) + [(N) Å (V)] = 1 |
Знаковое <= |
BLO |
(C) = 1 |
Беззнаковое < |
BLS |
(C) + (Z) = 1 |
Беззнаковое <= |
BLT |
[(N) Å (V)] = 1 |
Знаковое < |
BMI |
(N) = 1 |
Отрицательный операнд |
BNE |
(Z) = 0 |
Неравенство (нулю) |
BPL |
(N) = 0 |
Положительный операнд |
BRA |
Всегда |
Безусловный переход |
BRN |
Никогда |
Пустая команда |
BVC |
(V) = 0 |
Нет переполнения |
BVS |
(V) = 1 |
Переполнение |
BRCLR |
(M) & mask = 0 |
Проверяемые биты равны 0 |
BRSET |
!(M) & mask = 0 |
Проверяемые биты равны 1 |
BSR |
Безусловный |
Переход на подпрограмму |
Сводная таблица команд ветвления.
Прямая проверка |
Обратная проверка |
|
|||
Усл.овие |
Формула |
Мнемоника |
Условие |
Мнем.ника |
|
> |
Z+(NÅV)=0 |
BGT |
<= |
BLE |
Знаковая |
>= |
NÅV=0 |
BGE |
< |
BLT |
Знаковая |
= |
Z=1 |
BEQ |
!= |
BNE |
Знаковая |
!= |
Z=0 |
BNE |
= |
BEQ |
Знаковая |
<= |
Z+(NÅV)=1 |
BLE |
> |
BGT |
Знаковая |
< |
NÅV=1 |
BLT |
>= |
BGE |
Знаковая |
> |
C+Z=0 |
BHI |
<= |
BLS |
Безнаковая |
>= |
C=0 |
BHS |
< |
BLO |
Безнаковая |
= |
Z=1 |
BEQ |
!= |
BNE |
Безнаковая |
!= |
Z=0 |
BNE |
= |
BEQ |
Безнаковая |
<= |
C+Z=1 |
BLS |
> |
BHI |
Безнаковая |
< |
C=1 |
BLO |
>= |
BHS |
Безнаковая |
Перенос |
C=1 |
BCS |
Нет переноса |
BCC |
Флаговая |
< 0 |
N=1 |
BMI |
>= 0 |
BPL |
Флаговая |
Переполнение |
V=1 |
BVS |
Нет переполнения |
BVC |
Флаговая |
!=0 |
Z=0 |
BNE |
= |
BEQ |
Флаговая |
Нет переноса |
C=0 |
BCC |
Перенос |
BCS |
Флаговая |
>= 0 |
N=0 |
BPL |
< 0 |
BMI |
Флаговая |
Нет переполнения |
V=0 |
BVC |
Переполнение |
BVS |
Флаговая |
= 0 |
Z=1 |
BEQ |
!= 0 |
BNE |
Флаговая |
Никогда |
- |
BRN |
Всегда |
BRA |
- |
Всегда |
- |
BRA |
Никогда |
BRN |
- |
Биты=0 |
(M) & msk=0 |
BRCLR |
Биты=1 |
BRSET |
Битовая |
Биты=1 |
! (M) & msk=0 |
BRSET |
Биты=0 |
BRCLR |
Битовая |