| Выражение | Действие |
|---|---|
| = | Присвоение |
| + | Сложение |
| - | Вычитание |
| * | Умножение |
| AND | Логическое «И» |
| OR | Логическое «ИЛИ» |
| NOT | Логическое отрицание |
| XOR | Исключающее «ИЛИ» |
| PASS | Пересылка |
| ABS | Абсолютное значение |
Ниже приведены примеры записи некоторых команд языка ассемблера ADSP-21XX с объяснением их назначения.
DM(var1) = AX0;
Эта команда, знакомая читателям из предыдущих примеров программ, присваивает (записывает) значение регистра AX0 переменной var1, хранящейся в памяти данных.
MR = MR + MX1*MY1;
Данная команда выполняет операцию умножения и сложения. Он умножает входные значения из регистров MX1 и MY1, складывает результат умножения с текущим содержимым регистра MR (результат предыдущего умножения), а затем записывает результат в регистр MR.
При рассмотрении системы команд мы будем пользоваться условными обозначениями, приведенными в табл. 13.3. Эти обозначения позволяют сделать описание команд компактным.
Таблица 13.3
| Обозначение | Описание |
|---|---|
| I0–I7 | Индексные регистры DAG для косвенной адресации |
| M0–M7 | Регистры модификации DAG для косвенной адресации |
| L0–L7 | Регистры длины DAG для циклических буферов |
| <data> | Непосредственное значение данных |
| <addr> | Непосредственное значение адреса (абсолютный адрес или программная метка) |
| <exp> | Порядок (значение сдвига) в командах непосредственного сдвига (8- разрядное знаковое число) |
| cond | Код условия в условных командах |
| term | Код условия выхода из цикла DO UNTIL |
