Адрес |
Код операции |
<B2> |
<B3> |
0000 |
31 |
00 |
84 |
0003 |
21 |
0A |
80 |
0006 |
AF |
||
0007 |
77 |
||
0008 |
3E |
01 |
|
000A |
2D |
31 — операция LXI SP (Загрузка указателя стека числом)
21 — операция LXI H (Загрузка регистровой пары HL числом)
AF — операция XRA A (Исключающее ИЛИ над содержимым аккумулятора)
77 — операция MOV M,A (Пересылка содержимого аккумулятора в ячейку M)
3E — операция MVI A (Пересылка числа в аккумулятор)
2D — операция DCR L (Уменьшение содержимого регистра L на 1)
Недостатки программы на машинном языке (в машинных кодах):
— команды записываются в виде числового кода, который необходимо помнить, а сама запись операции ненаглядна;
— имеются трудности в отслеживании абсолютных адресов памяти, особенно там, где большое число условных переходов;
— трудно модифицировать программу при введении пропущенных команд;
— при программировании в машинных кодах легко сделать ошибки и сложно их найти.
Достоинства программы в машинных кодах:
— программа получается достаточно короткой;
— программа является быстродействующей.
Табл.6. Список команд в машинных кодах (в шестнадцатеричной системе)
Команда |
Код операции |
Команда |
Код операции |
Команда |
Код операции |
ACI DATA |
CE |
CPE ADDR |
EC |
JPE ADDR |
EA |
ADC A |
8F |
CPI ADDR |
FE |
JPO ADDR |
E2 |
ADC B |
88 |
CPO ADDR |
E4 |
JZ ADDR |
CA |
ADC C |
89 |
CZ ADDR |
CC |
LDA ADDR |
3A |
ADC D |
8A |
DAA |
27 |
LDAX B |
0A |
ADC E |
8B |
DAD B |
09 |
LDAX D |
1A |
ADC H |
8C |
DAD D |
19 |
LHLD ADDR |
2A |
ADC L |
8D |
DAD H |
29 |
LXI B, DATA 16 |
01 |
ADC M |
8E |
DAD SP |
39 |
LXI D, DATA 16 |
11 |
ADD A |
87 |
DCR A |
3D |
LXI H, DATA 16 |
21 |
ADD B |
80 |
DCR B |
05 |
LXI SP, DATA 16 |
31 |
ADD C |
81 |
DCR C |
0D |
MOV A, A |
7F |
ADD D |
82 |
DCR D |
15 |
MOV A, B |
78 |
ADD E |
83 |
DCR E |
1D |
MOV A, C |
79 |
ADD H |
84 |
DCR H |
25 |
MOV A, D |
7A |
ADD L |
85 |
DCR L |
2D |
MOV A, E |
7B |
ADD M |
86 |
DCR M |
35 |
MOV A, H |
7C |
ADI DATA |
C6 |
DCX B |
0B |
MOV A, L |
7D |
ANA A |
A7 |
DCX D |
1B |
MOV A, M |
7E |
ANA B |
A0 |
DCX H |
2B |
MOV B, A |
47 |
ANA C |
A1 |
DCX SP |
3B |
MOV B, B |
40 |
ANA D |
A2 |
DI |
F3 |
MOV B, C |
41 |
ANA E |
A3 |
EI |
FB |
MOV B, D |
42 |
ANA H |
A4 |
HLT |
76 |
MOV B, E |
43 |
ANA L |
A5 |
IN PORT |
DB |
MOV B, H |
44 |
ANA M |
A6 |
INR A |
3C |
MOV B, L |
45 |
ANI DATA |
E6 |
INR B |
04 |
MOV B, M |
46 |
CALL ADDR |
CD |
INR C |
0C |
MOV C, A |
4F |
CC ADDR |
DC |
INR D |
14 |
MOV C, B |
48 |
CM ADDR |
FC |
INR E |
1C |
MOV C, C |
49 |
CMA |
2F |
INR H |
24 |
MOV C, D |
4A |
CMC |
3F |
INR L |
2C |
MOV C, E |
4B |
CMP A |
BF |
INR M |
34 |
MOV C, H |
4C |
CMP B |
B8 |
INX B |
03 |
MOV C, L |
4D |
CMP C |
B9 |
INX D |
13 |
MOV C, M |
4E |
CMP D |
BA |
INX H |
23 |
MOV D, A |
57 |
CMP E |
BB |
INX SP |
33 |
MOV D, B |
50 |
CMP H |
BC |
JC ADDR |
DA |
MOV D, C |
51 |
CMP L |
BD |
JM ADDR |
FA |
MOV D, D |
52 |
CMP M |
BE |
JMP ADDR |
C3 |
MOV D, E |
53 |
CNC ADDR |
D4 |
JNC ADDR |
D2 |
MOV D, H |
54 |
CNZ ADDR |
C4 |
JNZ ADDR |
C2 |
MOV D, L |
55 |
CP ADDR |
F4 |
JP ADDR |
F2 |
MOV D, M |
56 |
MOV E, A |
5F |
NOP |
00 |
RST 7 |
FF |
MOV E, B |
58 |
ORA A |
B7 |
RZ |
C8 |
MOV E, C |
59 |
ORA B |
B0 |
SBB A |
9F |
MOV E, D |
5A |
ORA C |
B1 |
SBB B |
98 |
MOV E, E |
5B |
ORA D |
B2 |
SBB C |
99 |
MOV E, H |
5C |
ORA E |
B3 |
SBB D |
9A |
MOV E, L |
5D |
ORA H |
B4 |
SBB E |
9B |
MOV E, M |
5E |
ORA L |
B5 |
SBB H |
9C |
MOV H, A |
67 |
ORA M |
B6 |
SBB L |
9D |
MOV H, B |
60 |
ORI DATA |
F6 |
SBB M |
9E |
MOV H, C |
61 |
OUT PORT |
D3 |
SBI DATA |
DE |
MOV H, D |
62 |
PCHL |
E9 |
SHLD ADDR |
22 |
MOV H, E |
63 |
POP B |
C1 |
SPHL |
F9 |
MOV H, H |
64 |
POP D |
D1 |
STA ADDR |
32 |
MOV H, L |
65 |
POP H |
E1 |
STAX B |
02 |
MOV H, M |
66 |
POP PSW |
F1 |
STAX D |
12 |
MOV L, A |
6F |
PUSH B |
C5 |
STC |
37 |
MOV L, B |
68 |
PUSH D |
D5 |
SUB A |
97 |
MOV L, C |
69 |
PUSH H |
E5 |
SUB B |
90 |
MOV L, D |
6A |
PUSH PSW |
F5 |
SUB C |
91 |
MOV L, E |
6B |
RAL |
17 |
SUB D |
92 |
MOV L, H |
6C |
RAR |
1F |
SUB E |
93 |
MOV L, L |
6D |
RC |
D8 |
SUB H |
94 |
MOV L, M |
6E |
RET |
C9 |
SUB L |
95 |
MOV M, A |
77 |
RLC |
07 |
SUB M |
96 |
MOV M, B |
70 |
RM |
F8 |
SUI DATA |
D6 |
MOV M, C |
71 |
RNC |
D0 |
XCHG |
EB |
MOV M, D |
72 |
RNZ |
C0 |
XRA A |
AF |
MOV M, E |
73 |
RP |
F0 |
XRA B |
A8 |
MOV M, H |
74 |
RPE |
E8 |
XRA C |
A9 |
MOV M, L |
75 |
RPO |
E0 |
XRA D |
AA |
MVI A, DATA |
3E |
RRC |
0F |
XRA E |
AB |
MVI B, DATA |
06 |
RST 0 |
C7 |
XRA H |
AC |
MVI C, DATA |
0E |
RST 1 |
CF |
XRA L |
AD |
MVI D, DATA |
16 |
RST 2 |
D7 |
XRA M |
AE |
MVI E, DATA |
1E |
RST 3 |
DF |
XRI DATA |
EE |
MVI H, DATA |
26 |
RST 4 |
E7 |
XTHL |
E3 |
MVI L, DATA |
2E |
RST 5 |
EF |
||
MVI M, DATA |
36 |
RST 6 |
F7 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.