|
Процедуры - написание собственных подпрограмм обработки ошибок бейсик-интерпретатора.
|
Написание собственных подпрограмм обработки ошибок бейсик-интерпретатора
Процедура выхода по ошибке расположена в ПЗУ с адреса 8 и вызывается следующим образом:
RST 8
DEFB <код сообщения>
При выполнении процедуры указанный код записывается в перемен- ную ERR NR (23610), затем с помощью системной переменной HkR_SP (23613/1Ж) восстанавливается стек и процессор переходит к выполнению процедуры обработки ошибок. Изменив адрес, хранящийся в переменной ERR_SP, можно подключить собственные подпрограммы обработки ошибок.
Предположим, Вы поместили свою процедуру обработки ошибок с адреса 40000 (пусть, к примеру, она генерирует звуковой сигнал, после чего обработка ошибок продолжается обычным образом). Для подключения этой процедуры можно воспользоваться следующей программой: LD HL,(23613) LD ВС,40000 LD E,(HL) LD (HL),C INC HL LD D,(HL) LD (HL),B LD (ERR_RET),DE RET
ERR.RET DEFW 0
ORG 40000 LD HL,1646 LD DE.261 CALL 949 LD HL,(ERR_RET) JP (HL)
После выполнения этой программы при возникновении любых оши- бок будет выполняться процедура, расположенная по адресу 40000. Локаль- ная переменная ERR_RET используется для сохранения предыдущего адреса возврата по ошибке.
ТАБЛИЦА СИМВОЛОВ
д |
Ш |
Символ |
Мнемоника микропроцессора Z80 |
ZX Spectrum |
без префикса |
с префиксом #CB |
с префиксом # ED |
0 |
00 |
|
|
NOP |
RLC В |
|
i |
01 |
|
|
LD BC,nn |
RLC С |
|
2 |
02 |
|
|
LD (ВС),A |
RLC D |
|
3 |
03 |
|
|
INC ВС |
RLC E |
|
4 |
04 |
|
|
INC В |
RLC H |
|
5 |
05 |
|
|
DEC В |
RLC L |
|
6 |
06 |
|
|
LD B,n |
RLC (HL) |
|
7 |
07 |
|
|
RLCA |
RLCA |
|
8 |
08 |
|
|
EX AF.AF' |
RRCB |
|
9 |
09 |
|
|
ADD HL.BC |
RRCC |
|
10 |
OA |
|
|
LD А,(ВС) |
RRCD |
|
11 |
OB |
|
|
DEC ВС |
RRCE |
|
12 |
ОС |
|
|
INC С |
RRC H |
|
13 |
OD |
|
cm. |
DEC С |
RRC L |
|
14 |
OE |
|
к «Контрольные
кеды
ZX Spectrum» |
LDC.n |
RRC (HL) |
|
IS |
OF |
|
RRCA |
RRCA |
|
16 |
10 |
|
|
DJNZ $+e |
RLB |
|
17 |
11 |
|
|
LD DE.nn |
RLC |
|
18 |
12 |
|
|
LD (DE),A |
RLD |
|
19 |
13 |
|
|
INC DE |
RLE |
|
20 |
14 |
|
|
INC D |
RLH |
|
21 |
15 |
|
|
DEC D |
RLL |
|
22 |
16 |
|
|
LD D,n |
RL (HL) |
|
23 |
17 |
|
|
RLA |
RLA |
|
24 |
18 |
|
|
JR $+e |
RRB |
|
25 |
19 |
|
|
ADD HL,DE |
RRC |
|
26 |
1A |
|
|
LD A,(DE) |
RR D |
|
27 |
IB |
|
|
DEC DE |
RR E |
|
28 |
1С |
|
|
INCE |
RR H |
|
29 |
ID |
|
|
DECE |
RR L |
|
30 |
IE |
|
|
LD E,n |
RR (HL) |
|
31 |
IF |
/ |
|
RRA |
RRA |
|
32 |
20 |
space |
JR NZ($+e |
SLAB |
|
33 |
21 |
I |
LD HL,nn |
SLA С |
|
34 |
22 |
и |
LD (nn),HL |
SLA D |
|
35 |
23 |
# |
INC HL |
SLA E |
|
36 |
24 |
$ |
INCH |
SLA H |
|
37 |
25 |
% |
DEC H |
SLA L |
|
38 |
26 |
& |
LD Hfn |
SLA (HL) |
|
д
39 |
LLJ 27 |
Символ ZX Spectrum
» |
Мнемоника микропроцессора Z80 без префикса с префиксом #СВ с префиксом #ED
DAA SLA А |
40 |
28 |
( |
JR Zf$+e |
SRAB |
|
41 |
29 |
) |
ADD HL,HL |
SRA С |
|
42 |
2А |
* |
LD HLf(nn) |
SRA D |
|
43 |
2В |
+ |
DEC HL |
SRA E |
|
44 |
2С |
1 |
INC L |
SRA H |
|
45 |
2D |
- |
DEC L |
SRA L |
|
46 |
2Е |
. |
LDL,n |
SRA (HL) |
|
47 |
2F |
/ |
CPL |
SRA A |
|
48 |
f30 |
0 |
JR NC,$+e |
[SLI BJ |
|
49 |
31 |
1 |
LD SP.nn |
[SU C] |
|
50 |
32 |
2 |
LD (nn)f A |
[SU D] |
|
51 |
33 |
3 |
INC SP |
[SUE] |
|
52 |
34 |
4 |
INC (HL) |
[SLI H] |
|
53 |
35 |
5 |
DEC (HL) |
[SUL] |
|
54 |
36 |
6 |
LD (HL)fn |
[SU (HL)] |
|
£5 |
37 |
7 |
SCF |
[SU A] |
|
56 |
38 |
8 |
JR Cf$+e |
SRLB |
|
57 |
39 |
9 |
ADD HLfSP |
SRLC |
|
58 |
ЗА |
: |
LD Af(nn) |
SRLD |
|
59 |
ЗВ |
f |
DEC SP |
SRLE |
|
60 |
ЗС |
< |
INC A |
SRLH |
|
61 |
3D |
as |
DEC A |
SRLL |
|
62 |
ЗЕ |
> |
LD A,n |
SRL (HL) |
|
63 |
3F |
? |
CCF |
SRL A |
|
64 |
40 |
@ |
LD B,B |
BIT 0,B |
IN Bt(C) |
65 |
41 |
А |
LDB.C |
BIT 0,C |
OUT (C),B |
66 |
42 |
в |
LD BfD |
BIT 0«D |
SBC HL.BC |
67 |
43 |
С |
LD B,E |
BIT 0,E |
LD (nn)fBC |
68 |
44 |
D |
LDB.H |
BITO.H |
NEG |
69 |
45 |
Е |
LDB.L |
BIT 0,L |
RETN |
70 |
46 |
F |
LD B,(HL) |
BIT 0,(HL) |
IMO |
71 |
47 |
G |
LD B,A |
BIT 0f A |
LD l,A |
72 |
48 |
Н |
LD CfB |
BIT 1fB |
IN C,(C) |
73 |
49 |
1 |
LD CfC |
BIT 1.C |
OUT (C)fC |
74 |
4А |
J |
LDC,D |
BIT 1,D |
ADC HL,BC |
75 |
4B |
К |
LDC.E |
BIT 1fE |
LD BCt(nn) |
76 |
4С |
L |
LD CfH |
BIT 1fH |
|
77 |
4D |
М |
LD CfL |
BIT 1fL |
RETI |
78 |
4Е |
N |
LD C,(HL) |
BIT 1 ,(HL) |
|
79 |
4F |
О |
LD C,A |
BIT 1fA |
LDR,A |
д |
Ш |
Символ ZX Spectrum |
Мнемоника микропроцессора Z80 |
без префикса |
с префиксом #CB |
с префиксом #Ш |
80 |
50 |
Р |
LD D,B |
BIT 2fB |
IN D,(C) |
81 |
51 |
О |
LDD.C |
BIT 2fC |
OUT (C)fD |
82 |
52 |
R |
LD D,D |
BIT2.D |
SBCHL.DE |
83 |
53 |
S |
LD D,E |
BIT 2,E |
LD (nn).DE |
84 |
54 |
т |
LD D,H |
BIT2.H |
|
85 |
55 |
и |
LD D.L |
BIT2.L |
|
86 |
56 |
V |
LD D.(HL) |
BIT 2f(HL) |
IM 1 |
87 |
57 |
W |
LD Df A |
BIT2.A |
LD A,i |
88 |
58 |
X |
LD E,B |
BIT 3(B |
INE,(C) |
89 |
59 |
Y |
LD EfC |
BIT3fC |
OUT (C)fE |
90 |
5А |
Z |
LD E,D |
BIT 3,D |
ADC HL.DE |
91 |
5В |
[ |
LD E,E |
BIT 3,E |
LD DE,(nn) |
92 |
5С |
V |
LD E,H |
BIT 3fH |
|
93 |
5D |
] |
LD E,L |
BIT 3fL |
|
94 |
5Е |
t |
LD E,(HL) |
BIT 3f(HL) |
IM 2 |
95 |
5F |
|
LD E,A |
BIT 3f A |
LD AfR |
96 |
60 |
£ |
LD H,B |
BIT 4,В |
IN Hf(C) |
97 |
61 |
а |
LD HfC |
BIT 4,C |
OUT (C),H |
98 |
62 |
Ь |
LDH.D |
BIT 4,D |
SBC HL.HL |
99 |
63 |
с |
LDH.E |
BIT 4fE |
LD (nn)fHL |
100 |
64 |
d |
LD HfH |
BIT 4fH |
|
101 |
65 |
в |
LD H.L |
BIT 4fL |
|
102 |
66 |
f |
LD H,(HL) |
BIT 4f(HL) |
|
103 |
67 |
9 |
LD H,A |
BIT 4. A |
RRD |
104 |
68 |
h |
LD L(B |
BIT5,B |
IN L,(C) |
105 |
69 |
i |
LD LfC |
BIT 5tC |
OUT (C),L |
106 |
6А |
1 |
LD L,D |
BIT 5fD |
ADC HL.HL |
107 |
6В |
к |
LD LfE |
BIT 5fE |
LD HLf(nn) |
108 |
6С |
1 |
LDL.H |
BIT5.H |
|
109 |
6D |
m |
LDL.L |
BIT 5,L |
|
110 |
6Е |
n |
LD Lf(HL) |
BIT 5f(HL) |
|
111 |
6F |
о |
LD LfA |
ВГГ5.А |
RLD |
112 |
70 |
P |
LD(HL),B |
BIT 6fB |
N (HL).(C) |
113 |
71 |
q |
LD (HL),C |
BIT 6fC |
|
114 |
72 |
r |
LD (HL)fD |
BIT 6fD |
SBC HL,SP |
115 |
73 |
s |
LD (HL),E |
BIT 6rE |
LD (nn)tSP |
116 |
74 |
t |
LD (HL,),H |
BIT 6fH |
|
117 |
75 |
u |
LD (HL),L |
BIT 6,1 |
|
118 |
76 |
v |
HALT |
BIT 6,(HL) |
|
119 |
77 |
w |
LD (HL),A |
WT 6. A |
|
120 |
78 |
X |
LD A.B |
BiT 7fB |
INAT(C) |
д |
ш |
|
Символ |
Мнемоника микропроцессора Z80 |
ZX Spectrum |
без префикса |
с префиксом #CB |
с префиксам #ED |
121 |
79 |
У |
LD А.С |
BIT 7,С |
OUT (C),A |
122 |
7А |
z |
LD A.D |
BIT 7,D |
ADC HL.SP |
123 |
7S |
{ |
LD А,Е |
BIT 7fE |
LD SP,(nn) |
124 |
7С |
1 |
LD А.Н |
BIT 7fH |
|
125 |
7D |
> |
LD A.L |
BIT 7,L |
|
126 |
7Е |
|
LD Af(HL) |
BIT 7,(HL) |
|
127 |
7F |
© |
LD А,А |
BIT 7,A |
|
128 |
80 |
□ |
ADD А.В |
RES 0fB |
|
129 |
81 |
и |
ADD А,С |
RES 0fC |
|
130 |
82 |
о |
ADD A.D |
RES 0,D |
|
131 |
83 |
а |
ADD А,Е |
RES 0.E |
|
132 |
84 |
а |
ADD AfH |
RES 0.H |
|
133 |
85 |
л |
ADD A,L |
RES 0,L |
|
134 |
86 |
в |
ADD A,(HL) |
RES 0f(HL) |
|
135 |
87 |
я |
ADD Af A |
RES 0.A |
|
136 |
88 |
с |
ADC А,В |
RES 1,B |
|
137 |
89 |
и |
ADC А,С |
RES 1,C |
|
138 |
8А |
в |
ADC A.D |
RES 1,D |
|
139 |
ев |
и |
ADC A.E |
RES 1,E |
|
140 |
8С |
в |
ADC A,H |
RES 1.H |
|
141 |
8D |
а |
ADC A,L |
RES 1,L |
|
142 |
8Е |
в |
ADC Af(HL) |
RES 1,(HL) |
|
143 |
8F |
я |
ADC A,A |
RES 1,A |
|
144 |
90 |
[Ак |
|
SUB В |
RES 2fB |
|
145 |
91 |
[В] |
|
SUB С |
RES 2,С |
|
146 |
92 |
[С] |
|
SUB D |
RES 2,D |
|
147 |
93 |
№] |
|
SUBE |
RES 2,E |
|
148 |
94 |
ЕЕ] |
|
SUB H |
RES 2,H |
|
149 |
9S |
[F] |
символы, к определи- |
SUB L |
RES 2,L |
|
150 |
96 |
[©] |
SUB (HL) |
RES 2,(HL) |
|
151 |
97 |
[Н] |
емые поль- зователем |
SUB A |
RES 2,A |
|
152 |
98 |
[1] |
SBC А,В |
RES 3,B |
|
I 153 |
99 |
[i] |
|
SBC А,С |
RES 3,C |
|
154 |
9А |
[К] |
|
SBC A.D |
RES 3,D |
|
155 |
9В |
№ |
|
SBC A,E |
RES 3,E |
|
156 |
9С |
[М] |
|
SBC A,H |
RES 3,H |
|
157 |
9D |
М |
|
SBC A,L |
RES 3,L |
|
158 |
9Е |
[О] |
|
SBC A,(HL) |
RES 3,(HL) |
|
159 |
9F |
[Р] |
|
SBC A.A |
RES 3,A |
|
! 16G |
АО |
[а] |
|
AND В |
RES 4,В |
LDI |
|161 |
А1 |
W' |
|
AND С |
RES 4.C |
CP! |
д |
Ш |
Символ |
Мнемоника микропроцессора Z80 |
ZX Spectrum |
без префикса |
с префиксом #CB |
с префиксом #ED |
162 |
А2 |
И ^ символы, |
AND D |
RES 4,D |
INI |
163 |
A3 |
ГЦ Чопределя- : _ f емые поль- |
ANDE |
RES 4,E |
OUT! |
164 |
А4 |
[U] ) зователем |
AND H |
RES 4,H |
|
165 |
А5 |
RND |
AND L |
RES 4,L |
|
166 |
А6 |
INKEY$ |
AND (HL) |
RES 4,(HL) |
|
167 |
А7 |
PI |
AND A |
RES 4rA |
|
168 |
А8 |
FN |
XOR В |
RES 5.B |
LDD |
169 |
А9 |
POINT |
XORC |
RES 5,С |
CPD |
170 |
АА |
SCREENS |
XOR D |
RES 5,D |
IND |
171 |
АВ |
ATTR |
XOR E |
RES 5,E |
OUTD |
172 |
АС |
AT |
XOR H |
RES 5,H |
|
173 |
AD |
TAB |
XOR L |
RES 5,L |
|
174 |
АЕ |
VAL$ |
XOR (HL) |
RES 5,(HL) |
|
175 |
AF |
CODE |
XOR A |
RES 5,A |
|
176 |
ВО |
VAL |
OR В |
RES 6,В |
LDIR |
177 |
В1 |
LEN |
OR С |
RES 6,С |
CPIR |
178 |
В2 |
SIN |
OR D |
RES 6,D |
1NIR |
179 |
ВЗ |
COS |
OR E |
RES 6,E |
OTIR |
180 |
В4 |
TAN |
OR H |
RES 6,H |
|
181 |
В5 |
ASN |
OR L |
RES 6,L |
|
182 |
В6 |
ACS |
OR (HL) |
RES 6,(HL) |
|
183 |
В7 |
ATN |
OR A |
RES 6, A |
|
184 |
В8 |
LN |
СРВ |
RES 7,В |
LDDR |
185 |
В9 |
EXP |
CP С |
RES 7,С |
CPDR |
186 |
ВА |
INT |
CP D |
RES 7,D |
INDR |
187 |
ВВ |
SQR |
CP E |
RES 7,E |
OTDR |
188 |
ВС |
SGN |
CP H |
RES 7,H |
|
189 |
BD |
ABS |
CP L |
RES 7,L |
|
190 |
BE |
PEEK |
CP (HL) |
RES 7,(HL) |
|
191 |
BF |
IN |
CPA |
RES 7, A |
|
192 |
СО |
USR |
RET NZ |
SET 0,B |
|
193 |
С1 |
STR$ |
POP BC |
SET 0,C |
|
194 |
С2 |
CHR$ . |
JP NZ.nn |
SET 0,D |
|
195 |
СЗ |
NOT |
JP nn |
SET 0,E |
|
196 |
С4 |
BIN |
CALL NZrnn |
SET 0,H |
|
197 |
С5 |
OR |
PUSH BC |
SET 0,L |
|
198 |
С6 |
AND |
ADD A,n |
SET 0,(HL) |
|
199 |
С7 |
<= |
RST 0 |
SET 0,A |
|
200 |
С8 |
>= |
RET Z |
SET 1fB |
|
201 |
С9 |
<> |
RET |
SET 1,C |
|
202 |
СА |
LINE |
JP Z.nn |
SET 1,D |
|
д |
Ш |
Символ ZX Spectrum |
Мнемоника микропроцессора Z80 |
бег префикса |
с префиксом #CB |
с префиксом #ED |
203 |
СВ |
THEN |
префикс #СВ |
SET 1,Е |
|
204 |
СС |
TO |
CALL Zfnn |
SET 1,H |
|
205 |
CD |
STEP |
CALL nn |
SET 1,L |
|
206 |
СЕ |
DEF FN |
ADC A,n |
SET 1 ,(HL) |
|
207 |
CF |
CAT |
RST 8 |
SET 1.A |
|
208 |
DO |
FORMAT |
RET NC |
SET 2,B |
|
209 |
D1 |
MOVE |
POP DE |
SET 2,С |
|
210 |
D2 |
ERASE |
JP NC,nn |
SET 2fD |
|
211 |
D3 |
OPEN # |
OUT (N),A |
SET 2,E |
|
212 |
D4 |
CLOSE # |
CALL NC.nn |
SET 2,H |
|
213 |
D5 |
MERGE |
PUSH DE |
SET 2,L |
|
214 |
D6 |
VERIFY |
SUB n |
SET 2,(HL)fc |
|
215 |
D7 |
BEEP |
RST 16 |
SET 2,A |
|
216 |
D8 |
CIRCLE |
RET С |
SET 3,B |
|
217 |
D9 |
INK |
EXX |
SET 3fC |
|
218 |
DA |
PAPER |
JP C,nn |
SET 3,D |
|
219 |
DB |
FLASH |
IN A,(N) |
SET 3,E |
|
220 |
DC |
BRIGHT |
CALL C.nn |
SET 3,H |
|
221 |
DD |
INVERSE |
префикс для IX |
SET 3,L |
|
222 |
DE |
OVER |
SBC A.n |
SET 3,(HL) |
|
223 |
DF |
OUT |
RST 24 |
SET 3,A |
|
224 |
E0 |
LPRINT |
RET PO |
SET 4,В |
|
225 |
El |
LLIST |
POP HL |
SET 4,С |
|
226 |
E2 |
STOP |
JP PO.nn |
SET 4,D |
|
227 |
E3 |
READ |
EX (SP)fHL |
SET 4fE |
|
228 |
E4 |
DATA |
CALL PO,nn |
SET 4fH |
|
229 |
E5 |
RESTORE |
PUSH HL |
SET 4fL |
|
230 |
E6 |
NEW |
AND n |
SET 4,(HL) |
|
231 |
E7 |
BORDER |
RST 32 |
SET 4,A |
|
232 |
E8 |
CONTINUE |
RET PE |
SET 5fB |
|
233 |
E9 |
DIM |
JP (HL) |
SET 5,С |
|
234 |
EA |
REM |
JP PE,nn |
SET 5fD |
|
235 |
EB |
FOR |
EX DE,HL |
SET 5,E |
|
236 |
EC |
GO TO |
CALL PE.nn |
SET 5,H |
|
237 |
ED |
GO SUB |
префикс #ED |
SET 5,L |
|
238 |
EE |
INPUT |
XOR n |
SET 5,(HL) |
|
239 |
EF |
LOAD |
RST 40 |
SET 5,A |
|
240 |
F0 |
LIST |
RET P |
SET 6(B |
|
241 |
FI |
LET |
POP AF |
SET 6,С |
|
242 |
F2 |
PAUSE |
JP P ,nn |
SET 6,D |
|
243 |
F3 |
NEXT |
DI |
SET 6,E |
|
д |
Ш |
Символ ZX Spectrum |
Мнемоника микропроцессора Z80 |
без префикса |
с префиксом #CB |
с префиксом #ED |
244 |
F4 |
РОКЕ |
CALL P,nn |
SET 6,H |
|
245 |
F5 |
PRINT |
PUSH AF |
SET 6,L |
|
246 |
F6 |
PLOT |
ORn |
SET 6,(HL) |
|
247 |
F7 |
RUN |
RST 48 |
SET 6, A |
|
248 |
F8 |
SAVE |
RET M |
SET 7, В |
|
249 |
F9 |
RANDOMIZE |
LD SP,HL |
SET 7,С |
|
250 |
FA |
IF |
JP M,nn |
SET 7,D |
|
251 |
FB |
CLS |
El |
SET 7,E |
|
252 |
FC |
DRAW |
CALL M,nn |
SET 7,H |
|
253 |
FD |
CLEAR |
префикс для IY |
SET 7,L |
|
254 |
FE |
RETURN |
CP n |
SET 7,(HL) |
|
255 |
FF |
COPY |
RST 56 |
SET 7,A |
|
Пояснения к таблице символов
В первом и втором столбцах таблицы приведены соответственно десятичный (Д) и шестнадцатеричный (111) коды. Относящиеся к ним симво- лы ZX Spectrum (токены) расположены в третьем столбце. В четвертом, пятом и шестом столбцах таблицы даны мнемоники команд микропроцессора Z80 (см. «Система команд Z80»).
При описании команд приняты следующие обозначения:
П - один байт данных, непосредственно следующий за кодом команды,
является всегда последним байтом команды; пп - 16-разрядный операнд, представляющий собой два байта данных, непосредственно следующих за кодом команды. Первым располагает- ся младший байт, затем — старший; (nn) - 16-разрядный адрес, указанный непосредственно за кодом коман- ды (сначала следует младший байт, затем старший); е - 8-разрядное смещение относительно адреса, находящегося в счетчике команд PC. Располагается непосредственно за кодом команды.
Коротко о правилах построения кодов команд. Как уже говорилось раньше, 8-разрядная шина данных позволяет непосредственно реализовать не более 256 команд. Однако, для построения таких однобайтовых* команд (их мнемоники приведены в четвертом столбце таблицы) используются лишь 252 кода.
Два байта #СВ и #ED префиксируют команды, мнемоники которых приведены в пятом и шестом столбцах таблицы соответственно. Так команда LD D,(HL) имеет код #56, команда BIT 2,(HL) — код #СВ #56, а команда IM 1 — код #ED #56.
*) Имеется в виду только код операции — без учета байтов возможных данных.
Оставшиеся два байта #DD и #FD префиксируют команды, работа- ющие соответственно с индексными регистрами IX и IY.
Коды команд, использующих в качестве операндов индексные реги- стры IX и IY, получаются добавлением префиксного байта к кодам команд, оперирующих с регистровой парой HL (но не префиксированных байтом #ED).
Коды команд, использующих индексный метод адресации, образуются аналогично, только префиксируются команды, оперирующие с ячейкой памяти, адресуемой (HL). При этом код смещения d (см. «Система команд Z80») всегда является третьим байтом получающегося кода.
Коды недокументированных команд, работающих с частями индекс- ных регистров, образуются из префикса #DD или #FD и кеда команды, оперирующей с регистрами Н и L. Причем регистру Н соответствуют старшие байты индексных регистров (IXh и IYh), а регистру L — младшие (1X1 и IY1).
В табл. 8 приведены примеры построения кодов команд, использую- щих индексные регистры. Слева приведена исходная команда, которую можно найти в таблице символов, справа — команда, получаемая в результа- те.
Таблица 8. Пример построения кодов команд Z80.
Таблица 8. Пример построения кодов команд Z80.
Исходная |
команда |
Получаемая команда |
Мнемоника |
Код |
Мнемоника |
Код |
ADD HL.BC |
#09 |
ADD IX,ВС |
#DD #09 |
JP (HL) |
#E9 |
JP (IY) |
#FD #E9 |
LD B,(HL) |
#46 |
LD ВД1Х+1) |
#DD #46 #01 |
BIT 0,(HL) |
#CB #46 |
BIT 0,(!Y—1) |
#FD #CB #FF #46 |
LD A,H |
#7C |
LD A,IXh |
#DD #7C |
LD H,L |
#65 |
LD IXh,IX! |
#DD #65 |
LD L,1 |
#2E #01 |
LD IYI.1 |
#FD #2E #01 |
XOR H |
#AC |
XOR IXh |
#DD #AC |
|
|