- •Однокристальная микроЭвм
- •Содержание
- •1. Введение.
- •1.1 Характеристики.
- •1.2 Общее описание.
- •1.3 Программная модель.
- •1.4 Характеристики представителей семейства mc68hc11.
- •2. Описание сигналов и режимы работы.
- •2.1 Описание выводов.
- •2.1.1 Выводы питания (vdd) и земли (vss).
- •2.1.2 Сброс (reset/).
- •2.1.3 Входы внешней синхронизации (xtal и extal).
- •2.1.4 Вывод тактовой частоты синхронизации e (e).
- •2.1.5 Запрос прерывания (irq/).
- •2.1.6 Немаскируемое прерывание (xirq/).
- •2.1.7 Выводы moda/lir/ и modb/vstby.
- •2.1.8 Опорные напряжения ацп (vrLи vrh).
- •2.1.9 Строб b и чтение/запись (strb / r/w/).
- •2.1.10 Строб a и строб адреса (stra/as)
- •2.1.11 Сигналы портов.
- •2.2 Режимы работы.
- •2.2.1 Однокристальный режим.
- •2.2.2 Расширенный режим.
- •2.3 Специальный режим загрузки.
- •Примечание
- •Примечание
- •2.2.4 Дополнительные опции загрузчика программ.
- •2.2.5 Специальный режим теста.
- •3. Внутренняя память.
- •3.1 Карта памяти.
- •3.2 Озу и регистр отображения памяти (init).
- •3.5 Эсппзу.
- •3.5.1 Регистр управления эсппзу (pprog).
- •3.5.2 Регистр защиты эсппзу (bprot).
- •3.5.3 Программирование/стирание внутреннего эсппзу.
- •3.5.4 Регистр конфигурации системы (config).
- •Примечание: в этот момент недопустим сброс контроллера!!!
- •4. Параллельный ввод/вывод.
- •4.1 Порты ввода/вывода общего назначения (c и d).
- •4.2 Порты с фиксированным направлением ввода/вывода (a, b и e).
- •4.3 Простой стробируемый ввод/вывод.
- •4.3.1 Стробируемый ввод-порт c.
- •4.3.2 Стробируемый вывод-порт b.
- •4.4 Ввод/вывод с полным квитированием установления связи.
- •4.4.1 Протокол режима ввода с полным квитированием установления связи.
- •4.4.2 Протокол режима вывода с полным квитированием установления связи.
- •4.5 Регистр управления вводом/выводом (pioc).
- •5. Последовательный интерфейс связи (sci).
- •5.3 Особенности при работе в системах с несколькими приемниками.
- •5.4 Принимаемые данные (RxD).
- •5.5 Распознавание старт-бита.
- •5.6 Передаваемые данные (TxD).
- •5.7 Фунциональное описание.
- •5.8 Регистры sci.
- •5.8.1 Регистр данных последовательной связи (scdr).
- •5.8.2 Регистр управления 1 (sccr1).
- •5.8.3 Регистр управления 2 (sccr2).
- •5.8.4 Регистр статуса последовательной связи (scsr).
- •5.8.5 Регистр скорости приема/передачи (baud).
- •Примечание
- •Примечание
- •6. Последовательный периферийный интерфейс.
- •6.1 Общий обзор и характеристики.
- •6.2 Описание сигналов spi.
- •6.2.1 Вход ведущего-выход ведомого (miso).
- •6.2.2 Выход ведущего-вход ведомого (mosi).
- •6.2.3 Сигналы синхронизации (sck).
- •6.2.4 Выбор ведомого устройства (ss/).
- •6.3 Функциональное описание.
- •6.4 Регистры spi.
- •6.4.1 Регистр управления периферийным интерфейсом (spcr).
- •6.4.2 Регистр статуса поеледовательного периферийного интерфейса (spsr).
- •6.4.3 Регистр ввода/вывода spi.
- •7. Аналого-цифровой преобразователь.
- •7.1 Процесс преобразования.
- •7.2 Назначение каналов.
- •7.4 Работа в многоканальном режиме.
- •7.5 Работа в режимах stop и wait.
- •7.6 Регистр управления и статуса ацп (adctl).
- •Примечание:
- •Примечание:
- •7.7 Регистры результатов преобразований 1,2,3 и 4 (adr1, adr2, adr3 и adr4).
- •7.8 Подача питания на ацп и выбор источника синхронизации.
- •8. Программируемый таймер, прерывания реального времени и счетчик импульсов.
- •8.1 Программируемый таймер.
- •8.1.1 Счетчик.
- •8.1.2 Входная фиксация.
- •8.1.3 Выходное сравнение.
- •8.1.4 Управление вводом/выводом выходного сравнения 1.
- •8.1.5 Регистр принудительного сравнения таймера (cforc).
- •8.1.6 Регистр 1 маскирования выходного сравнения (oc1m).
- •8.1.7 Регистр данных выходного сравнения 1 (oc1d).
- •8.1.8 Регистр 1 управления таймером (tctl1).
- •8.1.9 Регистр 2 управления таймером (tctl2).
- •8.1.10 Регистр 1 маскирования прерываний таймера (tmsk1).
- •Примечание:
- •8.1.11 Регистр 1 флагов прерывания таймера (tflg1).
- •Примечание:
- •8.1.12 Регистр 2 маскирования прерываний таймера (tmsk2).
- •8.1.13 Регистр 2 флагов прерываний таймера (tflg2).
- •8.2 Прерывания реального времени.
- •8.3 Счетчик импульсов.
- •8.4 Регистр управления счетчиком импульсов (pactl).
- •9. Сброс, прерывания и режимы с пониженным потреблением энергии.
- •9.1 Варианты сброса.
- •9.1.1 Внешний вывод reset/.
- •9.1.2 Сброс при включении питания.
- •9.1.3 Сброс, вызываемый системой слежения.
- •9.1.4 Сброс тактового монитора.
- •9.1.5 Регистр выбора конфигурации (option).
- •9.2 Прерывания.
- •9.2.1 Программное прерывание (swi).
- •Примечание
- •9.2.2 Прерывание по неверному коду команды.
- •9.2.3 Биты маскирования прерываний регистра условий.
- •9.2.4 Структура приоритетов.
- •9.2.5 Регистр наивысшего приоритета I-прерывания (hprio).
- •9.3 Режимы пониженного энергопотребления.
- •9.3.1 Команда wait.
- •9.3.2 Команда stop.
- •10. Центральный процессор, режимы адресации и система команд.
- •10.1 Регистры цп.
- •10.1.1 Аккумуляторы a и b.
- •10.2 Режимы адресации.
- •10.2.1 Непосредственная адресация.
- •10.2.2 Прямая адресация.
- •10.2.3 Расширенная адресация.
- •10.2.4 Индексная адресация.
- •10.2.5 Неявная адресация.
- •10.2.6 Относительная адресация.
- •10.2.7 Байт префикса.
- •10.3 Система команд.
- •11. Электрические характеристики.
- •11.1 Максимальные диапазоны.
- •11.2 Температурные характеристики.
- •11.3 Энергопотребление.
- •11.4 Электрические характеристики.
- •11.5 Синхронизация.
- •11.7 Характеристики системы ацп.
- •11.8 Временные диаграммы шины расширенния.
- •11.9 Временные характеристики spi.
- •11.10 Характеристики эсппзу.
- •12. Корпус.
- •12.1 Расположение выводов.
- •12.2 Размеры корпуса.
10.2.7 Байт префикса.
Байт префикса был добавлен к обычным командам с целью расширения набора команд MC68HC11E9. Эти команды обычно связаны с регистром Y. Коды команд без префиксного байта можно рассматривать как страницу 1 общей карты кодов. Для кодов, которые рассматриваются, как принадлежащие страницам 2, 3 и 4 требуются следующие префиксные байты: $18 для страницы 2, $1A для страницы 3 и $CD для страницы 4.
10.3 Система команд.
Центральный процессор микроконтроллера MC68HC11E9 является расширением ЦП MC6801. Дополнительно к системе команд MC6800 и MC6801 ЦП MC68HC11E9 имеет многостраничную карту команд содержащую в общей сложности 91 новую команду. Основные дополнительные команды: команды, использующие индексный регистр Y, команды деление 16-разрядных чисел, команды STOP и WAIT, а также команды работы с битами.
Таблица 10-1 показывает весь набор команд MC68HC11E9 со всеми допустимыми режимами адресации. Для каждой команды представлены: набор операндов, длина кода команды в байтах и время выполнения в циклах частоты E ЦП. В конце таблицы находятся замечания, которые объясняют содержимое столбцов “Типы операндов” и “Время выполнения” для некоторых команд. Определение “Специальных операндов”, ссылка на которые встречается в столбце “Логическое выражение” можно найти на рисунке 10-2.
Таблицы с 10-2 по 10-8 дают детальное описание информации, находящейся на шине адреса, данных и на линии чтение/запись (R/W/) в течение каждого цикла команды. Эта информация полезна для сравнения результатов, которые ожидаются и тех, которые в действительности имеют место в ходе отладки программного и аппаратного обеспечения. Информация собрана в группы в соответствии с режимом адресации и числом циклов на команду. Вообще, команды, имеющие одинаковый режим адресации и число циклов, выполняются одинаковым образом. Исключения также отмечены в таблице.
|
Название |
Операция |
Логическое |
Режи-мы ад-реса- |
Машинный код (шестнадцати-ричный) |
Ба |
Цик |
Тип поциклового |
Содержимое регистра условий | ||||||||||||||
|
команды |
|
выражение |
ции операнда |
Код |
Типы операндов |
йт |
лов |
выполнения |
S |
X |
H |
I |
N |
Z |
V |
C | ||||||
|
ABA |
Сложение аккумуляторов |
A+B®A |
INH |
1B |
|
1 |
2 |
2-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
ABX |
Прибавить B к X |
IX+00:B®IX |
INH |
3A |
|
1 |
3 |
2-3 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
ABY |
Прибавить B к Y |
IY+00:B®IY |
INH |
18 3A |
|
2 |
4 |
2-4 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
ADCA |
Прибавить к A |
A+M+C®A |
A IMM |
89 |
ii |
2 |
2 |
3-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с учетом |
|
A DIR |
99 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
флага C |
|
A EXT |
B9 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A9 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A9 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ADCB |
Прибавить к B |
B+M+C®B |
B IMM |
C9 |
ii |
2 |
2 |
3-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с учетом |
|
B DIR |
D9 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
флага C |
|
B EXT |
F9 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E9 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E9 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ADDA |
Прибавить к A |
A+M®A |
A IMM |
8B |
ii |
2 |
2 |
3-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
|
|
A DIR |
9B |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A EXT |
BB |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
AB |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 AB |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ADDB |
Прибавить к B |
B+M®B |
B IMM |
CB |
ii |
2 |
2 |
3-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
|
|
B DIR |
DB |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B EXT |
FB |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
EB |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 EB |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ADDD |
Прибавить |
D+M:M+1 |
IMM |
CB |
ii |
2 |
2 |
3-1 |
- |
- |
ê |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
16-разрядное |
®D |
DIR |
DB |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
число к D |
|
EXT |
FB |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
EB |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 EB |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ANDA |
Логическое |
A·M®A |
A IMM |
84 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
умножение A |
|
A DIR |
94 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и содержимого |
|
A EXT |
B4 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
памяти |
|
A IND,X |
A4 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A4 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ANDB |
Логическое |
B·M®B |
B IMM |
C4 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
умножение B |
|
B DIR |
D4 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и содержимого |
|
B EXT |
F4 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
памяти |
|
B IND,X |
E4 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E4 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ASL |
Арифметичес- |
¬ |
EXT |
78 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
кий сдвиг |
¬¬0 |
IND,X |
68 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
влево |
C b7 b0 |
IND,Y |
18 68 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
ASLA |
|
|
A INH |
48 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
ASLB |
|
|
B INH |
58 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
ASLD |
Двойной ариф |
¬ |
INH |
05 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
|
метический |
¬--------¬0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
|
сдвиг влево |
C b15 b0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
ASR |
Арифметичес- |
éù ® |
EXT |
78 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
кий сдвиг |
®®˜ |
IND,X |
68 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
вправо |
b7 b0 C |
IND,Y |
18 68 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
ASRA |
|
|
A INH |
48 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
ASRB |
|
|
B INH |
58 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
BCC (см.) |
Ветвление, если флаг C очищен |
? C=0 |
REL |
24 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BCLR |
Очищает бит(ы) |
M·(mm)®M |
DIR |
15 |
dd mm |
3 |
6 |
4-10 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
|
|
IND,X |
1D |
ff mm |
3 |
7 |
6-13 |
|
|
|
|
|
|
|
| ||||||
|
(мас.) |
|
|
IND,Y |
18 1D |
ff mm |
4 |
8 |
7-10 |
|
|
|
|
|
|
|
| ||||||
|
BCS (см.) |
Ветвление, если флаг C установлен |
? C=1 |
REL |
25 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BEQ (см.) |
Ветвление, если результат=0 |
? Z=1 |
REL |
27 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BGE (см.) |
Ветвление, если результат³0 |
? NÅV=0 |
REL |
2C |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BGT (см.) |
Ветвление, если результат>0 |
?Z+(NÅV)=0 |
REL |
2E |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BHI (см.) |
Ветвление, если результат> |
? C+Z=0 |
REL |
22 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BHS (см.) |
Ветвление, если результат³ |
? C=0 |
REL |
24 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BITA |
|
A·M |
A IMM |
85 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
|
|
A DIR |
95 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A EXT |
B5 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A5 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A5 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
BITB |
Тест бита(ов) B |
B·M |
B IMM |
C5 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
и содержимого |
|
B DIR |
D5 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
памяти |
|
B EXT |
F5 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E5 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E5 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
BLE (см.) |
Ветвление, если результат£0 |
?Z+(NÅV)=0 |
REL |
2F |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BLO (см.) |
Ветвление, если результат< |
? C=1 |
REL |
25 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BLS (см.) |
Ветвление, если результат£ |
? C+Z=1 |
REL |
23 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BLT (см.) |
Ветвление, если результат<0 |
? NÅV=1 |
REL |
2D |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BMI (см.) |
Ветвление, если результат<0 |
? N=1 |
REL |
2B |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BNE (см.) |
Ветвление, если результат¹0 |
? Z=0 |
REL |
26 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BPL (см.) |
Ветвление, если результат>0 |
? N=0 |
REL |
2A |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BRA (см.) |
Ветвление всегда |
? 1=1 |
REL |
20 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BRCLR |
Ветвление, если |
?M·mm=0 |
DIR |
13 |
dd mm |
4 |
6 |
4-11 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
(оп.) |
бит(ы) |
|
IND,X |
1F |
ff mm |
4 |
7 |
6-14 |
|
|
|
|
|
|
|
| ||||||
|
(мас.) |
очищены |
|
IND,Y |
18 1F |
ff mm |
5 |
8 |
7-11 |
|
|
|
|
|
|
|
| ||||||
|
BRN (см.) |
Ветвление никогда |
? 1=0 |
REL |
21 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BRSET |
Ветвление, если |
?(M)·mm=0 |
DIR |
12 |
dd mm |
4 |
6 |
4-11 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
(оп.) |
бит(ы) |
|
IND,X |
1E |
ff mm |
4 |
7 |
6-14 |
|
|
|
|
|
|
|
| ||||||
|
(мас.) |
установлены |
|
IND,Y |
18 1E |
ff mm |
5 |
8 |
7-11 |
|
|
|
|
|
|
|
| ||||||
|
BSET |
Устанавливает |
M+mm®M |
DIR |
14 |
dd mm |
3 |
6 |
4-10 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
бит(ы) |
|
IND,X |
1C |
ff mm |
3 |
7 |
6-13 |
|
|
|
|
|
|
|
| ||||||
|
(мас.) |
|
|
IND,Y |
18 1C |
ff mm |
4 |
8 |
7-10 |
|
|
|
|
|
|
|
| ||||||
|
BSR (см.) |
Ветвление, на подпрограмму |
См. спец. операнды |
REL |
8D |
rr |
2 |
6 |
8-2 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BVC (см.) |
Ветвление, если было переполнение |
? V=0 |
REL |
28 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
BVS (см.) |
Ветвление, если не было переполнения |
? V=1 |
REL |
29 |
rr |
2 |
3 |
8-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
CBA |
Сравнение A и B |
A-B |
INH |
11 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
CLC |
Очистить флаг переноса |
0®C |
INH |
0C |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
- |
0 | ||||||
|
CLI |
Очистить маску прерываний |
0®I |
INH |
0E |
|
1 |
2 |
2-1 |
- |
- |
- |
0 |
- |
- |
- |
- | ||||||
|
CLR |
Очистить байт |
0®M |
EXT |
7F |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
0 |
1 |
0 |
0 | ||||||
|
(оп.) |
памяти |
|
IND,X |
6F |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 6F |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
CLRA |
Очистить аккумулятор A |
0®A |
A INH |
4F |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
0 |
1 |
0 |
0 | ||||||
|
CLRB |
Очистить аккумулятор B |
0®B |
B INH |
5F |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
0 |
1 |
0 |
0 | ||||||
|
CLV |
Очистить флаг переполнения |
0®V |
INH |
0A |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
0 |
- | ||||||
|
CMPA |
Сравнение A |
A-M |
A IMM |
81 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с памятью |
|
A DIR |
91 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A EXT |
B1 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A1 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A1 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
CMPB |
Сравнение B |
B-M |
B IMM |
C1 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с памятью |
|
B DIR |
D1 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B EXT |
F1 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E1 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E1 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
COM |
Дополнение |
$FF-M®M |
EXT |
73 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
0 |
1 | ||||||
|
(оп.) |
байта памяти |
|
IND,X |
63 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
до минус единицы |
|
IND,Y |
18 63 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
COMA |
Дополнение A до минус единицы |
$FF-A®A |
A INH |
43 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
0 |
1 | ||||||
|
COMB |
Дополнение B до минус единицы |
$FF-B®B |
B INH |
53 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
0 |
1 | ||||||
|
CPD |
Сравнение D |
D-M:M+1 |
IMM |
1A 83 |
jj kk |
4 |
5 |
3-5 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с памятью |
|
DIR |
1A 93 |
dd |
3 |
6 |
4-9 |
|
|
|
|
|
|
|
| ||||||
|
|
16 бит |
|
EXT |
1A B3 |
hh ll |
4 |
7 |
5-11 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
1A A3 |
ff |
3 |
7 |
6-11 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
CD A3 |
ff |
3 |
7 |
7-8 |
|
|
|
|
|
|
|
| ||||||
|
CPX |
Сравнение X |
IX-M:M+1 |
IMM |
8C |
jj kk |
3 |
4 |
3-3 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с памятью |
|
DIR |
9C |
dd |
2 |
5 |
4-7 |
|
|
|
|
|
|
|
| ||||||
|
|
16 бит |
|
EXT |
BC |
hh ll |
3 |
6 |
5-10 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
AC |
ff |
2 |
6 |
6-10 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
CD AC |
ff |
3 |
7 |
7-8 |
|
|
|
|
|
|
|
| ||||||
|
CPY |
Сравнение Y |
IY-M:M+1 |
IMM |
18 8C |
jj kk |
4 |
5 |
3-5 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
с памятью |
|
DIR |
18 9C |
dd |
3 |
6 |
4-9 |
|
|
|
|
|
|
|
| ||||||
|
|
16 бит |
|
EXT |
18 BC |
hh ll |
4 |
7 |
5-11 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
1A AC |
ff |
3 |
7 |
6-11 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 AC |
ff |
3 |
7 |
7-8 |
|
|
|
|
|
|
|
| ||||||
|
DAA |
Десятичная коррекция A |
Коррекция суммы в BCD |
INH |
19 |
|
|
|
|
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
DEC |
Декремент |
M-1®M |
EXT |
7A |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
(оп.) |
байта памяти |
|
IND,X |
6A |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 6A |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
DECA |
Декремент A |
A-1®A |
A INH |
4A |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
DECB |
Декремент B |
B-1®B |
B INH |
5A |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
DES |
Декремент SP |
SP-1®SP |
INH |
34 |
|
1 |
3 |
2-3 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
DEX |
Декремент индексного регистра X |
IX-1®SP |
INH |
09 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
- |
ê |
- |
- | ||||||
|
DEY |
Декремент индексного регистра Y |
IY-1®SP |
INH |
18 09 |
|
2 |
4 |
2-4 |
- |
- |
- |
- |
- |
ê |
- |
- | ||||||
|
EORA |
Исключающее |
AÅM®A |
A IMM |
88 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
ИЛИ A |
|
A DIR |
98 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и памяти |
|
A EXT |
B8 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A8 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A8 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
EORB |
Исключающее |
BÅM®B |
B IMM |
C8 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
ИЛИ B |
|
B DIR |
D8 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и памяти |
|
B EXT |
F8 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E8 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E8 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
FDIV |
Дробное 16-разрядное деление |
D/IX®IX;r®D |
INH |
03 |
|
1 |
41 |
2-17 |
- |
- |
- |
- |
- |
½ |
½ |
½ | ||||||
|
IDIV |
Целочисленное 16-разрядное деление |
D/IX®IX;r®D |
INH |
02 |
|
1 |
41 |
2-17 |
- |
- |
- |
- |
- |
½ |
0 |
½ | ||||||
|
INC |
Инкремент |
M-1®M |
EXT |
7C |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
(оп.) |
байта памяти |
|
IND,X |
6C |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 6C |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
INCA |
Инкремент A |
A+1®A |
A INH |
4C |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
INCB |
Инкремент B |
B+1®B |
B INH |
5C |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
- | ||||||
|
INS |
Инкремент SP |
SP+1®SP |
INH |
31 |
|
1 |
3 |
2-3 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
INX |
Инкремент индексного регистра X |
IX+1®SP |
INH |
08 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
- |
ê |
- |
- | ||||||
|
INY |
Инкремент индексного регистра Y |
IY+1®SP |
INH |
18 08 |
|
2 |
4 |
2-4 |
- |
- |
- |
- |
- |
ê |
- |
- | ||||||
|
JMP |
Переход |
См. спец. |
EXT |
7E |
hh ll |
3 |
3 |
5-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
(оп.) |
|
операнды |
IND,X |
6E |
ff |
2 |
3 |
6-1 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 6E |
ff |
3 |
4 |
7-1 |
|
|
|
|
|
|
|
| ||||||
|
JSR |
Переход |
См. спец. |
DIR |
9D |
dd |
2 |
5 |
4-8 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
(оп.) |
на |
операнды |
EXT |
BD |
hh ll |
3 |
6 |
5-12 |
|
|
|
|
|
|
|
| ||||||
|
|
подпрограмму |
|
IND,X |
AD |
ff |
2 |
6 |
6-12 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 AD |
ff |
3 |
7 |
7-9 |
|
|
|
|
|
|
|
| ||||||
|
LDAA |
Загрузка в A |
M®A |
A IMM |
86 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
значения |
|
A DIR |
96 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
A EXT |
B6 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A6 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A6 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
LDAB |
Загрузка в B |
M®B |
B IMM |
C6 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
значения |
|
B DIR |
D6 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
B EXT |
F6 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E6 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E6 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
LDD |
Загрузка в D |
M®A;
|
IMM |
CC |
jj kk |
3 |
3 |
3-2 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
значения |
M+1®B |
DIR |
DC |
dd |
2 |
4 |
4-3 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
EXT |
FC |
hh ll |
3 |
5 |
5-4 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
EC |
ff |
2 |
5 |
6-6 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 EC |
ff |
3 |
6 |
7-6 |
|
|
|
|
|
|
|
| ||||||
|
LDS |
Загрузка в SP |
M:M+1®SP |
IMM |
8E |
jj kk |
3 |
3 |
3-2 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
значения |
|
DIR |
9E |
dd |
2 |
4 |
4-3 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
EXT |
BE |
hh ll |
3 |
5 |
5-4 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
AE |
ff |
2 |
5 |
6-6 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 AE |
ff |
3 |
6 |
7-6 |
|
|
|
|
|
|
|
| ||||||
|
LDX |
Загрузка в |
M:M+1®IX |
IMM |
CE |
jj kk |
3 |
3 |
3-2 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
индексный |
|
DIR |
DE |
dd |
2 |
4 |
4-3 |
|
|
|
|
|
|
|
| ||||||
|
|
регистр X |
|
EXT |
FE |
hh ll |
3 |
5 |
5-4 |
|
|
|
|
|
|
|
| ||||||
|
|
значения |
|
IND,X |
EE |
ff |
2 |
5 |
6-6 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
IND,Y |
CD EE |
ff |
3 |
6 |
7-6 |
|
|
|
|
|
|
|
| ||||||
|
LDY |
Загрузка в |
M:M+1®IY |
IMM |
18 CE |
jj kk |
4 |
4 |
3-4 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
индексный |
|
DIR |
18 DE |
dd |
3 |
5 |
4-5 |
|
|
|
|
|
|
|
| ||||||
|
|
регистр Y |
|
EXT |
18 FE |
hh ll |
4 |
6 |
5-6 |
|
|
|
|
|
|
|
| ||||||
|
|
значения |
|
IND,X |
1A EE |
ff |
3 |
6 |
6-7 |
|
|
|
|
|
|
|
| ||||||
|
|
из памяти |
|
IND,Y |
18 EE |
ff |
3 |
6 |
7-6 |
|
|
|
|
|
|
|
| ||||||
|
LSL |
Логический |
¬ |
EXT |
78 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
сдвиг влево |
¬¬0 |
IND,X |
68 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
C b7 b0 |
IND,Y |
18 68 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
LSLA |
|
|
A INH |
48 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
LSLB |
|
|
B INH |
58 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
LSLD |
Двойной |
¬ |
INH |
05 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
|
логический |
¬--------¬0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
|
сдвиг влево |
C b15 b0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
LSR |
Логический |
® |
EXT |
74 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
0 |
ê |
ê |
ê | ||||||
|
(оп.) |
сдвиг вправо |
0®®˜ |
IND,X |
64 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
b7 b0 C |
IND,Y |
18 64 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
LSRA |
|
|
A INH |
44 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
LSRB |
|
|
B INH |
54 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
LSRD |
Двойной |
® |
INH |
04 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
0 |
ê |
ê |
ê | ||||||
|
|
логический |
0®--------®ž |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
|
сдвиг вправо |
b15 b0 C |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
MUL |
Умножение 8x8 |
AxB®D |
INH |
3D |
|
1 |
10 |
2-13 |
- |
- |
- |
- |
- |
- |
- |
ê | ||||||
|
NEG |
Дополнение |
0-M®M |
EXT |
70 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
байта памяти |
|
IND,X |
60 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
до нуля |
|
IND,Y |
18 60 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
NEGA |
Дополнение A до нуля |
0-A®A |
A INH |
40 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
NEGB |
Дополнение B до нуля |
0-B®B |
B INH |
50 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
NOP |
Нет операции |
Нет операции |
INH |
01 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
ORAA |
Логическое |
A+M®A |
A IMM |
8A |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
ИЛИ A |
|
A DIR |
9A |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и памяти |
|
A EXT |
BA |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
AA |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 AA |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
ORAB |
Логическое |
B+M®B |
B IMM |
CA |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
ИЛИ B |
|
B DIR |
DA |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
и памяти |
|
B EXT |
FA |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
EA |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 EA |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
PSHA |
Сохранить A в стеке |
A®Stk; SP=SP-1 |
A INH |
36 |
|
1 |
3 |
2-6 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PSHB |
Сохранить B в стеке |
B®Stk; SP=SP-1 |
B INH |
37 |
|
1 |
3 |
2-6 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PSHX |
Сохранить X в стеке (сначала младший байт) |
IX®Stk; SP=SP-2 |
INH |
3C |
|
1 |
4 |
2-7 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PSHY |
Сохранить Y в стеке (сначала младший байт) |
IY®Stk; SP=SP-2 |
INH |
18 3C |
|
2 |
5 |
2-8 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PULA |
Извлечь A из стека |
SP=SP+1; A¬Stk |
A INH |
32 |
|
1 |
4 |
2-9 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PULB |
Извлечь B из стека |
SP=SP+1; B¬Stk |
B INH |
33 |
|
1 |
4 |
2-9 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PULX |
Извлечь X из стека (сначала старший байт) |
SP=SP+2; IX¬Stk |
INH |
38 |
|
1 |
45 |
2-10 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
PULY |
Извлечь Y из стека (сначала старший байт) |
SP=SP+2; IY¬Stk |
INH |
18 38 |
|
2 |
56 |
2-10 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
ROL |
Циклический |
¬ |
EXT |
79 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
сдвиг влево |
¬¬š |
IND,X |
69 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
C b7 b0 C |
IND,Y |
18 69 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
ROLA |
|
|
A INH |
49 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
ROLB |
|
|
B INH |
59 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
ROR |
Циклический |
® |
EXT |
76 |
hh ll |
3 |
6 |
5-8 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
сдвиг вправо |
™®®˜ |
IND,X |
66 |
ff |
2 |
6 |
6-3 |
|
|
|
|
|
|
|
| ||||||
|
|
|
C b7 b0 C |
IND,Y |
18 66 |
ff |
3 |
7 |
7-3 |
|
|
|
|
|
|
|
| ||||||
|
RORA |
|
|
A INH |
46 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
RORB |
|
|
B INH |
56 |
|
1 |
2 |
2-1 |
|
|
|
|
|
|
|
| ||||||
|
RTI |
Возврат из прерывания |
См. спец. операции |
INH |
3B |
|
1 |
12 |
2-14 |
ê |
ê |
ê |
ê |
ê |
ê |
ê |
ê | ||||||
|
RTS |
Возврат из подпрограммы |
См. спец. операции |
INH |
39 |
|
1 |
5 |
2-12 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
SBA |
Вычитание B из A |
A-B®A |
INH |
10 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
SBCA |
Вычитание |
A-M-C®A |
A IMM |
82 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
из A с учетом |
|
A DIR |
92 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
флага C |
|
A EXT |
B2 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,X |
A2 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A2 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
SBCB |
Вычитание |
B-M-C®B |
B IMM |
C2 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
из B с учетом |
|
B DIR |
D2 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
флага C |
|
B EXT |
F2 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,X |
E2 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E2 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
SEC |
Установить флаг переноса |
1®C |
INH |
0D |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
- |
1 | ||||||
|
SEI |
Установить маску прерываний |
1®I |
INH |
0F |
|
1 |
2 |
2-1 |
- |
- |
- |
1 |
- |
- |
- |
- | ||||||
|
SEV |
Установить флаг переполнения |
1®V |
INH |
0B |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
1 |
- | ||||||
|
STAA |
Сохранение |
A®M |
A DIR |
97 |
dd |
2 |
3 |
4-2 |
- |
- |
- |
- |
ê |
0 |
- |
| ||||||
|
(оп.) |
значение A |
|
A EXT |
B7 |
hh ll |
3 |
4 |
5-3 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
A IND,X |
A7 |
ff |
2 |
4 |
6-5 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A7 |
ff |
3 |
5 |
7-5 |
|
|
|
|
|
|
|
| ||||||
|
STAB |
Сохранение |
B®M |
B DIR |
D7 |
dd |
2 |
3 |
4-2 |
- |
- |
- |
- |
ê |
0 |
- |
| ||||||
|
(оп.) |
значение B |
|
B EXT |
F7 |
hh ll |
3 |
4 |
5-3 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
B IND,X |
E7 |
ff |
2 |
4 |
6-5 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E7 |
ff |
3 |
5 |
7-5 |
|
|
|
|
|
|
|
| ||||||
|
STD |
Сохранение D |
M®A;
|
DIR |
DD |
dd |
2 |
4 |
4-4 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
в памяти |
M+1®B |
EXT |
FD |
hh ll |
3 |
5 |
5-5 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
ED |
ff |
2 |
5 |
6-8 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 ED |
ff |
3 |
6 |
7-7 |
|
|
|
|
|
|
|
| ||||||
|
STOP |
Останов внутреннего таймера |
|
INH |
CF |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
STS |
Сохранение SP |
SP®M:M+1 |
DIR |
9F |
dd |
2 |
4 |
4-4 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
в памяти |
|
EXT |
BF |
hh ll |
3 |
5 |
5-5 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,X |
AF |
ff |
2 |
5 |
6-8 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 AF |
ff |
3 |
6 |
7-7 |
|
|
|
|
|
|
|
| ||||||
|
STX |
Сохранение |
IX®M:M+1 |
DIR |
DF |
dd |
2 |
4 |
4-4 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
индексного |
|
EXT |
FF |
hh ll |
3 |
5 |
5-5 |
|
|
|
|
|
|
|
| ||||||
|
|
регистра X |
|
IND,X |
EF |
ff |
2 |
5 |
6-8 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
IND,Y |
CD EF |
ff |
3 |
6 |
7-7 |
|
|
|
|
|
|
|
| ||||||
|
STY |
Сохранение |
IY®M:M+1 |
DIR |
18 DF |
dd |
3 |
5 |
4-6 |
- |
- |
- |
- |
ê |
ê |
0 |
- | ||||||
|
(оп.) |
индексного |
|
EXT |
18 FF |
hh ll |
4 |
6 |
5-7 |
|
|
|
|
|
|
|
| ||||||
|
|
регистра X |
|
IND,X |
1A EF |
ff |
3 |
6 |
6-9 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
IND,Y |
18 EF |
ff |
3 |
6 |
7-7 |
|
|
|
|
|
|
|
| ||||||
|
SUBA |
Вычитание |
A-M®A |
A IMM |
80 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
значения |
|
A DIR |
90 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
A EXT |
B0 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
из A |
|
A IND,X |
A0 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
A IND,Y |
18 A0 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
SUBB |
Вычитание |
B-M®B |
B IMM |
C0 |
ii |
2 |
2 |
3-1 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
значения |
|
B DIR |
D0 |
dd |
2 |
3 |
4-1 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
B EXT |
F0 |
hh ll |
3 |
4 |
5-2 |
|
|
|
|
|
|
|
| ||||||
|
|
из A |
|
B IND,X |
E0 |
ff |
2 |
4 |
6-2 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
B IND,Y |
18 E0 |
ff |
3 |
5 |
7-2 |
|
|
|
|
|
|
|
| ||||||
|
SUBD |
Вычитание |
D-M:M+1 |
IMM |
83 |
jj kk |
3 |
4 |
3-3 |
- |
- |
- |
- |
ê |
ê |
ê |
ê | ||||||
|
(оп.) |
значения |
®D |
DIR |
93 |
dd |
2 |
5 |
4-7 |
|
|
|
|
|
|
|
| ||||||
|
|
в памяти |
|
EXT |
B3 |
hh ll |
3 |
6 |
5-10 |
|
|
|
|
|
|
|
| ||||||
|
|
из D |
|
IND,X |
A3 |
ff |
2 |
6 |
6-10 |
|
|
|
|
|
|
|
| ||||||
|
|
|
|
IND,Y |
18 A3 |
ff |
3 |
7 |
7-8 |
|
|
|
|
|
|
|
| ||||||
|
SWI |
Программное прерывание |
См. спец. операции |
INH |
3F |
|
1 |
14 |
2-15 |
- |
- |
- |
1 |
- |
- |
- |
- | ||||||
|
TAB |
Пересылка из A в B |
A®B |
INH |
16 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
½ |
½ |
0 |
- | ||||||
|
TAP |
Пересылка из A в CCR |
A®CCR |
INH |
06 |
|
1 |
2 |
2-1 |
½ |
¯ |
½ |
½ |
½ |
½ |
½ |
½ | ||||||
|
TBA |
Пересылка из B в A |
B®A |
INH |
17 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
½ |
½ |
0 |
- | ||||||
|
TEST |
ТЕСТ (только в режиме теста) |
Счет шины адреса |
INH |
00 |
|
1 |
** |
2-20 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
TPA |
Пересылка из CCR в A |
CCR®A |
INH |
07 |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
TST |
Тест значения |
M-0 |
EXT |
7D |
hh ll |
3 |
6 |
5-9 |
- |
- |
- |
- |
½ |
½ |
0 |
0 | ||||||
|
(оп.) |
в памяти на 0 |
|
IND,X |
6D |
ff |
2 |
6 |
6-4 |
|
|
|
|
|
|
|
| ||||||
|
|
или отрицательное значение |
|
IND,Y |
18 6D |
ff |
3 |
7 |
7-4 |
|
|
|
|
|
|
|
| ||||||
|
TSTA |
Тест A на 0 или отрицательное значение |
A-0 |
A INH |
4D |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
½ |
½ |
0 |
0 | ||||||
|
TSTB |
Тест B на 0 или отрицательное значение |
B-0 |
B INH |
5D |
|
1 |
2 |
2-1 |
- |
- |
- |
- |
½ |
½ |
0 |
0 | ||||||
|
TSX |
Пересылка из SP в X |
SP+1®IX |
INH |
30 |
|
1 |
3 |
2-3 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
TSY |
Пересылка из SP в Y |
SP+1®IY |
INH |
18 30 |
|
2 |
4 |
2-5 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
TXS |
Пересылка из X в SP |
IX-1®SP |
INH |
35 |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
TYS |
Пересылка из Y в SP |
IY-1®SP |
INH |
18 35 |
|
2 |
4 |
2-4 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
WAI |
Ожидание прерывания |
Сохранить регистры в стеке и ждать |
INH |
3E |
|
1 |
*** |
2-16 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
XGDX |
Обмен D и X |
IX®D;D®IX |
INH |
8F |
|
1 |
3 |
2-2 |
- |
- |
- |
- |
- |
- |
- |
- | ||||||
|
XGDY |
Обмен D и Y |
IY®D;D®IY |
INH |
18 8F |
|
2 |
4 |
2-4 |
- |
- |
- |
- |
- |
- |
- |
- |
* Все команды расписаны по циклам в таблицах с 10-2 по 10-8, ссылки на строки этих таблиц присутствуют в столбце “Тип поциклового выполнения”. Например, ссылка 2-4 означает строку 2-4 таблицы 10-2.
** Бесконечно или до тех пор, пока не произойдет сброс.
*** Используются 12 циклов, после чего устанавливается состояние ожидания на целое число циклов до возникновения прерывания. После возникновения прерывания требуется еще 2 цикла. Итого-14+n циклов, где n-количество циклов, в течение которых микроконтроллер находился в состоянии ожидания.
dd =8-разрядный прямой адресс ($0000-$00FF); старший байт считается=$00;
ff =8-разрядное смещение относительно 16-разрядного адреса;
hh =старший байт 16-разрядного расширенного адреса;
ii =один байт данных;
jj =старший байт 16-разрядных данных;
kk =младший байт 16-разрядных данных;
ll =младший байт 16-разрядного расширенного адреса;
mm =8-разрядная маска (устанавливает биты, на которые будет оказано воздействие);
rr =8-разрядное знаковое смещение от $80 (-128) до $7F (+127) относительно текущего значения программного счетчика.
Таблица 10-1. Команды MC68HC11E9, режимы адресации и время выполнения.
JSR Переход на подпрограмму.
|
|
ì |
|
Основная |
ü |
|
|
|
|
|
ï |
|
программа |
ï |
|
|
|
|
DIR |
í |
PC |
$9D=JSR |
ï |
|
|
|
|
|
ï |
|
dd |
ï |
|
|
|
|
|
î |
RTN |
След. ком. |
ï |
|
|
|
|
|
ì |
|
Основная |
ï |
|
|
|
|
|
ï |
|
программа |
ï |
|
|
|
|
IND, X |
í |
PC |
$AD=JSR |
ï |
|
|
|
|
|
ï |
|
ff |
ï |
|
|
|
|
|
î |
RTN |
След. ком. |
ï |
|
SP |
Стек |
|
|
ì |
|
Основная |
ï |
|
®SP-2 |
|
|
|
ï |
|
программа |
ý |
Þ |
SP-1 |
RTNH |
|
IND, Y |
í |
PC |
$18=преф. |
ï |
|
SP |
RTNL |
|
|
ï |
|
$AD=JSR |
ï |
|
|
|
|
|
ï |
|
ff |
ï |
|
|
|
|
|
î |
RTN |
След. ком. |
ï |
|
|
|
|
|
ì |
|
Основная |
ï |
|
|
|
|
|
ï |
|
программа |
ï |
|
|
|
|
EXT |
í |
PC |
$BD=JSR |
ï |
|
|
|
|
|
ï |
|
hh |
ï |
|
|
|
|
|
ï |
|
ll |
ï |
|
|
|
|
|
î |
RTN |
След. ком. |
þ |
|
|
|
BSR Ветвление на подпрограмму.
|
|
|
|
Основная |
|
|
|
|
|
|
|
|
программа |
|
|
SP |
Стек |
|
|
|
PC |
$8D=BSR |
|
|
®SP-2 |
|
|
|
|
|
rr |
|
Þ |
SP-1 |
RTNH |
|
|
|
RTN |
След. ком. |
|
|
SP |
RTNL |
RTS Возврат из подпрограммы.
|
|
|
|
Основная |
|
|
SP |
Стек |
|
|
|
|
программа |
|
|
SP |
|
|
|
|
PC |
$39=RTS |
|
Þ |
SP+1 |
RTNH |
|
|
|
|
|
|
|
®SP+2 |
RTNL |
SWI Программное прерывание.
|
|
|
|
Основная |
|
|
SP |
Стек |
|
|
|
|
программа |
|
|
®SP-9 |
|
|
|
|
PC |
$3F=SWI |
|
Þ |
SP-8 |
CCR |
|
|
|
|
|
|
|
SP-7 |
B |
|
|
|
|
|
|
|
SP-6 |
A |
|
|
|
|
|
|
|
SP-5 |
XH |
|
|
|
|
|
|
|
SP-4 |
XL |
|
|
|
|
|
|
|
SP-3 |
YH |
|
|
|
|
|
|
|
SP-2 |
YL |
|
|
|
|
|
|
|
SP-1 |
RTNH |
|
|
|
|
|
|
|
SP |
RTNL |
WAI Ожидание прерывания.
|
|
|
|
Основная |
|
|
SP |
Стек |
|
|
|
|
программа |
|
|
®SP-9 |
|
|
|
|
PC |
$3E=WAI |
|
Þ |
SP-8 |
CCR |
|
|
|
|
|
|
|
SP-7 |
B |
|
|
|
|
|
|
|
SP-6 |
A |
|
|
|
|
|
|
|
SP-5 |
XH |
|
|
|
|
|
|
|
SP-4 |
XL |
|
|
|
|
|
|
|
SP-3 |
YH |
|
|
|
|
|
|
|
SP-2 |
YL |
|
|
|
|
|
|
|
SP-1 |
RTNH |
|
|
|
|
|
|
|
SP |
RTNL |
RTI Возврат из прерывания.
|
|
|
|
Основная |
|
|
SP |
Стек |
|
|
|
|
программа |
|
|
SP |
|
|
|
|
PC |
$3B=RTI |
|
Þ |
SP+1 |
CCR |
|
|
|
|
|
|
|
SP+2 |
B |
|
|
|
|
|
|
|
SP+3 |
A |
|
|
|
|
|
|
|
SP+4 |
XH |
|
|
|
|
|
|
|
SP+5 |
XL |
|
|
|
|
|
|
|
SP+6 |
YH |
|
|
|
|
|
|
|
SP+7 |
YL |
|
|
|
|
|
|
|
SP+8 |
RTNH |
|
|
|
|
|
|
|
®SP+9 |
RTNL |
JMP Переход.
|
|
ì |
|
Основная |
|
|
|
|
|
|
ï |
|
программа |
|
|
|
|
|
|
ï |
PC |
$6E=JMP |
|
|
|
|
|
IND, X |
í |
|
ff |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
î |
X+ff |
След. ком. |
|
|
|
|
|
|
ì |
|
Основная |
|
|
|
|
|
|
ï |
|
программа |
|
|
|
|
|
|
ï |
PC |
$18=преф. |
|
|
|
|
|
|
ï |
|
$6E=JMP |
|
|
|
|
|
IND, Y |
í |
|
ff |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
î |
Y+ff |
След. ком. |
|
|
|
|
|
|
ì |
|
Основная |
|
|
|
|
|
|
ï |
|
программа |
|
|
|
|
|
|
ï |
PC |
$7E=JMP |
|
|
|
|
|
|
ï |
|
hh |
|
|
|
|
|
EXT |
í |
|
ll |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
ï |
|
· |
|
|
|
|
|
|
î |
hh ll |
След. ком. |
|
|
|
|
Обозначения:
RTN =адрес следующей команды основной программы, которая будет выполняться после возврата из подпрограммы.
RTNH =старший байт адреса возврата.
RTNL =младший байт адреса возврата.
® =указатель стека после выполнения команды.
dd =8-разрядный прямой адрес ($0000-$00FF); старший байт считается=$00;
ff =8-разрядное смещение от $00 до $FF, прибавляемое к содержимому индексного регистра.
hh =старший байт 16-разрядного расширенного адреса.
ll =младший байт 16-разрядного расширенного адреса.
rr =8-разрядное знаковое смещение от $80 (-128) до $7F (+127) относительно текущего значения программного счетчика.
Рисунок 10-2. Специальные операции.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W/ |
Шина данных |
|
2-1 |
ABA, ASLA, ASLB, |
2 |
1 |
Адрес команды |
1 |
Код команды |
|
|
ASRA, ASRB, CBA, CLC, CLI, CLRA, CLRB, CLV, COMA, COMB, DAA, DECA, DECB, INCA, INCB, LSLA, LSLB, LSRA, LSRB, NEGA, NEGB, NOP, ROLA, ROLB, RORA, RORB, SBA, SEC, SEI, SEV, STOP, TAB, TAP, TBA, TPA, TSTA, TSTB |
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
2-2 |
ABX, ASLD, DEX, |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
INX, LSLD, LSRD, |
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
TXS, XGDX |
|
3 |
$FFFF |
1 |
Незначащие данные |
|
2-3 |
DES, INS, TSX |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Предыдуее зн. SP |
1 |
Незначащие данные |
|
2-4 |
ABY, DEY, INY, TYS, XGDY |
4 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
4 |
$FFFF |
|
Незначащие данные |
|
2-5 |
TSY |
4 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$30) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP |
1 |
Незначащие данные |
|
2-6 |
PSHA, PSHB |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
0 |
Данные аккумулятора |
|
2-7 |
PSHX |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
0 |
Младший байт IX |
|
|
|
|
4 |
Значение SP-1 |
0 |
Старший байт IX |
|
2-8 |
PSHY |
5 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$3C) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP |
0 |
Младший байт IY |
|
|
|
|
5 |
Значение SP-1 |
0 |
Старший байт IY |
|
2-9 |
PULA, PULB |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP+1 |
1 |
Данные из стека |
|
2-10 |
PULX |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP+1 |
1 |
Данные из стека (старший байт) |
|
|
|
|
5 |
Значение SP+2 |
1 |
Данные из стека (младший байт) |
|
2-11 |
PULY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$38) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP |
1 |
Незначащие данные |
|
|
|
|
5 |
Значение SP+1 |
1 |
Старший байт IY из стека |
|
|
|
|
6 |
Значение SP+2 |
1 |
Младший байт IY из стека |
|
2-12 |
RTS |
5 |
1 |
Адрес команды |
1 |
Код команды ($39) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP+1 |
1 |
Адрес следующей команды (старший байт) |
|
|
|
|
5 |
Значение SP+2 |
1 |
Адрес следующей команды (младший байт) |
|
2-13 |
MUL |
10 |
1 |
Адрес команды |
1 |
Код команды ($39) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3-10 |
$FFFF |
1 |
Незначащие данные |
|
2-14 |
RTI |
12 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP+1 |
1 |
CCR из стека |
|
|
|
|
5 |
Значение SP+2 |
1 |
B из стека |
|
|
|
|
6 |
Значение SP+3 |
1 |
A из стека |
|
|
|
|
7 |
Значение SP+4 |
1 |
Старший байт IX из стека |
|
|
|
|
8 |
Значение SP+5 |
1 |
Младший байт IX из стека |
|
|
|
|
9 |
Значение SP+6 |
1 |
Старший байт IY из стека |
|
|
|
|
10 |
Значение SP+7 |
1 |
Младший байт IY из стека |
|
|
|
|
11 |
Значение SP+8 |
1 |
Адрес следующей команды (старший байт) |
|
|
|
|
12 |
Значение SP+9 |
1 |
Адрес следующей команды (младший байт) |
|
2-15 |
SWI |
14 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
4 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
|
|
|
5 |
Значение SP-2 |
0 |
Младший байт IY |
|
|
|
|
6 |
Значение SP-3 |
0 |
Старший байт IY |
|
|
|
|
7 |
Значение SP-4 |
0 |
Младший байт IX |
|
|
|
|
8 |
Значение SP-5 |
0 |
Старший байт IX |
|
|
|
|
9 |
Значение SP-6 |
0 |
A из стека |
|
|
|
|
10 |
Значение SP-7 |
0 |
B из стека |
|
|
|
|
11 |
Значение SP-8 |
0 |
CCR |
|
|
|
|
12 |
Значение SP-8 |
1 |
Незначащие данные |
|
|
|
|
13 |
Адрес вектора SWI (первое значение) |
1 |
Адрес подпрограммы обработки SWI (старший байт) |
|
|
|
|
14 |
Адрес вектора SWI+1 (второе значение) |
1 |
Адрес подпрограммы обработки SWI (младший байт) |
|
2-16 |
WAI |
14 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
+n |
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
4 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
|
|
|
5 |
Значение SP-2 |
0 |
Младший байт IY |
|
|
|
|
6 |
Значение SP-3 |
0 |
Старший байт IY |
|
|
|
|
7 |
Значение SP-4 |
0 |
Младший байт IX |
|
|
|
|
8 |
Значение SP-5 |
0 |
Старший байт IX |
|
|
|
|
9 |
Значение SP-6 |
0 |
A из стека |
|
|
|
|
10 |
Значение SP-7 |
0 |
B из стека |
|
|
|
|
11 |
Значение SP-8 |
0 |
CCR |
|
|
|
|
12- n+12 |
Значение SP-8 |
1 |
Незначащие данные |
|
|
|
|
n+13 |
Адрес вектора (первое значение) |
1 |
Адрес подпрограммы обработки (старший байт) |
|
|
|
|
n+14 |
Адрес вектора+1 (второе значение) |
1 |
Адрес подпрограммы обработки (младший байт) |
|
2-17 |
FDIV, IDIV |
41 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
|
3-41 |
$FFFF |
1 |
Незначащие данные |
|
2-18 |
Неверный код |
15 |
1 |
Адрес команды |
1 |
Код команды (неверный) |
|
|
команды из |
|
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
1 страницы |
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
5 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
|
|
|
6 |
Значение SP-2 |
0 |
Младший байт IY |
|
|
|
|
7 |
Значение SP-3 |
0 |
Старший байт IY |
|
|
|
|
8 |
Значение SP-4 |
0 |
Младший байт IX |
|
|
|
|
9 |
Значение SP-5 |
0 |
Старший байт IX |
|
|
|
|
10 |
Значение SP-6 |
0 |
A из стека |
|
|
|
|
11 |
Значение SP-7 |
0 |
B из стека |
|
|
|
|
12 |
Значение SP-8 |
1 |
CCR |
|
|
|
|
13 |
Значение SP-8 |
1 |
Незначащие данные |
|
|
|
|
14 |
Адрес вектора (первое значение) |
1 |
Адрес подпрограммы обработки (старший байт) |
|
|
|
|
15 |
Адрес вектора+1 (второе значение) |
1 |
Адрес подпрограммы обработки (младший байт) |
|
2-19 |
Неверный код команды из 2, 3 |
16 |
1 |
Адрес команды |
1 |
Код команды (верный префикс) |
|
|
или 4 страницы |
|
2 |
Адрес команды+1 |
1 |
Код команды (неверный) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
6 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
|
|
|
7 |
Значение SP-2 |
0 |
Младший байт IY |
|
|
|
|
8 |
Значение SP-3 |
0 |
Старший байт IY |
|
|
|
|
9 |
Значение SP-4 |
0 |
Младший байт IX |
|
|
|
|
10 |
Значение SP-5 |
0 |
Старший байт IX |
|
|
|
|
11 |
Значение SP-6 |
0 |
A из стека |
|
|
|
|
12 |
Значение SP-7 |
0 |
B из стека |
|
|
|
|
13 |
Значение SP-8 |
1 |
CCR |
|
|
|
|
14 |
Значение SP-8 |
1 |
Незначащие данные |
|
|
|
|
15 |
Адрес вектора (первое значение) |
1 |
Адрес подпрограммы обработки (старший байт) |
|
|
|
|
16 |
Адрес вектора+1 (второе значение) |
1 |
Адрес подпрограммы обработки (младший байт) |
|
2-20 |
TEST |
бес |
1 |
Адрес команды |
1 |
Код команды ($00) |
|
|
|
ко |
2 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
неч |
3 |
Адрес команды+1 |
1 |
Незначащие данные |
|
|
|
но |
4 |
Адрес команды+2 |
1 |
Незначащие данные |
|
|
|
|
5-n |
предыдущий адрес+1 |
1 |
Незначащие данные |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-2. Поцикловое описание команд-неявная адресация.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
3-1 |
ADCA, ADCB, |
2 |
1 |
Адрес команды |
1 |
Код команды |
|
|
ADDB, ANDA, ANDB, BITA, BITB, CMPA, CMPB, EORA, EORB, LDAA, LDAB, ORAA, ORAB, SBCA, SBCB, SUBA, SUBB |
|
2 |
Адрес команды+1 |
1 |
Данные |
|
3-2 |
LDD, LDS, LDX |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Данные (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Данные (младший байт) |
|
3-3 |
ADDD, CPX, SUBD |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Данные (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Данные (младший байт) |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
3-4 |
LDY |
4 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Данные (старший байт) |
|
|
|
|
4 |
Адрес команды+3 |
1 |
Данные (младший байт) |
|
3-5 |
CPD, CPY |
5 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Данные (старший байт) |
|
|
|
|
4 |
Адрес команды+3 |
1 |
Данные (младший байт) |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-3. Поцикловое описание команд-непосредственная адресация.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
4-1 |
ADCA, ADCB, |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
ADDA, ADDB, ANDA, ANDB, BITA, BITB, |
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
CMPA, CMPB, EORA, EORB, LDAA, LDAB, ORAA, ORAB, SBCA, SBCB, SUBA, SUBB |
|
3 |
Адрес операнда |
1 |
Данные |
|
4-2 |
STAA, STAB |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
0 |
Данные из аккумулятора |
|
4-3 |
LDD, LDS, LDX |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
4 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
4-4 |
STD, STS, STX |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
0 |
Данные из регистра (старший байт) |
|
|
|
|
4 |
Адрес операнда+1 |
0 |
Данные из регистра (младший байт) |
|
4-5 |
LDY |
5 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$DE) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
4 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
4-6 |
STY |
5 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$DF) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
4 |
Адрес операнда |
0 |
Данные (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
0 |
Данные (младший байт) |
|
4-7 |
ADDD, CPX, SUBD |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
4 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
4-8 |
JSR |
5 |
1 |
Адрес команды |
1 |
Код команды ($9D) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес подпрограммы |
1 |
Первая команда подпрограммы |
|
|
|
|
4 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
5 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
4-9 |
CPD, CPY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
4 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
4-10 |
BCLR, BSET |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
1 |
Исходные данные |
|
|
|
|
4 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
6 |
Адрес операнда |
0 |
Результирующие данные |
|
4-11 |
BRCLR, BRSET |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (младший байт; старший байт=$00) |
|
|
|
|
3 |
Адрес операнда |
1 |
Исходные данные |
|
|
|
|
4 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
5 |
Адрес команды+3 |
1 |
Смещение ветвления |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-4. Поцикловое описание команд-прямая адресация.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
5-1 |
JMP |
3 |
1 |
Адрес команды |
1 |
Код команды ($7E) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес перехода (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес перехода (младший байт) |
|
5-2 |
ADCA, ADCB, |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
ADDA, ADDB, ANDA, ANDB, |
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
BITA, BITB, CMPA, CMPB, EORA, |
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
EORB, LDAA, LDAB, ORAA, ORAB, SBCA, SBCB, SUBA, SUBB |
|
4 |
Адрес операнда |
1 |
Данные |
|
5-3 |
STAA, STAB |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
0 |
Данные из аккумулятора |
|
5-4 |
LDD, LDS, LDX |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
5-5 |
STD, STS, STX |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
0 |
Данные из регистра (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
0 |
Данные из регистра (младший байт) |
|
5-6 |
LDY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$FE) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
4 |
Адрес команды+3 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
5 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
6 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
5-7 |
STY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$FF) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
4 |
Адрес команды+3 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
5 |
Адрес операнда |
0 |
Данные (старший байт) |
|
|
|
|
6 |
Адрес операнда+1 |
0 |
Данные (младший байт) |
|
5-8 |
ASL, ASR, CLR, |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
COM, DEC, INC, LSL, LSR, NEG, |
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
ROL, ROR |
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
1 |
Исходные данные |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
6 |
Адрес операнда |
0 |
Результирующие данные |
|
5-9 |
TST |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
1 |
Исходные данные |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
5-10 |
ADDD, CPX, SUBD |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
4 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
5 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
5-11 |
CPD, CPY |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес операнда (старший байт) |
|
|
|
|
4 |
Адрес команды+3 |
1 |
Адрес операнда (младший байт) |
|
|
|
|
5 |
Адрес операнда |
1 |
Данные (старший байт) |
|
|
|
|
6 |
Адрес операнда+1 |
1 |
Данные (младший байт) |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
|
5-12 |
JSR |
6 |
1 |
Адрес команды |
1 |
Код команды ($9D) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Адрес подпрограммы (старший байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Адрес подпрограммы (младший байт) |
|
|
|
|
4 |
Адрес подпрограммы |
1 |
Первая команда подпрограммы |
|
|
|
|
5 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
6 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-5. Поцикловое описание команд-расширенная адресация.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
6-1 |
JMP |
3 |
1 |
Адрес команды |
1 |
Код команды ($6E) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
6-2 |
ADCA, ADCB, |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
ADDA, ADDB, |
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
ANDA, ANDB, |
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
BITA, BITB, CMPA, CMPB, EORA,EORB, LDAA, LDAB, ORAA, ORAB, SBCA, SBCB, SUBA, SUBB |
|
4 |
(IX)+смещение |
1 |
Данные |
|
6-3 |
ASL, ASR, CLR, |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
COM, DEC, INC, |
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
LSL, LSR, NEG, |
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
ROL, ROR |
|
4 |
(IX)+смещение |
1 |
Исходные данные |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
6 |
(IX)+смещение |
0 |
Результирующие данные |
|
6-4 |
TST |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Исходные данные |
|
|
|
|
5 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
6-5 |
STAA, STAB |
4 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
0 |
Данные из аккумулятора |
|
6-6 |
LDD, LDS, LDX |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
5 |
(IX)+смещение+1 |
1 |
Данные (младший байт) |
|
6-7 |
LDY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс=$1A) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$EE) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IX)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
6 |
(IX)+смещение+1 |
1 |
Данные (младший байт) |
|
6-8 |
STD, STS, STX |
5 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
0 |
Данные из регистра (старший байт) |
|
|
|
|
5 |
(IX)+смещение+1 |
0 |
Данные из регистра (младший байт) |
|
6-9 |
STY |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс=$1A) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$EF) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IX)+смещение |
0 |
Данные (старший байт) |
|
|
|
|
6 |
(IX)+смещение+1 |
0 |
Данные (младший байт) |
|
6-10 |
ADDD, CPX, SUBD |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
5 |
(IX)+смещение+1 |
1 |
Данные (младший байт) |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
6-11 |
CPD, CPY |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IX)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
6 |
(IX)+смещение+1 |
1 |
Данные (младший байт) |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
|
6-12 |
JSR |
6 |
1 |
Адрес команды |
1 |
Код команды ($AD) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Первая команда подпрограммы |
|
|
|
|
5 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
6 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
6-13 |
BCLR, BSET |
7 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Исходные данные |
|
|
|
|
5 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
7 |
(IX)+смещение |
0 |
Результирующие данные |
|
6-14 |
BRCLR, BRSET |
7 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IX)+смещение |
1 |
Исходные данные |
|
|
|
|
5 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
6 |
Адрес команды+3 |
1 |
Смещение ветвления |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-6. Поцикловое описание команд-индексная адресация через X.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
7-1 |
JMP |
4 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$6E) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
7-2 |
ADCA, ADCB, ADDA, ADDB, |
4 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
ANDA, ANDB, BITA, BITB, CMPA, |
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
CMPB, |
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
EORA,EORB, |
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
LDAA, LDAB, ORAA, ORAB, SBCA, SBCB, SUBA, SUBB |
|
5 |
(IY)+смещение |
1 |
Данные |
|
7-3 |
ASL, ASR, CLR, |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
COM, DEC, INC, LSL, LSR, NEG, |
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
ROL, ROR |
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Исходные данные |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
7 |
(IY)+смещение |
0 |
Результирующие данные |
|
7-4 |
TST |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$6D) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Исходные данные |
|
|
|
|
6 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
|
7-5 |
STAA, STAB |
5 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
0 |
Данные из аккумулятора |
|
7-6 |
LDD, LDS, LDX, |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
LDY |
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
2 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
(IY)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
5 |
(IY)+смещение+1 |
1 |
Данные (младший байт) |
|
7-7 |
STD, STS, STX, |
6 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
STY |
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
0 |
Данные из регистра (старший байт) |
|
|
|
|
6 |
(IY)+смещение+1 |
0 |
Данные из регистра (младший байт) |
|
7-8 |
ADDD, CPX, CPD, |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс) |
|
|
CPY, SUBD |
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Данные (старший байт) |
|
|
|
|
6 |
(IY)+смещение+1 |
1 |
Данные (младший байт) |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
|
7-9 |
JSR |
7 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт=$AD) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Первая команда подпрограммы |
|
|
|
|
6 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
7 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
|
7-10 |
BCLR, BSET |
8 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Исходные данные |
|
|
|
|
6 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
7 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
8 |
(IY)+смещение |
0 |
Результирующие данные |
|
7-11 |
BRCLR, BRSET |
8 |
1 |
Адрес команды |
1 |
Код команды (префикс=$18) |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Код команды (второй байт) |
|
|
|
|
3 |
Адрес команды+2 |
1 |
Смещение |
|
|
|
|
4 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
5 |
(IY)+смещение |
1 |
Исходные данные |
|
|
|
|
6 |
Адрес команды+2 |
1 |
Байт маски |
|
|
|
|
7 |
Адрес команды+3 |
1 |
Смещение ветвления |
|
|
|
|
8 |
$FFFF |
1 |
Незначащие данные |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-7. Поцикловое описание команд-индексная адресация через Y.
|
Номер ссылки* |
Команды |
Циклов |
# цикла |
Шина адреса |
Линия R/W |
Шина данных |
|
8-1 |
BCC, BCS, BEQ, |
3 |
1 |
Адрес команды |
1 |
Код команды |
|
|
BGE, BGT, BHI, |
|
2 |
Адрес команды+1 |
1 |
Смещение ветвления |
|
|
BHS, BLE, BLO, BLS, BLT, BMI, BNE, BPL, BRA, BRN, BVC, BVS |
|
3 |
$FFFF |
1 |
Незначащие данные |
|
8-2 |
BSR |
6 |
1 |
Адрес команды |
1 |
Код команды |
|
|
|
|
2 |
Адрес команды+1 |
1 |
Смещение ветвления |
|
|
|
|
3 |
$FFFF |
1 |
Незначащие данные |
|
|
|
|
4 |
Адрес подпрограммы |
1 |
Код следующей команды |
|
|
|
|
5 |
Значение SP |
0 |
Адрес возврата (младший байт) |
|
|
|
|
6 |
Значение SP-1 |
0 |
Адрес возврата (старший байт) |
* Номера ссылок даются как и в таблице 10-1.
Таблица 10-8. Поцикловое описание команд-относительная адресация.