ВУЗ:
Составители:
Мне- Код N Z V C Операция Действия
мокод
Команды пересылки и установки признаков результата:
CLR *050DD 0 1 0 0 Очистка D = 0`
MOV *1SSDD + + 0 - Пересылка D = S
SWAB 0003DD + - 0 0 Перестановка байтов D=D[7..0]
•
D[15..8]
MFPS 1067DD - - - - Чтение PSW D = PSW
MTPS 1064SS + + + + Запись PSW PSW = S
TST *057DD + + 0 0 Проверка D = D
Логические операции:
COM *051DD + + 0 1 Инвертирование D = ^D
BIT *3SSDD + + 0 - Проверка разрядов S & D
BIC *4SSDD + + 0 - Очистка разрядов D &= ^S
BIS *5SSDD + + 0 - Логическое сложение D |= S
XOR 074RDD + + 0 - Исключающее ИЛИ D ^= R
Арифметические операции и сдвиги:
INC *052DD + + + - Увеличение на 1 D++
DEC *053DD + + + - Уменьшение на 1 D--
CMP *2SSDD + + + + Сравнение S - D
ADD 06SSDD + + + + Сложение D += S
SUB 16SSDD + + + + Вычитание D -= S
ADC *055DD + + + + Добавление переноса D += C
SBC *056DD + + + + Вычитание переноса D -= C
NEG *054DD + + + + Изменение знака D = 0 - D
SXT 0067DD + + + + Расширение знака D[*] = N
MUL 070RSS + + 0 + Умножение Rp = R * S
DIV 071RSS + + + + Деление Rp /= S
ASR *062DD + + + + Арифм. сдвиг вправо D
•
C = D[ст]
•
D
ASL *063DD + + + + Арифм. сдвиг влево C
•
D = D
•
0
ROR *060DD + + + + Цикл. сдвиг вправо D
•
C = C
•
D
ROL *061DD + + + + Цикл. сдвиг влево C
•
D = D
•
C
ASH 072RSS + + + + Арифм. сдвиг на за- S>0 ? R <<= S:
данное число разр. R >>= -S
ASHC 073RSS + + + + Арифм. сдвиг двой- S>0 ? Rp <<= S:
ного слова Rp >>= -S
Таблица 2. Одноадресные и дв ухадресные команды обработ ки данных.
Команды сдвига позволяют умножить и разделить на 2 в целой степени и
позиционировать разряды в нужное положение. Например:
; Прибавление OP1.X += OP2,
; где: X - битовое поле, размещенное в OP1[7..4],
; OP2 - операнд, размещенный в слове
; Считается, что переполнение поля X невозможно
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »