Z80 Maschinensprachekurs für den Schneider CPC 464/664/6128

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
Frontpage

Information

Title: Z80 Maschinen - Sprachekurs für den Schneider CPC 464/664/6128
Authors: Peter Heiß
Publiser: Heise
Year: 1986
Pages: 190
ISBN: 3-922705-28-6

Contents

Vorwort 9
1 Lohnt sich Maschinensprache überhaupt? 11
Drei POKEs legen den Computer lahm 12
Was ist eine Z80A-CPU? 13
2 Die „Gehirnzellen" des Computers 15
Speicher, Register, Flaggen 15
Bytes als Schalter und Zähler 17
Zahlen im Dualsystem 17
3 Maschinensprache und Assembler 20
Das Hexadezimalsystem 20
Assembler-Sprache 21
Was ist ein „Assembler"? 22
Low-Bytes, High-Bytes und Dezimalzahlen 23
4 Die Speichereinteilung des CPC 24
ROM, RAM und „Speicheretagen" 24
BASIC-Lader für Maschinenprogramme 25
5 Daten werden transportiert 27
Das erste Maschinenprogramm 27
Low-High-Regel bei Operanden 28
6 Adreßangaben beim Datentraiisport: Direkt oder um die Ecke 30
Unmittelbare und absolute Adressierung 30
Indirekte Adressierung 31
7 Wir programmieren eine Schleife 33
Register als Zeiger und Zähler 33
8 Die erste Flagge 36
Schleifen mit Doppelregistem 36
Die Z-Flagge reagiert nicht immer 37
9 Ein Graphikzeichen erscheint auf dem Bildschirm
Der Bildschirmaufbau 39
Erster Kontakt mit dem IX-Register 41
10 Wir lernen die Carry-Flagge kennen
und kürzen das Zeichensetzprogramm 43
Die Carry-Flagge 43
Bedingte Sprünge mit Carry 44
11 Wir rufen Unterprogramme auf und lernen
den Stapelspeicher kennen 46
Ein „Bildschirmfüir'programm" 46
Der Stapelspeicher 48
Stapeln mit PUSH und POP 48
12 Wir zerlegen Bytes und setzen große Zeichen 54
Rotations- und Schiebebefehle 54
Ein Programm für große Zeichen 56
13 Das sanfte Gleiten61
Soft-scrolling 61
Der CP-Befehl 62
Das Hauptprogramm 63
Die Verschieberoutine 64
Die indizierte Adressierung 65
14 Datentransport „en gros" und kurze Sprünge 67
Verschiebung von Speicherblöcken 67
Relative Sprünge 70
15 Masken für die Bytes 74
AND - OR - XOR 74
Programmbeispiel: Unterdrückung der Kleinschreibung
Bytes werden maskiert 76
16 Wir setzen einen Punkt 80
Die Bildschirmorganisation 80
Das Plot-Programm 83
Rechnen mit Tricks 84
Der Programmablauf 84
17 Speicherbereiche lesen und schreiben 89
Ein DUMP-Programm zeigt den Speicherinhalt 89
Der RLD-Befehl hilft beim DUMPen 91
Hex-Zahlen: von der Taste in den Speicher 92
18 Der Z80 als Rechner 94
Rechnen: mangelhaft94Rechnen mit 8 Bits 95
Rechnen mit doppelter Genauigkeit 96
Die Stärke des Z80:16-Bit-Befehle 98
19 Negative Zahlen sind die „Größten" 100
Das Vorzeichenbit 100
Rechnen mit positiven und negativen Zahlen 102
Die Overflow-Flagge 103
16-Bit-Zahlen mit Vorzeichen 104
20 Die letzten Flaggen und das Rechnen im Dezimalsystem
Dezimalarithmetik mit DAA 109
Genaueres über DAA 111
Flaggen steuern die Dezimalkorrektur 112
21 Im CPC steckt Musik 115
Datenaustausch mit Peripheriegeräten 115
Die Register des Tongenerators 116
Programmierung des Tongenerators
Ein Tonleiterprogramm 120
22 Zugriff aufs ROM 124
Das Gate-Array organisiert den CPC 124
Das Zeichen-ROM wird ausgelesen 125
Die RST-Befehle 127
23 Was ist ein Interrupt? 130
Die Anwendung von UnterbrechungenUnterbrechungen verhindern 132
Eine interruptgesteuerte Digitaluhr 132
Wie die Uhr tickt 136
24 Weitere Informationen über Interrupts 140
Interruptmodi des Z80 140
NMI und BUSRQ 141
Die EX-Befehle 141
25 Die Benutzung der ROM-Routinen 143
Die Betriebssystemsroutinen 143
Nochmals: Die Uhr 145
So tickt die neue Uhr 148
26 Anhang 149
Erläuterung zu den Programmlisten A 149
Programmliste des Direktassemblers B 151
Eingabe und Bedienung des Direktassemblers C
Z80-Befehlsliste D 159
Flaggenbeeinflussung der Befehle E 175
Dez-Hex-Dual-Tabelle F 176
Lösung der Übungsaufgaben G 178
Literatur I 186
Stichwortverzeichnis J 187