|
Условие |
Перевод |
Мнемоника |
Объектный код |
||
|
Jump |
Call |
Return |
|||
|
Результат не равен нулю |
No Zero |
JNZ |
CNZ |
RNZ |
000 |
|
Результат равен нулю |
Zero |
JZ |
CZ |
RZ |
001 |
|
Нет переноса |
No Carry |
JNC |
CNC |
RNC |
010 |
|
Есть перенос |
Carry |
JC |
CC |
RC |
011 |
|
Нечетный результат |
Parity Odd |
JPO |
CPO |
RPO |
100 |
|
Четный результат |
Parity Even |
JPE |
CPE |
RPE |
101 |
|
Положительный результат |
Plus |
JP |
CP |
RP |
110 |
|
Отрицательный результат |
Minus |
JM |
CM |
RM |
111 |
|
1. Переходы (кол-во байт-3) |
2. Вызовы (кол-во байт-3) |
||||
|
Если указанное условие выполняется, то управление передается команде, адрес которой указан в команде перехода. |
CALL (адр.)cd – передача управления по адресу, указанному в команде, с сохранением в стеке адреса очередной команды прерванной программы. |
||||
|
JMP (адр.) JNZ (адр.) JZ (адр.) JNC (адр.) JC (адр.) JPO (адр.) JPE (адр.) JP (адр.) JM (адр.) PCHL (адр.) |
c3 c2 ca d2 da e2 ea f2 fa e9 |
-безусловный -не ноль -ноль -нет переноса -есть перенос -нечетный р-тат -четный рез-тат -плюс -минус -загрузка счетчика команд РС сод пары H, L. |
CNZ (адр.) CZ (адр.) CNC (адр.) CC (адр.) CPO (адр.) CPE (адр.) CP (адр.) CM (адр.) |
c4 cc d4 dc e4 ec f4 fc |
Передача управления по условию (то же, что и при переходах). |
|
3. Возврат (кол-во байт-1) |
4. Рестарт (кол-во байт-1) |
|||||
|
|
RST |
0 1 2 3 4 5 6 7 |
c7 cf d7 df e7 ef f7 ff |
Адрес очередной команды запоминается в стеке, а управление передается команде, адрес которой в 8 раз больше числа, указанного в команде. |
||
|
RNZ RZ RNC RC RPO RPE RP RM |
c8 d0 d8 e0 e8 f0 f8 |
Выполняется команда RET, если выполняется указанное условие. (возврат по условию) |
||||
4. Команды ввода-вывода
|
Функция |
Перевод |
Мнемоника |
Число байт |
Q-код |
H-код |
Объектный код |
Число тактов |
|
Ввод |
Input |
IN <B2> |
2 |
333 |
DB |
11011011 |
10 |
|
Вывод |
Output |
OUT <B2> |
2 |
323 |
D3 |
11010011 |
10 |
|
Разрешено прерывание |
Enable Interrupt |
EI |
1 |
373 |
F8 |
11111011 |
4 |
|
Запрещено прерывание |
Disable Interrupt |
DI |
1 |
363 |
F3 |
11110011 |
4 |
|
Повторный пуск |
Restart |
RST A |
2 |
3A7 |
C7+8A |
11aaa111 |
4 |
|
Останов |
Halt |
HLT |
1 |
166 |
76 |
01110110 |
7 |
|
Нет операции |
No Operation |
NOP |
1 |
000 |
00 |
00000000 |
4 |
4.1. Команды ввода-вывода (кол-во байт-2)
|
OUT |
байтd3 XX |
Вывод данных из аккумулятора в порт № XX. |
|
IN |
байтdb XX |
Ввод в аккумулятор данных из порта № ХХ. |
4.2. Команды управления (кол-во байт-1)
|
EI |
fb - |
разрешение прерываний |
NOT |
00 - |
нет операций (пауза) |
|
DI |
f3 - |
запрещение прерываний |
HLT |
76 - |
останов |
В поле операндов приняты следующие обозначения:
r, r1, r2 - внутренние регистры ( A, B, C, D, E, H, L ) или М
(М- обозначает ячейку ОЗУ, адрес которой находится в регистрах H,L);
Примечание: Операнды команд «Ассемблера» могут быть записаны в различных системах счисления, которые обозначаются:
b' - двоичная, h' - шестнадцатиричная, d' - десятичная );
|
A |
0 |
|
B |
1 |
|
C |
2 |
|
D |
3 |
|
E |
4 |
|
H |
5 |
|
L |
6 |
|
M |
7 |
|
Обозначение |
Двоичный номер |
Обозначение |
Двоичный номер |
|
B |
000 |
C |
001 |
|
D |
010 |
E |
011 |
|
H |
100 |
L |
101 |
|
M |
110 |
A |
111 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.