§ Таблица базовых инструкции

Первая строка - инструкция для Z80, вторая строка — для 8080. Некоторых инструкции может не быть.
00NOP
NOP
Нет операции
01LD BC,**
LXI B,**
Записать младший байт в C, старший в B
02LD (BC),A
STAX B
Записать регистр А в память по адресу BC
03INC BC
INX B
Увеличение BC на 1
04INC B
INR B
Увеличение B на 1
05DEC B
DCR B
Уменьшение B на 1
06LD B,*
MVI B,*
Записать байт в B
07RLCA
RLC
Вращение регистра А на 1 бит влево
08EX AF,AF'
Обменять AF и AF'
09ADD HL,BC
DAD B
Сложить HL с BC и записать в HL
0ALD A,(BC)
LDAX B
Загрузить в регистр А из памяти по адресу BC
0BDEC BC
DCX B
Уменьшение BC на 1
0CINC C
INR C
Увеличение C на 1
0DDEC C
DCR C
Увеличение C на 1
0ELD C,*
MVI C,*
Записать байт в C
0FRRCA
RRC
Вращение регистра А на 1 бит вправо
10DJNZ *
Уменьшить B на 1 и если B не равен 0, переход по относительному адресу
11LD DE,**
LXI D,**
Записать младший байт в E, старший в D
12LD (DE),A
STAX D
Записать регистр А в память по адресу DE
13INC DE
INX D
Увеличение DE на 1
14INC D
INR D
Увеличение D на 1
15DEC D
DCR D
Уменьшение D на 1
16LD D,*
MVI D,*
Записать байт в D
17RLA
RAL
Сдвиг регистра А налево с заемом нижнего бита из флага переноса
18JR *
Безусловный переход по относительному адресу
19ADD HL,DE
DAD D
Сложить HL с DE и записать в HL
1ALD A,(DE)
LDAX D
Загрузить в регистр А из памяти по адресу DE
1BDEC DE
DCX D
Уменьшение DE на 1
1CINC E
INR E
Увеличение E на 1
1DDEC E
DCR E
Уменьшение E на 1
1ELD E,*
MVI E,*
Записать байт в E
1FRRA
RAR
Сдвиг регистра А направо с заемом старшего бита из флага переноса
20JR NZ,*
Условный переход, если флаг Z равен 0
21LD HL,**
LXI H,**
Записать младший байт в L, старший в H
22LD (**),HL
SHLD **
Записать L по адресу ** в младший байт, H в старший байт
23INC HL
INX H
Увеличение HL на 1
24INC H
INR H
Увеличение H на 1
25DEC H
DCR H
Уменьшение H на 1
26LD H,*
MVI H,*
Записать байт в H
27DAA
DAA
Арифметическая коррекция после сложения
28JR Z,*
Условный переход, если флаг Z равен 1
29ADD HL,HL
DAD H
Сложить HL с HL и записать в HL
2ALD HL,(**)
LHLD **
Загрузить L и H из младшего и старшего байта по адресу **
2BDEC HL
DCX H
Уменьшение HL на 1
2CINC L
INR L
Увеличение L на 1
2DDEC L
DCR L
Уменьшение L на 1
2ELD L,*
MVI L,*
Записать байт в L
2FCPL
CMA
Выполнить инвертирование всех битов в регистре А
30JR NC,*
Условный переход, если флаг C равен 0
31LD SP,**
LXI SP,**
Загрузить слово в регистр SP
32LD (**),A
STA **
Записать регистр А по адресу **
33INC SP
INX SP
Увеличение SP на 1
34INC (HL)
INR M
Увеличение значения в памяти по адресу HL
35DEC (HL)
DCR M
Уменьшение значения в памяти по адресу HL
36LD (HL),*
MVI M,*
Загрузка байта в памяти по адресу HL
37SCF
STC
Установить флаг C=1
38JR C,*
Условный переход, если флаг C равен 1
39ADD HL,SP
DAD SP
Сложить HL с SP и записать в HL
3ALD A,(**)
LDA **
Загрузить значение из памяти по адресу ** в регистр А
3BDEC SP
DCX SP
Уменьшить SP на 1
3CINC A
INR A
Увеличение A на 1
3DDEC A
DCR A
Уменьшение A на 1
3ELD A,*
MVI A,*
Записать байт в A
3FCCF
CMC
Инвертировать флаг C
40LD B,B
MOV B,B
Скопировать B → B
41LD B,C
MOV B,C
Скопировать C → B
42LD B,D
MOV B,D
Скопировать D → B
43LD B,E
MOV B,E
Скопировать E → B
44LD B,H
MOV B,H
Скопировать H → B
45LD B,L
MOV B,L
Скопировать L → B
46LD B,(HL)
MOV B,M
Скопировать значение в памяти по адресу HL → B
47LD B,A
MOV B,A
Скопировать A → B
48LD C,B
MOV C,B
Скопировать B → C
49LD C,C
MOV C,C
Скопировать C → C
4ALD C,D
MOV C,D
Скопировать D → C
4BLD C,E
MOV C,E
Скопировать E → C
4CLD C,H
MOV C,H
Скопировать H → C
4DLD C,L
MOV C,L
Скопировать L → C
4ELD C,(HL)
MOV C,M
Скопировать значение в памяти по адресу HL → C
4FLD C,A
MOV C,A
Скопировать A → C
50LD D,B
MOV D,B
Скопировать B → D
51LD D,C
MOV D,C
Скопировать C → D
52LD D,D
MOV D,D
Скопировать D → D
53LD D,E
MOV D,E
Скопировать E → D
54LD D,H
MOV D,H
Скопировать H → D
55LD D,L
MOV D,L
Скопировать L → D
56LD D,(HL)
MOV D,M
Скопировать значение в памяти по адресу HL → D
57LD D,A
MOV D,A
Скопировать A → D
58LD E,B
MOV E,B
Скопировать B → E
59LD E,C
MOV E,C
Скопировать C → E
5ALD E,D
MOV E,D
Скопировать D → E
5BLD E,E
MOV E,E
Скопировать E → E
5CLD E,H
MOV E,H
Скопировать H → E
5DLD E,L
MOV E,L
Скопировать L → E
5ELD E,(HL)
MOV E,M
Скопировать значение в памяти по адресу HL → E
5FLD E,A
MOV E,A
Скопировать A → E
60LD H,B
MOV H,B
Скопировать B → H
61LD H,C
MOV H,C
Скопировать C → H
62LD H,D
MOV H,D
Скопировать D → H
63LD H,E
MOV H,E
Скопировать E → H
64LD H,H
MOV H,H
Скопировать H → H
65LD H,L
MOV H,L
Скопировать L → H
66LD H,(HL)
MOV H,M
Скопировать значение в памяти по адресу HL → H
67LD H,A
MOV H,A
Скопировать A → H
68LD L,B
MOV L,B
Скопировать B → L
69LD L,C
MOV L,C
Скопировать C → L
6ALD L,D
MOV L,D
Скопировать D → L
6BLD L,E
MOV L,E
Скопировать E → L
6CLD L,H
MOV L,H
Скопировать H → L
6DLD L,L
MOV L,L
Скопировать L → L
6ELD L,(HL)
MOV L,M
Скопировать значение в памяти по адресу HL → L
6FLD L,A
MOV L,A
Скопировать A в L
70LD (HL),B
MOV M,B
Скопировать B → память по адресу HL
71LD (HL),C
MOV M,C
Скопировать C → память по адресу HL
72LD (HL),D
MOV M,D
Скопировать D → память по адресу HL
73LD (HL),E
MOV M,E
Скопировать E → память по адресу HL
74LD (HL),H
MOV M,H
Скопировать H → память по адресу HL
75LD (HL),L
MOV M,L
Скопировать L → память по адресу HL
76HALT
HALT
Остановить процессор
77LD (HL),A
MOV M,A
Скопировать A → память по адресу HL
78LD A,B
MOV A,B
Скопировать B → A
79LD A,C
MOV A,C
Скопировать C → A
7ALD A,D
MOV A,D
Скопировать D → A
7BLD A,E
MOV A,E
Скопировать E → A
7CLD A,H
MOV A,H
Скопировать H → A
7DLD A,L
MOV A,L
Скопировать L → A
7ELD A,(HL)
MOV A,M
Скопировать значение в памяти по адресу HL → A
7FLD A,A
MOV A,A
Скопировать A → A
80ADD B
ADD B
Сложить A с B
81ADD C
ADD C
Сложить A с C
82ADD D
ADD D
Сложить A с D
83ADD E
ADD E
Сложить A с E
84ADD H
ADD H
Сложить A с H
85ADD L
ADD L
Сложить A с L
86ADD (HL)
ADD M
Сложить A со значением из памяти по адресу HL
87ADD A
ADD A
Сложить A с A
88ADC B
ADC B
Сложить с переносом A c B
89ADC C
ADC C
Сложить с переносом A c C
8AADC D
ADC D
Сложить с переносом A c D
8BADC E
ADC E
Сложить с переносом A c E
8CADC H
ADC H
Сложить с переносом A c H
8DADC L
ADC L
Сложить с переносом A c L
8EADC (HL)
ADC M
Сложить с переносом A со значением из памяти по адресу HL
8FADC A
ADC A
Сложить с переносом A c A
90SUB B
SUB B
Вычесть из А значение B
91SUB C
SUB C
Вычесть из А значение C
92SUB D
SUB D
Вычесть из А значение D
93SUB E
SUB E
Вычесть из А значение E
94SUB H
SUB H
Вычесть из А значение H
95SUB L
SUB L
Вычесть из А значение L
96SUB (HL)
SUB M
Вычесть из А значение из памяти по адресу HL
97SUB A
SUB A
Вычесть из А значение A
98SBC B
SBB B
Вычесть с переносом, из А значение B
99SBC C
SBB C
Вычесть с переносом, из А значение C
9ASBC D
SBB D
Вычесть с переносом, из А значение D
9BSBC E
SBB E
Вычесть с переносом, из А значение E
9CSBC H
SBB H
Вычесть с переносом, из А значение H
9DSBC L
SBB L
Вычесть с переносом, из А значение L
9ESBC (HL)
SBB M
Вычесть с переносом, из А значение из памяти по адресу HL
9FSBC A
SBB A
Вычесть с переносом, из А значение A
A0AND B
ANA B
Логическое И над A и B
A1AND C
ANA C
Логическое И над A и C
A2AND D
ANA D
Логическое И над A и D
A3AND E
ANA E
Логическое И над A и E
A4AND H
ANA H
Логическое И над A и H
A5AND L
ANA L
Логическое И над A и L
A6AND (HL)
ANA M
Логическое И над A и значением из памяти по адресу HL
A7AND A
ANA A
Логическое И над A и A
A8XOR B
XRA B
Исключающее ИЛИ над А и B
A9XOR C
XRA C
Исключающее ИЛИ над А и C
AAXOR D
XRA D
Исключающее ИЛИ над А и D
ABXOR E
XRA E
Исключающее ИЛИ над А и E
ACXOR H
XRA H
Исключающее ИЛИ над А и H
ADXOR L
XRA L
Исключающее ИЛИ над А и L
AEXOR (HL)
XRA M
Исключающее ИЛИ над А и значением из памяти по адресу HL
AFXOR A
XRA A
Исключающее ИЛИ над А и A
B0OR B
ORA B
Логическое ИЛИ над А и B
B1OR C
ORA C
Логическое ИЛИ над А и C
B2OR D
ORA D
Логическое ИЛИ над А и D
B3OR E
ORA E
Логическое ИЛИ над А и E
B4OR H
ORA H
Логическое ИЛИ над А и H
B5OR L
ORA L
Логическое ИЛИ над А и L
B6OR (HL)
ORA M
Логическое ИЛИ над А и значением из памяти по адресу HL
B7OR A
ORA A
Логическое ИЛИ над А и A
B8CP B
CMP B
Сравнить А и B
B9CP C
CMP C
Сравнить А и C
BACP D
CMP D
Сравнить А и D
BBCP E
CMP E
Сравнить А и E
BCCP H
CMP H
Сравнить А и H
BDCP L
CMP L
Сравнить А и L
BECP (HL)
CMP M
Сравнить А и значение из памяти по адресу HL
BFCP A
CMP A
Сравнить А и A
C0RET NZ
RNZ
Возврат из процедуры, если Z=0
C1POP BC
POP B
Извлечь из стека в регистр BC
C2JP NZ,**
JNZ **
Переход, если Z=0
C3JP **
JMP **
Переход по абсолютному адресу
C4CALL NZ,**
CNZ **
Вызов процедуры, если Z=0
C5PUSH BC
PUSH B
Запись в стек значения BC
C6ADD A,*
ADI *
Сложение A с непосредственным операндом
C7RST #00
RST 0
Вызов прерывания 0
C8RET Z
RZ
Возврат из процедуры, если Z=1
C9RET
RET
Возврат из процедуры
CAJP Z,**
JZ **
Переход, если Z=1
CB(BITS)
Префикс для битовых операции (Z80)
CCCALL Z,**
CZ **
Вызов процедуры, если Z=1
CDCALL **
CALL **
Вызов процедуры
CEADC A,*
ACI *
Сложение A c учетом переноса с непосредственным операндом
CFRST #08
RST 1
Вызов прерывания 1
D0RET NC
RNC
Возврат из процедуры, если C=0
D1POP DE
POP D
Извлечь из стека в регистр DE
D2JP NC,**
JNC **
Переход, если C=0
D3OUT (*),A
OUT N
Записать регистр А в порт *
D4CALL NC,**
CNC **
Вызов процедуры, если C=0
D5PUSH DE
PUSH D
Запись в стек значения DE
D6SUB A,*
SUI *
Вычитание из A с непосредственным операндом
D7RST #10
RST 2
Вызов прерывания 2
D8RET C
RC
Возврат из процедуры, если C=1
D9EXX
Обменаять BC,DE,HL с их копиями в BC',DE',HL' (Z80)
DAJP C,**
JC **
Переход, если C=1
DBIN A,(*)
IN N
Прочитать из порта * в регистр А
DCCALL C,**
CC **
Вызов процедуры, если C=1
DD(IX)
Префикс IX
DESBC A,*
SBI *
Вычитание из A с учетом переноса с непосредственным операндом
DFRST #18
RST 3
Вызов прерывания 3
E0RET PO
RPO
Возврат из процедуры, если P=0
E1POP HL
POP H
Извлечь из стека в регистр HL
E2JP PO,**
JPO **
Переход, если P=0
E3EX (SP),HL
XTHL
Обменять значение в вершине стека с регистром HL
E4CALL PO,**
CPO **
Вызов процедуры, если P=0
E5PUSH HL
PUSH H
Запись в стек значения HL
E6AND A,*
ANI *
Логическое И над А и непосредственным операндом
E7RST #20
RST 4
Вызов прерывания 4
E8RET PE
RPE
Возврат из процедуры, если P=1
E9JP (HL)
PCHL
Косвенный переход, PC = HL
EAJP PE,**
JPE **
Переход, если P=1
EBEX DE,HL
XCHG
Обменять DE и HL
ECCALL PE,**
CPE **
Вызов процедуры, если P=1
ED(EXT)
Префикс расширенной команды (Z80)
EEXOR A,*
XRI *
Исключающее ИЛИ над А и непосредственным операндом
EFRST #28
RST 5
Вызов прерывания 5
F0RET P
RP
Возврат из процедуры, если S=0
F1POP AF
POP PSW
Извлечь из стека в регистр AF
F2JP P,**
JP **
Переход, если S=0
F3DI
DI
Запрет прерываний
F4CALL P, **
CP **
Вызов процедуры, если S=0
F5PUSH AF
PUSH PSW
Запись в стек значения AF
F6OR A,*
ORI *
Логическое ИЛИ над А и непосредственным операндом
F7RST #30
RST 6
Вызов прерывания 6
F8RET M
RM
Возврат из процедуры, если S=1
F9LD SP,HL
SPHL
Загрузить HL в регистр SP
FAJP M,**
JM **
Переход, если S=1
FBEI
EI
Разрешить прерывания
FCCALL M,**
CM **
Вызов процедуры, если S=1
FD(IY)
Префикс IY
FECMP A,*
CPI *
Сравнить А с непосредственным операндом
FFRST #38
RST 7
Вызов прерывания 7

29 окт, 2022
© 2007-2022 Слабая мышь ползла