Ist das 2. Byte ein OPC, so stellt das 1. Byte das Signalbyte
dar.
Beispiele:
Befehls-
Maschinen-
zähler
kode
--------------------------------------------------------------
1000
DD 23
1002
FD 23
1004
CB 40
1006
3E 10
1008
36 FF
100A
28 04
Bei der Berechnung der Sprungweite wird die aktuelle Position
des
Befehlszählers
Befehl zeigt, durch Subtraktion einer 2 berücksichtigt. Im
Quellkode
beziehen
Befehlsanfang, also den PC-Stand, der zum betreffenden Befehl
gehört.
Es
empfiehlt
Quellkode symbolische Sprungmarken zu verwenden, denen bei der
Übersetzung
in
wird. Wie das gemacht wird, zeigen spätere Beispiele.
4.1.3. 3-Byte-Befehle
Diese Befehle enthalten einen Operationskode und einen 16-Bit-
Direktwert (nn). Dieser Direktwert stellt einen normalen Da-
tenwert oder eine Adresse dar, wie er z.B. in Lade- oder
Sprungbefehlen benötigt wird. Ebenfalls ist eine Kombination
von Signalbyte und OPC sowie von Signalbyte und 8-Bit-Direkt-
wert (n) für einige Befehle möglich.
1. Byte
OPC
OPC
OPC
Die Angabe "N(nn)" bezeichnet den niederwertigen Teil, d.h.
die letzten 8 Bits des 16-Bit-Direktwertes, "H(nn)" demgemäß
den höherwertigen Teil, d.h. die ersten 8 Bit.
Wert: |
15......8 7......1
Quellkode
INC IX
INC IY
BIT 0,B
LD
LD(HL),0FFH
JRZ 06
(PC),
der
sich
die
sich,
Maschinenkode
2. Byte
3. Byte
N(nn)
H(nn)
N(nn)
H(nn)
OPC
H
|
N
Kommentar
;IX:=IX+1
;IY:=IY+1
A,10H
;Lade A mit 16
;Lade den von HL adres-
;sierten Speicherplatz
;mit 255
;Springe, wenn Z=1 ist,
;um 6 Byte nach vorn,
;PC: PC +6 -2
ja
bereits
Sprungweiten
bei
der
Programmerstellung
ein
konkreter
(bei Ladebefehlen)
(Sprungadresse)
n
(wobei der 1. OPC ein
Signalbyte DD oder FD
sein kann)
|
39
auf
den
nächsten
immer
auf
Wert
zugewiesen
den
im