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

Первая строка - инструкция для Z80, вторая строка — для 8080. Некоторых инструкции может не быть.
IDZ80i8080Краткое описание
00NOP NOP Нет операции
01LD BC,**LXI B,**Записать младший байт в C, старший в B
02LD (BC),ASTAX BЗаписать регистр А в память по адресу BC
03INC BCINX BУвеличение BC на 1
04INC BINR BУвеличение B на 1
05DEC BDCR BУменьшение B на 1
06LD B,*MVI B,*Записать байт в B
07RLCA RLC Вращение регистра А на 1 бит влево
08EX AF,AF' Обменять AF и AF'
09ADD HL,BCDAD BСложить HL с BC и записать в HL
0ALD A,(BC)LDAX BЗагрузить в регистр А из памяти по адресу BC
0BDEC BCDCX BУменьшение BC на 1
0CINC CINR CУвеличение C на 1
0DDEC CDCR CУвеличение C на 1
0ELD C,*MVI C,*Записать байт в C
0FRRCA RRC Вращение регистра А на 1 бит вправо
10DJNZ * Уменьшить B на 1 и если B не равен 0, переход по относительному адресу
11LD DE,**LXI D,**Записать младший байт в E, старший в D
12LD (DE),ASTAX DЗаписать регистр А в память по адресу DE
13INC DEINX DУвеличение DE на 1
14INC DINR DУвеличение D на 1
15DEC DDCR DУменьшение D на 1
16LD D,*MVI D,*Записать байт в D
17RLA RAL Сдвиг регистра А налево с заемом нижнего бита из флага переноса
18JR * Безусловный переход по относительному адресу
19ADD HL,DEDAD DСложить HL с DE и записать в HL
1ALD A,(DE)LDAX DЗагрузить в регистр А из памяти по адресу DE
1BDEC DEDCX DУменьшение DE на 1
1CINC EINR EУвеличение E на 1
1DDEC EDCR EУменьшение E на 1
1ELD E,*MVI E,*Записать байт в E
1FRRA RAR Сдвиг регистра А направо с заемом старшего бита из флага переноса
20JR NZ,* Условный переход, если флаг Z равен 0
21LD HL,**LXI H,**Записать младший байт в L, старший в H
22LD (**),HLSHLD **Записать L по адресу ** в младший байт, H в старший байт
23INC HLINX HУвеличение HL на 1
24INC HINR HУвеличение H на 1
25DEC HDCR HУменьшение H на 1
26LD H,*MVI H,*Записать байт в H
27DAA DAA Арифметическая коррекция после сложения
28JR Z,* Условный переход, если флаг Z равен 1
29ADD HL,HLDAD HСложить HL с HL и записать в HL
2ALD HL,(**)LHLD **Загрузить L и H из младшего и старшего байта по адресу **
2BDEC HLDCX HУменьшение HL на 1
2CINC LINR LУвеличение L на 1
2DDEC LDCR LУменьшение L на 1
2ELD L,*MVI L,*Записать байт в L
2FCPL CMA Выполнить инвертирование всех битов в регистре А
30JR NC,* Условный переход, если флаг C равен 0
31LD SP,**LXI SP,**Загрузить слово в регистр SP
32LD (**),ASTA **Записать регистр А по адресу **
33INC SPINX 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,SPDAD SPСложить HL с SP и записать в HL
3ALD A,(**)LDA **Загрузить значение из памяти по адресу ** в регистр А
3BDEC SPDCX SPУменьшить SP на 1
3CINC AINR AУвеличение A на 1
3DDEC ADCR AУменьшение A на 1
3ELD A,*MVI A,*Записать байт в A
3FCCF CMC Инвертировать флаг C
40LD B,BMOV B,BСкопировать B → B
41LD B,CMOV B,CСкопировать C → B
42LD B,DMOV B,DСкопировать D → B
43LD B,EMOV B,EСкопировать E → B
44LD B,HMOV B,HСкопировать H → B
45LD B,LMOV B,LСкопировать L → B
46LD B,(HL)MOV B,MСкопировать значение в памяти по адресу HL → B
47LD B,AMOV B,AСкопировать A → B
48LD C,BMOV C,BСкопировать B → C
49LD C,CMOV C,CСкопировать C → C
4ALD C,DMOV C,DСкопировать D → C
4BLD C,EMOV C,EСкопировать E → C
4CLD C,HMOV C,HСкопировать H → C
4DLD C,LMOV C,LСкопировать L → C
4ELD C,(HL)MOV C,MСкопировать значение в памяти по адресу HL → C
4FLD C,AMOV C,AСкопировать A → C
50LD D,BMOV D,BСкопировать B → D
51LD D,CMOV D,CСкопировать C → D
52LD D,DMOV D,DСкопировать D → D
53LD D,EMOV D,EСкопировать E → D
54LD D,HMOV D,HСкопировать H → D
55LD D,LMOV D,LСкопировать L → D
56LD D,(HL)MOV D,MСкопировать значение в памяти по адресу HL → D
57LD D,AMOV D,AСкопировать A → D
58LD E,BMOV E,BСкопировать B → E
59LD E,CMOV E,CСкопировать C → E
5ALD E,DMOV E,DСкопировать D → E
5BLD E,EMOV E,EСкопировать E → E
5CLD E,HMOV E,HСкопировать H → E
5DLD E,LMOV E,LСкопировать L → E
5ELD E,(HL)MOV E,MСкопировать значение в памяти по адресу HL → E
5FLD E,AMOV E,AСкопировать A → E
60LD H,BMOV H,BСкопировать B → H
61LD H,CMOV H,CСкопировать C → H
62LD H,DMOV H,DСкопировать D → H
63LD H,EMOV H,EСкопировать E → H
64LD H,HMOV H,HСкопировать H → H
65LD H,LMOV H,LСкопировать L → H
66LD H,(HL)MOV H,MСкопировать значение в памяти по адресу HL → H
67LD H,AMOV H,AСкопировать A → H
68LD L,BMOV L,BСкопировать B → L
69LD L,CMOV L,CСкопировать C → L
6ALD L,DMOV L,DСкопировать D → L
6BLD L,EMOV L,EСкопировать E → L
6CLD L,HMOV L,HСкопировать H → L
6DLD L,LMOV L,LСкопировать L → L
6ELD L,(HL)MOV L,MСкопировать значение в памяти по адресу HL → L
6FLD L,AMOV L,AСкопировать A в L
70LD (HL),BMOV M,BСкопировать B → память по адресу HL
71LD (HL),CMOV M,CСкопировать C → память по адресу HL
72LD (HL),DMOV M,DСкопировать D → память по адресу HL
73LD (HL),EMOV M,EСкопировать E → память по адресу HL
74LD (HL),HMOV M,HСкопировать H → память по адресу HL
75LD (HL),LMOV M,LСкопировать L → память по адресу HL
76HALT HALT Остановить процессор
77LD (HL),AMOV M,AСкопировать A → память по адресу HL
78LD A,BMOV A,BСкопировать B → A
79LD A,CMOV A,CСкопировать C → A
7ALD A,DMOV A,DСкопировать D → A
7BLD A,EMOV A,EСкопировать E → A
7CLD A,HMOV A,HСкопировать H → A
7DLD A,LMOV A,LСкопировать L → A
7ELD A,(HL)MOV A,MСкопировать значение в памяти по адресу HL → A
7FLD A,AMOV A,AСкопировать A → A
80ADD BADD BСложить A с B
81ADD CADD CСложить A с C
82ADD DADD DСложить A с D
83ADD EADD EСложить A с E
84ADD HADD HСложить A с H
85ADD LADD LСложить A с L
86ADD (HL)ADD MСложить A со значением из памяти по адресу HL
87ADD AADD AСложить A с A
88ADC BADC BСложить с переносом A c B
89ADC CADC CСложить с переносом A c C
8AADC DADC DСложить с переносом A c D
8BADC EADC EСложить с переносом A c E
8CADC HADC HСложить с переносом A c H
8DADC LADC LСложить с переносом A c L
8EADC (HL)ADC MСложить с переносом A со значением из памяти по адресу HL
8FADC AADC AСложить с переносом A c A
90SUB BSUB BВычесть из А значение B
91SUB CSUB CВычесть из А значение C
92SUB DSUB DВычесть из А значение D
93SUB ESUB EВычесть из А значение E
94SUB HSUB HВычесть из А значение H
95SUB LSUB LВычесть из А значение L
96SUB (HL)SUB MВычесть из А значение из памяти по адресу HL
97SUB ASUB AВычесть из А значение A
98SBC BSBB BВычесть с переносом, из А значение B
99SBC CSBB CВычесть с переносом, из А значение C
9ASBC DSBB DВычесть с переносом, из А значение D
9BSBC ESBB EВычесть с переносом, из А значение E
9CSBC HSBB HВычесть с переносом, из А значение H
9DSBC LSBB LВычесть с переносом, из А значение L
9ESBC (HL)SBB MВычесть с переносом, из А значение из памяти по адресу HL
9FSBC ASBB AВычесть с переносом, из А значение A
A0AND BANA BЛогическое И над A и B
A1AND CANA CЛогическое И над A и C
A2AND DANA DЛогическое И над A и D
A3AND EANA EЛогическое И над A и E
A4AND HANA HЛогическое И над A и H
A5AND LANA LЛогическое И над A и L
A6AND (HL)ANA MЛогическое И над A и значением из памяти по адресу HL
A7AND AANA AЛогическое И над A и A
A8XOR BXRA BИсключающее ИЛИ над А и B
A9XOR CXRA CИсключающее ИЛИ над А и C
AAXOR DXRA DИсключающее ИЛИ над А и D
ABXOR EXRA EИсключающее ИЛИ над А и E
ACXOR HXRA HИсключающее ИЛИ над А и H
ADXOR LXRA LИсключающее ИЛИ над А и L
AEXOR (HL)XRA MИсключающее ИЛИ над А и значением из памяти по адресу HL
AFXOR AXRA AИсключающее ИЛИ над А и A
B0OR BORA BЛогическое ИЛИ над А и B
B1OR CORA CЛогическое ИЛИ над А и C
B2OR DORA DЛогическое ИЛИ над А и D
B3OR EORA EЛогическое ИЛИ над А и E
B4OR HORA HЛогическое ИЛИ над А и H
B5OR LORA LЛогическое ИЛИ над А и L
B6OR (HL)ORA MЛогическое ИЛИ над А и значением из памяти по адресу HL
B7OR AORA AЛогическое ИЛИ над А и A
B8CP BCMP BСравнить А и B
B9CP CCMP CСравнить А и C
BACP DCMP DСравнить А и D
BBCP ECMP EСравнить А и E
BCCP HCMP HСравнить А и H
BDCP LCMP LСравнить А и L
BECP (HL)CMP MСравнить А и значение из памяти по адресу HL
BFCP ACMP AСравнить А и A
C0RET NZRNZ Возврат из процедуры, если Z=0
C1POP BCPOP BИзвлечь из стека в регистр BC
C2JP NZ,**JNZ **Переход, если Z=0
C3JP **JMP **Переход по абсолютному адресу
C4CALL NZ,**CNZ **Вызов процедуры, если Z=0
C5PUSH BCPUSH BЗапись в стек значения BC
C6ADD A,*ADI *Сложение A с непосредственным операндом
C7RST #00RST 0Вызов прерывания 0
C8RET ZRZ Возврат из процедуры, если 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 #08RST 1Вызов прерывания 1
D0RET NCRNC Возврат из процедуры, если C=0
D1POP DEPOP DИзвлечь из стека в регистр DE
D2JP NC,**JNC **Переход, если C=0
D3OUT (*),AOUT NЗаписать регистр А в порт *
D4CALL NC,**CNC **Вызов процедуры, если C=0
D5PUSH DEPUSH DЗапись в стек значения DE
D6SUB A,*SUI *Вычитание из A с непосредственным операндом
D7RST #10RST 2Вызов прерывания 2
D8RET CRC Возврат из процедуры, если 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 #18RST 3Вызов прерывания 3
E0RET PORPO Возврат из процедуры, если P=0
E1POP HLPOP HИзвлечь из стека в регистр HL
E2JP PO,**JPO **Переход, если P=0
E3EX (SP),HLXTHL Обменять значение в вершине стека с регистром HL
E4CALL PO,**CPO **Вызов процедуры, если P=0
E5PUSH HLPUSH HЗапись в стек значения HL
E6AND A,*ANI *Логическое И над А и непосредственным операндом
E7RST #20RST 4Вызов прерывания 4
E8RET PERPE Возврат из процедуры, если P=1
E9JP (HL)PCHL Косвенный переход, PC = HL
EAJP PE,**JPE **Переход, если P=1
EBEX DE,HLXCHG Обменять DE и HL
ECCALL PE,**CPE **Вызов процедуры, если P=1
ED(EXT) Префикс расширенной команды (Z80)
EEXOR A,*XRI *Исключающее ИЛИ над А и непосредственным операндом
EFRST #28RST 5Вызов прерывания 5
F0RET PRP Возврат из процедуры, если S=0
F1POP AFPOP PSWИзвлечь из стека в регистр AF
F2JP P,**JP **Переход, если S=0
F3DI DI Запрет прерываний
F4CALL P, **CP **Вызов процедуры, если S=0
F5PUSH AFPUSH PSWЗапись в стек значения AF
F6OR A,*ORI *Логическое ИЛИ над А и непосредственным операндом
F7RST #30RST 6Вызов прерывания 6
F8RET MRM Возврат из процедуры, если S=1
F9LD SP,HLSPHL Загрузить HL в регистр SP
FAJP M,**JM **Переход, если S=1
FBEI EI Разрешить прерывания
FCCALL M,**CM **Вызов процедуры, если S=1
FD(IY) Префикс IY
FECMP A,*CPI *Сравнить А с непосредственным операндом
FFRST #38RST 7Вызов прерывания 7