Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Таблица П2
Название команды |
Мнемоника команды |
Код операции |
Параметры команды б ц т |
Описание команды |
||
1 |
2 |
3 |
4 |
5 |
||
Команды пересылки данных |
||||||
Пересылки 8-битных данных |
MOV RD,RS |
1DS |
1 |
1 |
5 |
|
MOV M,RS |
16S |
1 |
2 |
7 |
||
MOV RD,M |
1D6 |
1 |
2 |
7 |
||
Загрузка регистра (непосредственная) |
MVI RD,data8 |
0D6 B2 |
2 |
2 |
7 |
|
MVI M,data8 |
066 B2 |
2 |
3 |
10 |
||
Загрузка пары регистров (непосредственная) |
LXI B,data16 |
001 B2 B3 |
3 |
3 |
10 |
|
LXI D,data16 |
021 B2 B3 |
3 |
3 |
10 |
||
LXI H,data16 |
041 B2 B3 |
3 |
3 |
10 |
||
LXI SP,data16 |
061 B2 B3 |
3 |
3 |
10 |
||
Команды пересылок данных в аккумулятор и из аккумулятора |
||||||
Загрузка А (прямая) |
LDA ADDR |
072 B2 B3 |
3 |
4 |
13 |
|
Загрузка А (косвенная) |
LDAX B |
012 |
1 |
2 |
7 |
|
LDAX D |
032 |
1 |
2 |
7 |
||
Запоминание А (прямое) |
STA ADDR |
062 B2 B3 |
3 |
4 |
13 |
|
Запоминание А (косвенное) |
STAX B |
002 |
1 |
2 |
7 |
|
STAX D |
022 |
1 |
2 |
7 |
Таблица П2 (продолжение)
1 |
2 |
3 |
4 |
5 |
||
Ввод |
IN PORT |
333 B2 |
2 |
3 |
10 |
|
Вывод |
OUT PORT |
323 B2 |
2 |
3 |
10 |
|
Команды обмена, загрузки и запоминания содержимого регистровой пары HL |
||||||
Обмен |
XCHG |
353 |
1 |
1 |
4 |
|
XTHL |
343 |
1 |
5 |
18 |
||
Загрузка (прямая) |
LHLD ADDR |
052 B2 B3 |
3 |
5 |
16 |
|
Запоминание (прямое) |
SHLD ADDR |
042 B2 B3 |
3 |
5 |
16 |
|
Загрузка указателя стека |
SPHL |
371 |
1 |
1 |
5 |
|
Загрузка счётчика команд |
PCHL |
351 |
1 |
1 |
5 |
|
Команды загрузки в стек и извлечения из стека |
||||||
Загрузка в стек |
PUSH B |
305 |
1 |
3 |
11 |
|
PUSH D |
325 |
1 |
3 |
11 |
||
PUSH H |
345 |
1 |
3 |
11 |
Таблица П2 (продолжение)
1 |
2 |
3 |
4 |
5 |
||
Загрузка в стек |
PUSH PSW |
365 |
1 |
3 |
11 |
|
Извлечение из стека |
POP B |
301 |
1 |
3 |
10 |
|
POP D |
321 |
1 |
3 |
10 |
||
POP H |
341 |
1 |
3 |
10 |
||
POP PSW |
361 |
1 |
3 |
10 |
||
Команды безусловной передачи управления |
||||||
Безусловный переход |
JMP ADDR |
303 B2 B3 |
3 |
3 |
10 |
|
Безусловный вызов подпрограммы |
CALL ADDR |
315 B2 B3 |
3 |
5 |
17 |
|
Безусловный возврат из подпрограммы |
RET |
311 |
1 |
3 |
10 |
Таблица П2 (продолжение)
1 |
2 |
3 |
4 |
5 |
||
Загрузка счётчика команд (множественное ветвление) |
PCHL |
351 |
1 |
1 |
5 |
|
Вызов прерывающей программы |
RST N |
3N7 |
1 |
3 |
11 |
|
Команды условного перехода |
||||||
Переход по нулевому значению флага Z (ненулевому результату) |
JNZ ADDR |
302 B2 B3 |
3 |
3 |
10 |
Переход по условию, заданному в команде. Если условие выполняется, то осуществляется переход к команде, размещенной по адресу B2 B3: Если условие не выполняется, то осуществляется переход к следующей по порядку команде: |
Переход по единичному значению флага Z (нулевому результату) |
JZ ADDR |
312 B2 B3 |
3 |
3 |
10 |
|
Переход по нулевому значению флага C (при отсутствии переноса) |
JNC ADDR |
322 B2 B3 |
3 |
3 |
10 |
|
Переход по единичному значению флага C (при наличии переноса) |
JC ADDR |
332 B2 B3 |
3 |
3 |
10 |
|
Переход по нулевому значению флага P (при отсутствии четности) |
JPO ADDR |
342 B2 B3 |
3 |
3 |
10 |
|
Переход по единичному значению флага P (при наличии четности) |
JPE ADDR |
352 B2 B3 |
3 |
3 |
10 |
Таблица П2 (продолжение)
1 |
2 |
3 |
4 |
5 |
||
Переход по нулевому значению флага S (положительное значение) |
JP ADDR |
362 B2 B3 |
3 |
3 |
10 |
|
Переход по единичному значению флага S (отрицательное значение) |
JM ADDR |
372 B2 B3 |
3 |
3 |
10 |
|
Команды условного вызова подпрограмм |
||||||
Вызов подпрограммы при Z = 0 |
CNZ ADDR |
304 B2 B3 |
3 |
3/5 |
11/17 |
Вызов подпрограммы при выполнении условия, заданного в команде. Если условие выполняется, то осуществляется переход к подпрограмме, т.е. к команде, размещенной по адресу B2 B3: Если условие не выполняется, то осуществляется переход к следующей по порядку команде: |
Вызов подпрограммы при Z = 1 |
CZ ADDR |
314 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при C = 0 |
CNC ADDR |
324 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при C = 1 |
CC ADDR |
334 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при P = 0 |
CPO ADDR |
344 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при P = 1 |
CPE ADDR |
354 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при S = 0 |
CP ADDR |
364 B2 B3 |
3 |
3/5 |
11/17 |
|
Вызов подпрограммы при S = 1 |
CM ADDR |
374 B2 B3 |
3 |
3/5 |
11/17 |
Таблица П2 (продолжение)
1 |
2 |
3 |
4 |
5 |
||
Команды условного возврата из подпрограмм |
||||||
Возврат из подпрограммы при ненулевом результате (Z = 0) |
RNZ |
300 |
1 |
1/3 |
5/11 |
Возврат из подпрограммы при выполнении условия, заданного в команде. Если условие выполняется, то осуществляется переход к команде, размещенной по адресу возврата из стека: ( Если условие не выполняется, то осуществляется переход к следующей по порядку команде: |
Возврат из подпрограммы при нулевом результате (Z = 1) |
RZ |
310 |
1 |
1/3 |
5/11 |
|
Возврат из подпрограммы при отсутствии переноса (C = 0) |
RNC |
320 |
1 |
1/3 |
5/11 |
|
Возврат из подпрограммы при наличии переноса (C = 1) |
RC |
330 |
1 |
1/3 |
5/11 |
|
Возврат из подпрограммы при отсутствии четности (P = 0) |
RPO |
340 |
1 |
1/3 |
5/11 |
|
Возврат из подпрограммы при наличии четности (P = 1) |
RPE |
350 |
1 |
1/3 |
5/11 |
Таблица П2 (окончание)
1 |
2 |
3 |
4 |
5 |
||
Возврат из подпрограммы при положительном результате (S = 0) |
RP |
360 |
1 |
1/3 |
5/11 |
|
Возврат из подпрограммы при отрицательном результате (S = 1) |
RM |
370 |
1 |
1/3 |
5/11 |
|
Команды управления микропроцессором |
||||||
Разрешение прерываний |
EI |
373 |
1 |
1 |
4 |
Формирование сигнала INTE = 1 |
Запрет прерываний |
DI |
363 |
1 |
1 |
4 |
Формирование сигнала INTE = 0 |
Холостая команда |
NOP |
000 |
1 |
1 |
4 |
Переход к следующей команде без операции |
Команда останова |
HLT |
166 |
1 |
1 |
4 |
Останов. Возможно продолжение программы по запросу прерывания |
Таблица П3
Название команды |
Мнемоника команды |
Код операции |
Признаки (флаги) результата S Z AC P C |
Параметры команды б ц т |
Описание команды |
||||||
1 |
2 |
3 |
4 |
5 |
6 |
||||||
Команды арифметических операций |
|||||||||||
Сложение |
ADD RS |
20S |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
ADD M |
206 |
+ |
+ |
+ |
+ |
+ |
1 |
2 |
7 |
||
ADI data8 |
306 B2 |
+ |
+ |
+ |
+ |
+ |
2 |
2 |
7 |
||
Сложение с переносом |
ADC RS |
21S |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
ADC M |
216 |
+ |
+ |
+ |
+ |
+ |
1 |
2 |
7 |
||
ACI data8 |
316 B2 |
+ |
+ |
+ |
+ |
+ |
2 |
2 |
7 |
||
Вычитание |
SUB RS |
22S |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
SUB M |
226 |
+ |
+ |
+ |
+ |
+ |
1 |
2 |
7 |
||
SUI data8 |
326 B2 |
+ |
+ |
+ |
+ |
+ |
2 |
2 |
7 |
||
Вычитание с заёмом |
SBB RS |
23S |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
SBB M |
236 |
+ |
+ |
+ |
+ |
+ |
1 |
2 |
7 |
||
SBI data8 |
336 B2 |
+ |
+ |
+ |
+ |
+ |
2 |
2 |
7 |
||
Сравнение (неразрушающее вычитание) |
CMP RS |
27S |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
CMP M |
276 |
+ |
+ |
+ |
+ |
+ |
1 |
2 |
7 |
||
CPI data8 |
376 B2 |
+ |
+ |
+ |
+ |
+ |
2 |
2 |
7 |
||
Инкремент (увеличение содержимого адресуемого источника на 1) |
INR RD |
0D4 |
+ |
+ |
+ |
+ |
|
1 |
1 |
5 |
|
INR M |
064 |
+ |
+ |
+ |
+ |
|
1 |
3 |
10 |
||
INX B |
003 |
|
|
|
|
|
1 |
1 |
5 |
||
INX D |
023 |
|
|
|
|
|
1 |
1 |
5 |
||
INX H |
043 |
|
|
|
|
|
1 |
1 |
5 |
Таблица П3 (продолжение)
1 |
2 |
3 |
4 |
5 |
6 |
||||||
INX SP |
063 |
|
|
|
|
|
1 |
1 |
5 |
||
Декремент (уменьшение содержимого адресуемого источника на 1) |
DCR RD |
0D5 |
+ |
+ |
+ |
+ |
|
1 |
1 |
5 |
|
DCR M |
065 |
+ |
+ |
+ |
+ |
|
1 |
3 |
10 |
||
DCX B |
013 |
|
|
|
|
|
1 |
1 |
5 |
||
DCX D |
033 |
|
|
|
|
|
1 |
1 |
5 |
||
DCX H |
053 |
|
|
|
|
|
1 |
1 |
5 |
||
DCX SP |
073 |
|
|
|
|
|
1 |
1 |
5 |
||
Двойное сложение |
DAD B |
011 |
|
|
|
|
+ |
1 |
3 |
10 |
|
DAD D |
031 |
|
|
|
|
+ |
1 |
3 |
10 |
||
DAD H |
051 |
|
|
|
|
+ |
1 |
3 |
10 |
||
DAD SP |
071 |
|
|
|
|
+ |
1 |
3 |
10 |
||
Десятичная коррекция |
DAA |
047 |
+ |
+ |
+ |
+ |
+ |
1 |
1 |
4 |
|
Команды логических операций |
|||||||||||
Логическое умножение |
ANA RS |
24S |
+ |
+ |
|
+ |
0 |
1 |
1 |
4 |
|
ANA M |
246 |
+ |
+ |
|
+ |
0 |
1 |
2 |
7 |
||
ANI data8 |
346 B2 |
+ |
+ |
|
+ |
0 |
2 |
2 |
7 |
||
Исключающее ИЛИ (сложение по mod 2) |
XRA RS |
25S |
+ |
+ |
|
+ |
0 |
1 |
1 |
4 |
|
XRA M |
256 |
+ |
+ |
|
+ |
0 |
1 |
2 |
7 |
||
XRI data8 |
356 B2 |
+ |
+ |
|
+ |
0 |
2 |
2 |
7 |
||
Логическое сложение |
ORA RS |
26S |
+ |
+ |
|
+ |
0 |
1 |
1 |
4 |
|
ORA M |
266 |
+ |
+ |
|
+ |
0 |
1 |
2 |
7 |
||
ORI data8 |
366 B2 |
+ |
+ |
|
+ |
0 |
2 |
2 |
7 |
||
Инверсия А |
CMA |
057 |
|
|
|
|
|
1 |
1 |
4 |
Таблица П3 (окончание)
1 |
2 |
3 |
4 |
5 |
6 |
||||||
Команды циклических сдвигов |
|||||||||||
Сдвиг влево |
RLC |
007 |
|
|
|
|
+ |
1 |
1 |
4 |
|
Сдвиг вправо |
RRC |
017 |
|
|
|
|
+ |
1 |
1 |
4 |
|
Циклический сдвиг влево через перенос |
RAL |
027 |
|
|
|
|
+ |
1 |
1 |
4 |
|
Циклический сдвиг вправо через перенос |
RAR |
037 |
|
|
|
|
+ |
1 |
1 |
4 |
|
Команды управления флагом С |
|||||||||||
Установка переноса |
STC |
067 |
|
|
|
|
+ |
1 |
1 |
4 |
|
Инверсия переноса |
CMC |
077 |
|
|
|
|
+ |
1 |
1 |
4 |