В табл. 11.1 приведен полный набор команд МП 68000. Чтобы образовать правильный оператор (команду) языка ассемблера, следует указать операнды (с помощью одного из 12 режимов адресации) и тип данных (байтов, слово или длинное слово). На языке ассемблера фирмы Motorola оператор выглядит следующим образом:
ОПЕРАЦИЯ. размер источник, приемник
Здесь ОПЕРАЦИЯ берется из табл. 11.1, размер есть В, W или L (байт, слово или длинное слово соответственно), а источник и приемник могут представлять регистры, непосредственные константы или ячейки памяти. Ниже приведено несколько примеров с указанием способов адресации.
Таблица 11.1. Набор команд МП 68000/8
Операция · Описание
Арифметические
ABCD Сложение упакованных двоично-десятичных чисел
ADD Сложение
ASL Арифметический сдвиг влево
ASR Арифметический сдвиг вправо
CLR Очистка операнда
DIVS Деление (знаковое)
DIVU Деление (беззнаковое)
EXT Расширение знака
LSL Логический сдвиг влево
LSR Логический сдвиг вправо
MOVE Пересылка
MULS Умножение (знаковое)
MULU Умножение (беззнаковое)
NBCD Отрицание упакованного двоично-десятичного числа
NEG Отрицание
SBCD Вычитание упакованного двоично-десятичного числа
SUB Вычитание
Логические
AND Логическое И
BCHG Проверка и изменение бита
BCLR Проверка и очистка бита
BSET Проверка и установка бита
BTST Проверка бита
CHK Проверка регистра на границы
CMP Сравнение
EOR Исключающее ИЛИ
EXG Обмен регистров
NOT Побитовое дополнение
OR Логическое ИЛИ
RESET Возбуждение линии RESET
ROL Циклический сдвиг влево без расширения
ROR Циклический сдвиг вправо без расширения
ROXL Циклический сдвиг влево с расширением
ROXR Циклический сдвиг вправо с расширением
Scc1) Установить байт по условию
SWAP Обмен половин регистра
TAS Проверка и установка операнда
TST Проверка операнда и установка флагов
Управления
Всс1) Условный переход
BRA Безусловный переход (относительный)
BSR Переход на подпрограмму (относительный)
DBcc1) Проверка, декремент и переход
JMP Безусловный переход (7 режимов)
JSR Переход на подпрограмму (7 режимов)
LEA Загрузка эффективного адреса
LINK Подсоединение стека
NOP Холостая команда
PEA Загрузка в стек эффективного адреса
RTE Возврат из исключения
RTR Возврат, восстановление кодов условий
RTS Возврат из подпрограммы
STOP Останов
TRAP Ловушка (векторизованное исключение)
TRAPV Ловушка по переполнению
UNLK Отсоединение стека
Коды условий ("сс")
СС Перенос сброшен
CS Перенос установлен
EQ Равенство нулю
F Никогда не истина2)
GE Больше или равно нулю
GT Больше нуля
HI Выше
LE Меньше или равно нулю
LS Ниже или равно
LT Меньше нуля
MI Минус
NE Не равно нулю
PL Плюс
T Всегда истина2)
VC Переполнение сброшено
VS Переполнение установлено
____
1) См. «Коды условий».
2) Не используется в командах Вcс; вместо «ВТ» используйте BRA.
MOVE.W (непосредственная,
# $FFFF,D0 регистровая)