Einführung in die Datenverarbeitung 9783111588728, 9783111215099


163 31 31MB

German Pages 386 [420] Year 1970

Report DMCA / Copyright

DOWNLOAD PDF FILE

Table of contents :
Vorwort zur ersten Auflage
Vorwort zur zweiten Auflage
Vorwort zur dritten, erweiterten Auflage
Inhaltsverzeichnis
Teil I. Allgemeine Grundlagen
1. Einführung
2. Geschichtliche Entwicklung
3. Vergleich: Analog — Digital
4. Aufbau einer Digital-Datenverarbeitungsarilage
Teil II. Mathematische Grundlagen
1. Mathematische Begriffe
2. Zahlensysteme
Teil III. Logische Grundlagen
1. Informationstheorie
2. Codierung
3. Schaltalgebra
Teil IV. Technische Grundlagen
1. Bauelemente
2. Speicherarten
3. Endgeräte
Teil V. Organisatorische Grundlagen
1. Lochkarten
2. Programmierung
3. Betriebssystem
4. Anwendungsbereiche der DV
Lösungen der Aufgaben
Fachwörterverzeichnis: englisch/deutsch
Literaturverzeichnis
Stichwortverzeichnis
Abbildungen
Recommend Papers

Einführung in die Datenverarbeitung
 9783111588728, 9783111215099

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

de Gruyter Lehrbuch Dworatschek • Datenverarbeitung

Einführung in die

Datenverarbeitung

von

Sebastian Dworatschek mit 266 Bildern, 189 Übungsaufgaben und einem Abbildungsanhang

3., erweiterte Auflage

Walter de Gruyter & Co • Berlin 1970 Vormals G. J. Göschen'sche Verlagshandlung • J. G u t t e n t a g , Verlagsbuchhandlung • G e o r g Reimer • Karl J. T r ü b n e r • Veit & C o m p .

© Copyright 1970 by Walter de Gruyter & Co., vormals G. J. Göschen'sche Verlagshandlung - J. Guttentag, Verlagsbuchhandlung - Georg Reimer - Karl J. Trübner - Veit & Comp., Berlin 30. - Alle Rechte, einschl. der Rechte der Herstellung von Photokopien und Mikrofilmen, vom Verlag vorbehalten. ArchivNr. 13 88 7 0 1 - Satz: IBM-Composer, Walter de Gruyter & Co. - Druck: Neue Presse, Coburg - Printed in Germany

Vorwort zur ersten Auflage

Die naturwissenschaftlich-technische Entwicklung war bis Anfang 19. Jahrhundert durch die Begriffe: Materie, Masse, Mechanik gekennzeichnet. Mit der 1. Industriellen Revolution trat die .Energie' als bestimmender Faktor hinzu. Die heutige .informierte Gesellschaft' erlebt eine 2. Industrielle Revolution, die umschrieben wird mit den Begriffen: Information, Automatisierung, Kybernetik. Im Mittelpunkt dieser Entwicklung steht die Datenverarbeitungsanlage - oder besser: Informationsverarbeitungsanlage. Ihr eröffnen sich immer mehr Anwendungsgebiete in Wissenschaft, Technik und Verwaltung. Der weite und überaus expansive Bereich .Datenverarbeitung' hat neue Berufe, wie: Operator, Service-Techniker, Programmierer, DV-Organisator, DV-Ausbilder, DV-Berater, Systemanalytiker etc. hervorgebracht. Sie alle erfordern unterschiedliche Spezialausbildungen. Doch erst ein allen gemeinsames fundiertes Grundwissen läßt diese Spezialausbildungen voll wirksam werden. Mit der vorliegenden Veröffentlichung soll der Zweck verfolgt werden, ein breites DV-Basiswissen zu vermitteln. Entsprechend dieser Absicht wurde der Charakter eines Lehrbuches gewählt, mit straffer Gliederung, klaren Begriffsdefinitionen, zahlreichen Skizzen und kapitelweise eingeschalteten Übungsaufgaben, die der frühzeitigen Selbstkontrolle dienen. Dies war um so leichter möglich, als die Konzeption des Buches u. a. auf den Erfahrungen mit DV-Lehrgängen, die der Verfasser regelmäßig durchführt, beruht. Die Fünfteilung des Stoffes fuhrt nach einer Einführung in Aufbau und Arbeitsweise einer Datenverarbeitungsanlage zu den mathematischen, logischen, technischen und organisatorischen Grundlagen der Datenverarbeitung. Das Buch soll dem Operator und Programmierer ein breites Grundwissen vermitteln und wird den Studierenden an Fach- und Hochschulen als Lehrbuch dienen. Dem DV-Ausbilder — sei es in Seminaren, an Gewerbeschulen oder in Arbeitsgemeinschaften — kann es das Improvisieren vermeiden helfen, indem es ihm Rückgriffe auf gegliedertes Wissen und darauf zugeschnittene Beispiele erlaubt. Die leicht verständliche Darstellung technischer Aspekte wird dem Kaufmann nützlich sein. Dem DV-Praktiker erleichtert das Buch vielleicht das Ordnen angesammelten Wissens. Zu einem Überblick und einer ,DV-Allgemeinbildung' verhilft es auch dem von der Datenverarbeitung nur mittelbar Betroffenen. Ich danke den Herstellerfirmen von Datenverarbeitungsanlagen für die freundliche Bereitstellung von Bildmaterial und dem Verlag Walter de Gruyter für die Gestaltung des Buches.

VI

Vorwort

Mein besonderer Dank gilt meinem verehrten Lehrer, Herrn Prof. Dr.-Ing. A. Lotze, der mir — wie vielen anderen — nicht ,nur' das Wissen, sondern auch die Freude an der Datenverarbeitung vermittelt hat. Vorschläge zu Korrekturen und Verbesserungen werde ich stets mit Dank entgegennehmen.

Aachen, im November 1968

Sebastian Dworatschek

Vorwort zur zweiten Auflage In der zweiten Auflage wurden einige kleinere Korrekturen vorgenommen. Für Hinweise von Seiten der Leser danke ich.

Aachen, im Juni 1969

Sebastian Dworatschek

Vorwort zur dritten, erweiterten Auflage Die zweite Auflage war — ebenso wie die erste Auflage — in etwa einem halben Jahr vergriffen. Auswahl, Aufbau und Darstellungsart des DV-Stoffes kommen demnach den Wünschen eines weiten Leserkreises entgegen. Bestätigt wird dies auch durch Leserzuschriften und Buchbesprechungen. Der darin mehrfach geäußerte Vorschlag, Teil V (Organisatorische Grundlagen) zu erweitern, bestimmte die Verbesserungen der 3. Auflage. Der Abschnitt über Anwendungsbereiche der elektronischen Datenverarbeitung wurde ausgebaut. Eine umfassende Darstellung der organisatorischen Probleme eines betrieblichen Informationssystems wird in einem gesonderten Band (in Vorbereitung) behandelt.

Aachen, im Februar 1970

Sebastian Dworatschek

Inhaltsverzeichnis

Teil I. Allgemeine Grundlagen

l

1. Einführung 1.1. 1.2. 1.3.

1

Der Begriff .Datenverarbeitung' Einteilung des Stoffes Bilder und Aufgaben

1 3 5

2. Geschichtliche Entwicklung

6

Aufgaben zu I, 2.

10

3. Vergleich: Analog—Digital

11

3.1. 3.2.

Analoge Rechentechnik Digitale Rechentechnik

12 13

3.3. 3.4.

Beispiel Tabellarischer Vergleich

13 16

3.5.

Hybrid-Rechenanlagen

16

Aufgaben zu I, 3.

17

4. Aufbau einer Digital-Datenverarbeitungsanlage 4.1. 4.2.

18 22 22

Aufgaben zu I, 4.2.1

25

4.2.2. Elektrische Darstellung als Binärzeichen 4.2.3. Anwendung von Codes zur Zeichendarstellung

28 30

4.2.3.1. 4.2.3.2. 4.2.3.3.

Tetradendarstellung BC D-Code Byte-Darstellung

Aufgaben zu 1,4.2.2.14.2.3. 4.2.4. Befehlsdarstellung 4.2.4.1. Der Begriff .Befehl' 4.2.4.2. Operationstypen 4.2.4.3. Befehlsarten 4.2.4.4. Befehlsdarstellung in Bits 4.2.4.5. Mehradress-Maschinen 4.3. 4.4.

18

Vergleich mit einem menschlichen Rechner Informationsdarstellung 4.2.1. Begriffe

.

30 31 32 34 34 34 35 37 41 44

Aufgaben zu 1,4.2.4.

46

Die 5 Grundeinheiten einer DVA Grundeinheiten: Eingabe, Ausgabe 4.4.1. Eingabegeräte

48 49 49

VIII

Inhaltsverzeichnis 4.4.2. Ausgabegeräte

4.5.

51

4.4.3. Kombinierte Ein-/Ausgabegeräte

51

Aufgaben zu I, 4.3.¡4.4.

54

Grundeinheit: Speicher

55

4.5.1. Begriffe

55

4.5.2. Speicher-Hierarchie

4.6.

59

4.5.2.1.

Allgemeines

59

4.5.2.2.

Intern-Speicher-Einheit

61

4.5.2.3.

Extern-Speicher-Einheit

62

Aufgaben zu I, 4.5.

62

Grundeinheit: Steuerwerk

63

4.6.1. Steuerungsarten

64

4.6.1.1.

Extern-Steuerung

64

4.6.1.2.

Eingebautes Programm

64

4.6.1.3.

Gespeichertes Programm

65

4.6.2. Aufgaben des Steuerwerks

67

4.6.2.1.

Synchroner Betrieb

4.6.2.2.

Asynchroner Betrieb

67 69

4.6.2.3.

Befehlsablauf

69

4.6.3. Programmablauf bei einer Einadress-Maschine 4.7.

71

Grundeinheit: Rechenwerk

75

4.7.1. Fähigkeiten des Rechenwerks

75

4.7.2. Aufbau des Rechenwerks

75

Teil II. Mathematische Grundlagen

78

1. Mathematische Begriffe

78

1.1.

1.2.

Potenz

78

1.1.1. Rechenregeln

78

1.1.2. Potenzformen

81

1.1.3. Praktische Anwendungen

81

Logarithmus

82

1.2.1. Definition

83

1.2.2. Übergang von einer Basis zu einer anderen 1.2.3. Dekadische Logarithmen

83 f

84

1.2.4. Logarithmus Dualis

85

1.3.

Fakultät

85

1.4.

Binomialkoeffizient

86

1.4.1. Definition

86

1.4.2. Rechenregeln

87

Aufgaben

87

zu II, 1

Inhaltsverzeichnis

IX

2. Zahlensysteme 2.1.

Definition von Zahlensystemen 2.1.1. Dezimal-System 2.1.1.1. Ganze Dezimalzahlen

88 88 88

2.1.1.2. Echte Dezimalbrüche 2.1.1.3. Allgemeine Dezimalzahl 2.1.2. Allgemeines Polyadisches Zahlensystem 2.1.3. Dual-System 2.1.3.1. Definition 2.1.3.2. Unterschied: Binär - Dual

89 90 91 94 94 96

Aufgaben zu II, 2.1 2.2.

2.3.

2.4.

88

97

Festkomma-Darstellung

97

2.2.1. Begrenzte Stellenzahl

97

2.2.2. Definition 2.2.3. Grundrechenarten bei Festkomma-Darstellung 2.2.3.1. Addition 2.2.3.2. Multiplikation 2.2.3.3. Subtraktion 2.2.3.4. Division Umwandlung von Zahlensystemen 2.3.1. rein-dezimal in tetraden-dezimal 2.3.2. dezimal in dual 2.3.2.1. ganze Zahlen 2.3.2.2. gebrochene Zahlen 2.3.3. dual in dezimal 2.3.3.1. ganze Zahlen 2.3.3.2. gebrochene Zahlen 2.3.4. Zusammenfassung

99 102 102 103 107 112 115 115 116 116 117 118 118 119 120

Aufgaben zu II, 2.2.¡2.3. Gleitkomma-Darstellung 2.4.1. Definition 2.4.2. Die Grundrechenarten bei Gleitkomma-Darstellung '2.4.2.1. Addition 2.4.2.2. Subtraktion 2.4.2.3. Multiplikation 2.4.2.4. Division

121 123 123 125 125 162 127 128

Aufgaben zu II, 2.4.

128

Teil III. Logische Grundlagen

130

1. Informationstheorie

130

X

Inhaltsverzeichnis 1.1.

Qualitative Aussagen 1.1.1. Kommunikations-Systeme

130 130

1.1.2. Nachrichtentechnik 1.1.3. Begriffe 1.1.3.1. Nachrichten und Daten 1.1.3.2. Information 1.1.3.3. Kybernetik

131 133 133 135 135

Aufgaben zu III, 1.1 1.2.

Quantitative Aussagen 1.2.1. Elementarvorrat EV 1.2.2. Entscheidungsgehalt EG 1.2.3. Entscheidungsredundanz ER 1.2.4. Informationsgehalt IG 1.2.4.1. Ungleiche Häufigkeiten der Nachrichten 1.2.4.2. Berechnung des Informationsgehaltes 1.2.4.3. Informationsredundanz IR Aufgaben zu III, 1.2.

2. C o d i e r u n g 2.1.

2.2.

2.3.

..

136 137 137 139 140 141 141 142 145 146

149

Rückgriff auf bekannte Begriffe

149

2.1.1. Redundanz 2.1.2. Binärcodes Tetraden-Codes 2.2.1. BCD-Code 2.2.2. Aiken-Code 2.2.3. 3-Exzess-Code (Stibitz-Code) 2.2.4. C.ray-Code Dezimal-Codes mit mehr als 4 Bits

149 150 151 151 154 155 158 159

Aufgaben zu HI, 2.1.12.2.12.3.

161

2.4.

Codesicherung 2.4.1. Fehlerursachen 2.4.2. Ungesicherte Codes

162 162 163

2.4.3. 2.4.4. 2.4.5. 2.4.6. 2.4.7.

Fehlererkennende Codes Hamming-Distanz h Fehlerkorrigierende Codes Erkennen von mehr als e Fehlern Methode der Quersummenprüfung 2.4.7.1. Parity Check (Prüfbit) 2.4.7.2. Blockcode

164 165 168 169 170 170 171

Aufgaben zu III, 2.4

173

Inhaltsverzeichnis

XI

3. Schaltalgebra

174

3.1.

Boolesche Algebra

174

3.2.

Grundfunktionen 3.2.1. Identität und Negation 3.2.2. AND-Funktion 3.2.3. OR-Funktion Darstellungsarten 3.3.1. Kurzzeichen 3.3.2. Wertetafel 3.3.3. Kontaktskizze 3.3.4. Symboldarstellung 3.3.5. Gebietsdarstellung Funktionen bei 2 Eingangsvariablen 3.4.1. Allgemeine Überlegungen 3.4.2. NAND-Funktion 3.4.3. NOR-Funktion 3.4.4. Äquivalenz

177 177 178 180 182 182 183 184 186 188 191 191 194 195 196

3.4.5. 3.4.6. 3.4.7. 3.4.8.

197 199 200 201

3.3.

3.4.

3.5.

3.6.

3.7.

Antivalenz Inhibition Implikation Zusammenfassung

Aufgaben zu III, 3.1.¡3.2.13.3.13.4.

202

Rechenregeln 3.5.1. Postulate 3.5.2. Theoreme 3.5.3. Assoziatives Gesetz 3.5.4. Distributives Gesetz

204 204 205 206 208

3.5.5. Morgan'sches Theorem 3.5.6. Entwicklungstheorem 3.5.7. Beispiel 3.5.7.1. Vereinfachung über den Entwicklungssatz 3.5.7.2. direkte Vereinfachung 3.5.7.3. Vereinfachung über die Gebietsdarstellung 3.5.7.4. Vereinfachung über die Kontaktskizze Normalformen der Schaltfunktion 3.6.1. Disjunktive Normalform

208 210 210 210 211 212 213 214 214

3.6.2. Konjunktive Normalform 3.6.3. Gegenüberstellung Anwendungsbeispiele

218 220 221

3.7.1. Lochkartentransport 3.7.2. Papiertransport bei einem Schnelldrucker 3.7.3. Dualaddierer

221 223 226

XII

Inhaltsverzeichnis 3.7.3.1. Halbaddierer 3.7.3.2. Volladdierer 3.7.4. Erkennen von Pseudotetraden

:

226 229 231

Aufgaben zu III, 3.5./S.6./S.7.

232

TeiflV. Technische Grundlagen . . .

235

1. Bauelemente

235

1.1. 1.2.

Relais Halbleiterbauelemente

235 238

1.3.

1.2.1. Definition: Halbleiter 1.2.2. Diode 1.2.3. Transistor Schaltungstechniken 1.3.1. Schaltungstechniken mit diskreten Bauelementen 1.3.2. Integrierte Schaltkreise 1.3.3. Hybrid-Techniken

238 238 241 244 244 244 245

2. Speicherarten

246

2.1.

Kippschaltungen

246

2.2.

Magnetkernspeicher 2.2.1. Physikalisches Prinzip 2.2.2. Speicherorganisation 2.2.3. Kenndaten Magnettrommelspeicher 2.3.1. Konstruktiver Aufbau 2.3.2. Adressenordnung 2.3.3. Schreib- und Lesevorgang Magnetbandspeicher 2.4.1. Das Magnetband 2.4.2. Blocksicherung 2.4.3. Transporteinrichtung Magnetplattenspeicher Magnetkartenspeicher

249 249 251 252 253 253 253 255 256 257 258 259 260 261

2.3.

2.4.

2.5. 2.6.

Aufgaben zu IV, 1./2.

3. Endgeräte 3.1. 3.2.

Problematik der Geschwindigkeiten Eingabegeräte 3.2.1. Tastaturen

261

264 264 266 266

Inhaltsverzeichnis

3.3.

3.4.

XIII

3.2.2. Lochstreifenleser

267

3.2.2.1. Langsame Lochstreifenleser 3.2.2.2. Schnelle Lochstreifenleser 3.2.3. Lochkartenleser 3.2.4. Belegleser

268 269 270 271

3.2.4.1.

Anwendungsarten

271

3.2.4.2. 3.2.4.3. 3.2.4.4.

Klarschriftleser Magnetschriftleser Markierungsleser

272 272 273

3.2.4.5. Mehrfunktions-Belegleser Ausgabegeräte 3.3.1. Lochstreifenstanzer 3.3.2. Lochkartenstanzer 3.3.3. Drucker 3.3.4. Zeichengeräte Kombinierte Ein-/Ausgabe 3.4.1. Bildschirmgeräte 3.4.2. Datenübertragung 3.4.2.1. 3.4.2.2. 3.4.2.3.

Übertragungswege Fehlersicherung Systemauswahl

Aufgaben zu IV, 3.

Teil V. Organisatorische Grandlagen 1. Lochkarten 1.1. 1.2.

1.3.

281 283 284 284

287 287

Definition und Einteilung Handlochkarten

287 288

1.2.1. Nadellochkarte 1.2.1.1. Kerblochkarte 1.2.1.2. Schlitzlochkarte 1.2.2. Sichtlochkarte 1.2.3. Handlochkartenkombinationen Maschinenlochkarte 1.3.1. Nomenklatur 1.3.2. Anwendung

288 288 290 291 292 292 292 294

Aufgaben zu V, 1

296

2. P r o g r a m m i e r u n g 2.1.

273 273 273 274 275 278 280 280 281

Flußdiagramm 2.1.1. Definition 2.1.2. Beispiel

297 297 297 299

XIV

Inhaltsverzeichnis 2.2.

2.3.

2.4.

Maschinenorientierte Programmiersprachen

300

2.2.1. Maschinensprache

300

2.2.2. Programmiersprachen mit codiertem Befehlswort 2.2.2.1. Dezimalziffern als Operationsteil 2.2.2.2. Mnemotechnischer Operationsteil

300 300 303

2.2.3. Assemblersprachen 2.2.4. Interpretative Systeme Problemorientierte Programmiersprachen 2.3.1. Aufbau und Übersetzung 2.3.2. ALGOL 2.3.3. FORTRAN 2.3.4. COBOL 2.3.5. PL/1 2.3.6. EXAPT Vergleich der Programmiersprachen

304 306 306 306 308 309 309 310 311 311

Aufgaben zu V, 2.

315

3. Betriebssystem 3.1.

3.2.

317

Betriebsarten von DVA 3.1.1. Batch-Processing 3.1.1.1. Batch-Processing ohne Prioritäten 3.1.1.2. Batch-Processing mit Prioritäten 3.1.1.3. Remote-Batch-Processing 3.1.2. Time Sharing 3.1.3. Multiprogramming 3.1.4. Real-Tim e-Verarbeitung 3.1.5. Multiprocessing Aufgaben und Aufbau des Betriebssystems 3.2.1. Aufgaben des Betriebssystems 3.2.2. Aufbau des Betriebssystems 3.2.3. Hardware - Software

317 317 317 318 319, 319 320 320 323 323 323 326 327

Aufgaben zu V, 3

328

4. Anwendungsbereiche der DV 4.1. 4.2.

329

Wissenschaftliche Berechnungen Betriebliche Informationssysteme

329 333

4.2.1. Rechnungswesen 4.2.2. Planungs- und Entscheidungsmethoden

333 338

4.2.2.1. 4.2.2.2. 4.2.2.3.

Definitionen Lineares Programmieren Netzplantechnik

338 340 342

Inhaltsverzeichnis 4.2.2.4. 4.3.

4.4.

XV Simulation

344

4.2.3. Management-Informations-System

345

Numerisch gesteuerte Maschinen

345

4.3.1. Werkzeugmaschinen

346

4.3.2. Zeichengeräte

347

4.3.3. Verdrahtungsmaschinen

347

4.3.4. Setzmaschinen

347

Prozeßrechner

347

4.4.1. Struktur eines Prozeßrechnersystems

347

4.4.2. Anwendungsmöglichkeiten für Prozeßrechner

350

4.5.

Nichtbetriebliche Informationssysteme

352

4.6.

Datenfernverarbeitung

355

4.6.1. Definition

355

4.6.2. Platzbuchungssysteme

357

4.6.3. Universelle Teilnehmersysteme

358

L ö s u n g e n der A u f g a b e n

360

Fachwörterverzeichnis: englisch/deutsch

363

Literaturverzeichnis

367

Stichwortverzeichnis Abbildungen

368 1A- 30A

Teil I. Allgemeine Grundlagen

1. E i n f ü h r u n g 1.1. Der Begriff , Datenverarbeitu ng' Ein Nicht-Fachmann auf dem Gebiet der Datenverarbeitung werde nach Sinn und Bedeutung des Begriffs: Datenverarbeitung gefragt. Im ersten Moment wird er versuchen, sich ein Bild aus Mosaiksteinchen zusammenzusetzen. Diese Mosaiksteinchen sind Wörter und Teilzusammenhänge des weiten Bereichs .Datenverarbeitung', die er früher aus Berichten im Rundfunk, Fernsehen und in Zeitungen in sein Gedächtnis übernommen hat. Es werden ihm Ausdrücke wie: Elektronen-Rechner Daten hohe Rechengeschwindigkeiten Lochkarten Computer Speicher Transistoren und ähnliche bunt durcheinandergewürfelt in den Sinn kommen. Er wird sie sortieren und klassifizieren. Er wird jedenfalls versuchen, sich aus diesen Mosaiksteinchen ein größeres Bild der Zusammenhänge, Aufgaben und Auswirkungen der Datenverarbeitung zu bilden. Dennoch bleibt aber oft der Begriff Datenverarbeitung' im allgemeinen und deren zentrales Organ, die .Datenverarbeitungsanlage' im besonderen nur eine Ansammlung mehr oder weniger deutlicher Vorstellungen. Dies liegt zum Teil daran, daß sich der Laie auf dem Gebiet der Datenverarbeitung stets nur mit deren Ergebnissen beschäftigt. Eine geheimnisvolle Atmosphäre umgibt oft diese leistungsfähigen aber auch komplizierten Datenverarbeitungsanlagen. Diese Distanz ist aber zu durchstoßen mit der Erkenntnis, daß für das grundlegende Verständnis der inneren logischen Organisation, der Funktionsmechanismen sowie: der Grundprinzipien des Einsatzes einer Datenverarbeitungsanlage keine speziellen wissenschaftlich-technischen Kenntnisse erforderlich sind. Allgemein logisches und kombinatorisches Denkvermögen ist vielmehr erforderlich.

2

Teil I. Allgemeine Grundlagen

Die Frage nach dem .Geheimnis' der Datenverarbeitung kann - wie viele Fragen - leichter beantwortet werden, wenn sie in präzise und klar umrissene Teilfragen aufgeteilt wird. Es ist also eine Verfeinerung der Fragestellung, d. h. Differenzierung, nötig. Hierbei destillieren sich dann Teilfragen folgender Art heraus: Wie ist eine Datenverarbeitungsanlage aufgebaut? Wie arbeitet sie? Welche Entscheidungen vermag sie zu treffen? Welche Operationen kann sie durchführen? Wie wird sie bedient? Für welche Probleme lohnt sich ihr Einsatz? Welche organisatorischen Vorbereitungen sind zu treffen? Welche technischen Hilfsmittel werden benötigt? Die Beantwortung all dieser Teilfragen führt zu einer Klärung des Gesamtkomplexes .Datenverarbeitung' sowie zur eigentlichen Abrundung und notwendigen Vertiefung des obengenannten Mosaikbildes. Die breite Öffentlichkeit zeigt sich an den Erfolgen und Fortschritten der Datenverarbeitung wohl aus folgenden Gründen so stark interessiert: a) hochdynamische Entwicklung dieses Gebietes: Wie in 2. (Geschichtliche Entwicklung) angegeben wird, hegt der eigentliche Beginn dieser sprunghaften Entwicklung der Datenverarbeitung nur ca. 3 Jahrzehnte zurück! Fast jeden Tag bringen Rundfunk, Fernsehen und Zeitungen Berichte über: neue Typen von Datenverarbeitungsanlagen, neue Anwendungsbereiche hierfür, neue Erkenntnisse hierbei. b) spektakuläre Erfolge auf den verschiedensten Anwendungsbereichen der Datenverarbeitung, wie: Raketen- und Weltraumforschung, Atomphysik, Verkehrssteuerung, Verwaltungssektor. c) Inbegriff der Lebensweise des 20. Jahrhunderts Die Menschen des 20. Jahrhunderts, das durch nie zuvor erreichte Geschwindigkeiten und rasanten technischen Fortschritt geprägt wird, sehen in der Datenverarbeitung einen Inbegriff ihres Zeitalters. Man spricht heute schon davon, daß nicht etwa die modernen Erkenntnisse der Atomphysik die zweite technische Revolution bedeuten, sondern der Einsatz der Datenverarbeitungsanlagen auf allen Gebieten des wirtschaftlichen und gesellschaftlichen Lebens. So glaubt beispielsweise N. Wiener, der Begründer der Kybernetik, unser Jahrhundert am besten als das Zeitalter der Nachrichten- und Regelungstechnik beschreiben zu können. Als zentrales und zugleich verbindendes Glied dieser Techniken schält sich aber immer mehr die Datenverarbeitung heraus.

3

1. Einführung

1.2. Einteilung des Stoffes Das vorliegende Buch ist als Einführung gedacht und auch dementsprechend aufgebaut. Es wird aus dem Leser also keinen Spezialisten auf irgendeinem Gebiet der Datenverarbeitung machen, sondern soll ihm breites Basiswissen verschaffen. Bewußt wurde aber auch davon Abstand genommen, das Buch durch allzu allgemeingehaltene Stoffbehandlung zu einem zwar leicht lesbaren, aber kaum nützlichen Handbuch zu reduzieren. Wie bei der Beschäftigung mit anderen Stoffgebieten ist es auch hier unumgänglich, gewisse elementare Detailprobleme erfaßt zu haben, um den als Endziel erwünschten, fundierten Überblick nach Abschluß des Buches aufzuweisen. In diesem Sinne wird der Leser von Kapitel zu Kapitel auf exemplarische Weise mit den verschiedenen Stoffgebieten der Datenverarbeitung vertraut gemacht. Der behandelte Stoff wird durch selbstkritische Wiederholung während der Lösung der Aufgaben gefestigt. Das Gebiet der Datenverarbeitung ist sehr vielschichtig. Deshalb werden in der vorliegenden Einführung folgende fünf Blickwinkel zugrunde gelegt: Teil I : Teil II : Teil III: Teil IV: Teü V :

Allgemeine Grundlagen Mathematische Grundlagen Logische Grundlagen Technische Grundlagen Organisatorische Grundlagen

Teil I: Allgemeine Grundlagen umfaßt eine Zusammenstellung der geschichtlichen Entwicklung der Datenverarbeitung. Dies soll zum Verständnis der inneren Zusammenhänge beitragen. Einem eingehenden Vergleich zwischen den beiden Rechenprinzipien ,Analog' — ,Digital' moderner Datenverarbeitungsanlagen folgt ein größerer Abschnitt über den strukturellen Aufbau einer Datenverarbeitungsanlage. Die fünf Grundeinheiten werden in ihrer Zusammenarbeit vorgeführt. Teü II: Mathematische Grundlagen Die mathematischen Grundlagen einer Datenverarbeitungsanlage erfordern keine Einführung in komplizierte mathematische Theorien, sie bewegen sich vielmehr meist im Begriffsbereich elementarer Algebra. Es werden die Zahlensysteme erläutert, mit denen die verschiedenen Rechenanlagen operieren, um sowohl ein besseres Verständnis für die Arbeitsweise solcher Anlagen als auch der verschiedenen Ein- und Ausgabegeräte zu wecken. Für das Verständnis der vier Grundrechenarten in diesen Zahlensystemen sowie die Umwandlung von einem System in ein anderes sind keine speziellen Mathematikkenntnisse erforderlich. Ein logisch und kombinatorisch streng exaktes Denkvermögen ist jedoch unerläßlich.

4

Teil I. Allgemeine Grundlagen

Teil III: Logische Grundlagen erläutert die ¿nformationstheoretischen' Grundbegriffe. Sie sollen einen tinblick in die mathematische, rechnerische Erfaßbarkeit von .Nachricht' gewähren, d. h. die quantitative Angabe von Information. Die logischen Grundlagen der Datenverarbeitung bilden vor allem die Schaltalgebra und die Codierung. Zur Darstellung von Information und zur Sicherung bei deren Übertragung werden sogenannte Codes (sprich: Kodes) eingesetzt. Dies sind Verschlüsselungen von Information, die nach bestimmten Zuordnungsvorschriften vorgenommen werden. Die verschiedenen Codes werden angeführt und ihre Vor- und Nachteile in der Anwendung aufgezeigt. Die Schaltalgebra baut auf der mathematischen Logik auf und nimmt heute eine wichtige Rolle in der formalen Beschreibung und Optimierung von Schaltfunktionen ein. Anhand von ausführlichen Beispielen werden die Schaltalgebra und ihre Anwendungen erläutert. Teil IV: Technische Grundlagen Um (von außen) die Funktionen eines Gerätes zu erfassen, ist es nicht immer nötig, dessen Aufbau und dessen Konzeption zu verstehen. Aber wie es für einen Autofahrer durchaus von Vorteil ist, nicht nur zu wissen, wie das Bremspedal bedient werden muß, sondern auch, wie sich die Öldruckbremse erklären läßt ebenso erleichtert es das Verständnis für den Einsatz, die Bedienung oder die Programmierung einer Datenverarbeitungsanlage, wenn man das Prinzip ihres rechnisch-funktionalen Aufbaues erfaßt hat. Spezielle Detail-Fragen zu beherrschen, ist Sache des Fachmanns, fundierte Grundkenntnisse sind aber auch für den unerläßlich, der in irgendeiner Form mit der Datenverarbeitung zu tun hat. In diesem Sinne werden also behandelt: a) die Grund-Bauelemente, wie Relais, Transistoren, Dioden, Magnetkern b) die Speichertypen, wie: Magnetkern-, Trommel-, Magnetband-, MagnetplattenSpeicher c) Ein- und Ausgabegeräte,, wie: Fernschreiber, Lochkartenleser, Schnelldrucker etc. Teil V: Organisatorische Grundlagen zu diesen Grundlagen zählen: a) das Lochkartenverfahren, das heute entweder als eigene Organisationsform oder/und als Ein- und Ausgabe*Verfahren bei Datenverarbeitungsanlagen in Anwendung kommt. b) das Programmieren, das als logische Aufbereitung und Erfassung der zu bearbeitenden Probleme im Mittelpunkt der Anwendung von Datenverarbeitungsanlagen steht.

1. Einführung

5

c) der betriebliche Einsatz von Datenverarbeitungsanlagen: es werden die verschiedenen Anwendungsbereiche in Wissenschaft, Industrie und Handel mit den heute vorliegenden Erfahrungen aufgeführt. Da wesensmäßig teilweise recht verschiedenartige Stoffgebiete behandelt werden, war es manchmal nicht zu umgehen, Ergebnisse späterer Abschnitte in vorhergehenden teilweise vorwegzunehmen, Hinweise auf frühere oder folgende Abschnitte anzugeben sowie kurzgefaßte Wiederholungen vorzunehmen. Dies kann durchaus von Vorteil sein. Viele Teilgebiete der Datenverarbeitung sind nur zu durchschauen, wenn man sie von verschiedenen Blickwinkeln — und wenn nötig des öfteren — betrachtet. In diesem Sinne sind auch Hinweise auf Textstellen und Bilder nicht als notwendiges Übel zu betrachten, sondern als Anregung, erledigte Abschnitte aus diesem neuen Gesichtspunkt heraus nochmals zu überarbeiten und zu überdenken.

1.3. Bilder und Aufgaben Zur Erläuterung und leichteren Merkbarkeit wurden viele Bilder (Skizzen, Zeichnungen, Diagramme) in den Text eingestreut. Diese Bilder werden mit: dem Buchstaben B (Bild) sowie: einer fortlaufenden Nummer gekennzeichnet. Neben den Abkürzungen beim Hinweis auf Bilder innerhalb des Textes werden im folgenden auch - der Einfachheit halber - die heute schon üblich gewordenen Abkürzungen: DV für: Datenverarbeitung EDV für: elektronische Datenverarbeitung EDVA für: elektronische Datenverarbeitungsanlage oder kürzer: DVA für: Datenverarbeitungsanlage(n) verwendet. Weiterhin werden häufig hinter den deutschen Ausdrücken aus dem Bereich der DV in Klammern die englischen gesetzt. Damit soll der Leser auch mit den englischen Fachausdrücken vertraut gemacht werden. Die Aufgaben beziehen sich stets auf den Stoff des vorangehenden Kapitels. Sie sind in der Form aufgebaut, daß einer gestellten Frage stets drei Antworten (a, b, c), von denen nur eine voll richtig ist, folgen. Als Beantwortung der Fragestellung ist also stets der Buchstabe (a oder b oder c) anzugeben, der diese richtige Antwort kennzeichnet. Oft wird diese Antwort nur durch erneutes Durcharbeiten der betreffenden Stelle des Lehrheftes zu finden sein. Dies soll die selbstkritische Stoffwiederholung fördern. Die Lösungen der Aufgaben sind im Anhang angegeben.

6

Teil I. Allgemeine Grundlagen

2. Geschichtliche Entwicklung ca. 5000v.Chr. Die Grundlage des Rechnens ist das Zählen. Der Mensch begann das Zählen mit den ihm von der Natur gegebenen (Rechen-)Hilfsmitteln: den Fingern. Eine Hand erlaubte ihm also bis 5 (Quinär-System), beide Hände bis 10 (DezimaiSystem) zu zählen. Wollte er zu größeren Zahlen (bzw. Mengen) übergehen, so benützte er Steine, Perlen oder Holzstäbe. ca. 1100 v.Chr. Bequemer und zuverlässiger schon war das dem 5-Finger-System verwandte Suan-Pan- Verfahren, bei dem die Perlen auf Drähten aufgefädelt waren. Bei den Römern wurde es Abacus genannt. Bei uns findet man es noch in Kindergärten und (in vereinfachter Spielform) sogar vor Kinderwagen. In Hinterasien ist Suan Pan noch sehr stark verbreitet. Bei genügender Übung lassen sich (wie sich bei Wettbewerben zeigte) überraschend hohe Rechengeschwindigkeiten damit erreichen.

B 1/1: Rechengerät

500 n. Chr. Die Grundlage für die Entwicklung zum Rechnen mit Maschinen bildete zweifelsohne das in Indien (daher: Hindu-) entstandene und über den arabischen Kulturkreis zu uns gelangte Hindu-Arabische Zahlensystem mit den zehn Ziffern: 0, 1 , . . . 8, 9. Nach der Rückeroberung Spaniens aus arabischer Herrschaft, 1150 n. Chr., setzte es sich im Abendland schnell durch. Sein großer Vorteil im Vergleich zum recht umständlich zu handhabenden Römischen Zahlensystem (z. B. MCMVII) sind: a) Einführung der Null: 0 b) Einführung der Stellenschreibweise Im Gegensatz zum Römischen Zahlensystem gestattet also das Hindu-Arabische Zahlensystem einen Rückschluß von der Stellung einer Ziffer innerhalb der Zahl

7

2. Geschichtliche Entwicklung

auf ihren Wert. Die 8 bedeutet z. B. 8 Hunderter in der Zahl 6804. Die 0 bedeutet: keine Zehner. Die Gesamtzahl bedeutet also: 4 4 • 1 = 0 0 • 10 = 8 • 100 = 800 6 • 1000 = 6000 Gesamtzahl = 6804 1614 Der Rechenaufwand zur Aufstellung der von Lord Napier herausgegebenen Logarithmen-Tafeln erfordern einen Zeitaufwand von ca. 30 Jahren (moderne Rechenanlage: ca. 1 min.) 1623 Der Theologe und Mathematiker Schickard konstruiert für seinen Freund, den Mathematiker und Astronomen Kepler eine Rechenuhr, die auf dem Zählradprinzip (ähnlich den heutigen mechanischen Tischrechenmaschinen) aufbaute. Damit waren Addition und Subtraktion durchzuführen, wobei mit 6 Stellen und Übertrag gerechnet wurde. Ein Modell dieser Schickard'schen Rechenuhr steht seit 1957 im Tübinger Rathaus. 1641 baute Blaise Pascal (französischer Mathematiker) mit 19 Jahren seinem Vater, der Steuerpächter war, eine Addiermaschine mit 6 Stellen. 1650 Patridge: Erfindung des Rechenschiebers. 1671-1694 beschäftigte sich der große Philosoph und Mathematiker G. W. Leibniz mit der Konstruktion von Rechenwerken, die ihm zwar 24.000 Taler Ausgaben, aber keinen wirklichen Erfolg brachten. 1703 G. W. Leibniz beschäftigt sich mit dem Dualsystem (das zur Grundlage der heutigen Rechenanlagen wurde, vgl. II, 2.1.3). 1808 J. M. Jacquard setzt Kartons, in die das Webmuster eingestanzt war, zur automatischen Steuerung von Webstühlen ein. Derartige Webstühle sind im Deutschen Museum zu sehen. Der Begriff .Jacquard' ist heute noch ein üblicher Ausdruck in der Textilbranche. Ähnliche, gelochte Karten (in gefalteter Form) sind noch heute bei Jahrmarkt-Musikautomaten in Anwendung. 1833 Von großer Bedeutung für die weitere Entwicklung war die mechanische Rechenanlage ,Difference Engine' des Mathematik-Professors aus Cambridge, Charles

8

Teil I. Allgemeine Grundlagen

Babbage, die heute noch im Science Museum London besichtigt werden kann. Die Konzeption seiner weiterhin geplanten Maschine (Analytical Engine) nahm den Aufbau moderner Rechenanlagen voraus. Sie sollte bestehen aus: Speicher (engl.: störe) (1000 Worte ä 50 Stellen) Rechenwerk (engl.: mill) Steuerwerk (engl.: control) Ein-, Ausgabe und vor allem einem (in Lochkarten) gespeicherten Programm. Die Pläne von Babbage scheiterten an dem Stand der damaligen Technik. 1890 Der Deutsch-Amerikaner H. Hollerith führt bei der 11. amerikanischen Volkszählung die Lochkartentechnik ein. 1920 Entwicklung leistungsfähiger Büro-Lochkartenmaschinen (Firmen: IBM, Bull). Moderne Entwicklung der DVA a) Relaisrechner 1936 K. Zuse (Bauingenieur) beginnt noch während seines Studiums in Berlin mit dem Bau einer Rechenanlage ZI, welche die stets wiederkehrenden Routine-Berechnungen der Statik automatisieren sollte. 1941 Z3: Relaisrechner mit Lochstreifeneingabe und -ausgabe. Eigenschaften der Z3: Eingabeeinheit Ausgabeeinheit Rechenwerk (600 Relais) Relaisspeicher (64 Zahlen a 22 Dualstellen) Programm in Lochstreifen (gelochter Kinofilm) abgespeichert 1944 H. H. Alken (IBM) entwickelt an der Harvard University den Relaisrechner MARK I. 1946 J. v. Neumann (Mathematiker) entwickelt folgende Fundamentalprinzipien einer Rechenanlage: a) das Programm wird wie die Daten gespeichert b) bedingter Befehl mit (vorwärts oder rückwärts) Verzweigung (vgl. 4.2.4.2. b) c) das Programm ist eine Kette logischer Binär-Entscheidungen

2. Geschichtliche Entwicklung

9

b) Datenverarbeitungsanlagen der 1. Generation 1946 Eigenschaften: Schaltungsaufbau aus Elektronenröhren Operationszeiten im Millisekunden (ms)-Bereich (1 ms = 1/1000 s) Beispiel: ENIAC (Elektronic Numerical Integrator and Computer) Gewicht: 30 Tonnen Die 17.000 Röhren (Stromverbrauch: 174 KW) erforderten eine Klimaanlage, die mehr Strom als die Rechenanlage selbst verbrauchte, fehlerfreie Arbeitszeit: ca. 45% Z22 (von Zuse KG) wurde ab 1955 vor allem an Hochschulen geliefert. Rechenzeiten: Addition: 0,6 ms - Multiplikation: 15 ms 1952 Beginn der Auslieferung von DVA an Privatwirtschaft. 1954 Deutsche Firmen beginnen (wieder) mit dem Bau von Datenverarbeitungsanlagen: Zuse KG, Siemens, Standard Elektrik Lorenz, Telefunken, VEB Zeis in Jena. c) Datenverarbeitungsanlagen der 2. Generation 1957 Eigenschaften: Schaltungsaufbau aus Transistoren Operationszeiten im 100 Mikrosekunden (/js)-Bereich (1 jus = 1/1000 ms = 1/1.000.000 s = 10"6 s) Beispiel: Siemens 2002: volltransistorisierte DVA mittlerer Größe Addition: 90 jus - Multiplikation: 120 jus d) Datenverarbeitungsanlagen der 3. Generation 1964 Eigenschaften: Schaltungsaufbau aus integrierten Schaltkreisen (vgl. hierzu auch IV, 1.3) Operationszeiten im Mikrosekunden-Bereich. Mehrere (ca. 30) elektronische Bauteile (Transistoren, Widerstände) werden mit ihren ,Lötverbindungen' in kleinen Kristallblöcken zusammengefaßt (daher integriert'). Durch Ätzverfahren werden in hochgezüchtet homogenen (gleichmäßig aufgebauten) Siliziumkristallen Gebiete mit Transistor- und Widerstandscharakter erzeugt und durch Aufdampfverfahren dazwischen metallische, d. h.

10

Teil I. Allgemeine Grundlagen

leitende Verbindungen hergestellt. Diese Technik nennt man Monolith-Technik. Die gesamte Verfahrensweise nennt man Mikrominiaturisierung. Vorteile: kompakte Bauweise (nur 1/100 und noch weniger des Raumes in üblicher Technik), kurze Schaltzeiten (bis zu Bruchteilen von Mikrosekunden), hohe Betriebssicherheit (keine Lötstellen!) Üblich sind heute die sog. Famttiensysteme von DVA. Das kleinste Modell einer solchen Familie ist wie in einem Baukastensystem durch Hinzunahme von Erweiterungsteilen (etwa Speicher) bis zum größten Modell ausbaufähig. Die Verwendbarkeit der Programme bleibt dabei erhalten. Man spricht hierbei von einer sog. Programmkompatibilität. Solche Familiensysteme sind beispielsweise: BGE 600, IBM 360, NCR-Century, Siemens 4004, UNIVAC 9000 ej Vergleich der Größenordnungen in der Bauweise bei den drei Generationen von DVA in relativen Schaltungseinheiten pro Kubikzentimeter (SE/cm 3 ): 1. Generation: 1 SE/cm 3 2. Generation: 10 SE/cm 3 3. Generation: 1000 SE/cm 3 f ) Datenverarbeitungsanlagen der 4. Generation Forschungs- und Entwicklungslabors arbeiten schon an Prototypen von DVA der 4. Generation, die in einigen Jahren serienreif sein werden. Sie werden die Anlagen der 3. Generation an Komfort, Anpassungsfähigkeit und Geschwindigkeit noch übertreffen. Die Operationszeit wird bei hundert und weniger Nanosekunden liegen. Das bedeutet: 10 bis 50 Mio Operationen pro Sekunde. Zur Veranschaulichung sei angegeben, daß die mit Lichtgeschwindigkeit zurückgelegte Strecke in 10 Nanosekunden etwa 3 m entspricht. Diese Tatsache zwingt - abgesehen von sonstigen technischen Ursachen — dazu, räumlich kompakte Geräte zu entwickeln. Die DVA der 4. Generation werden deshalb aus integrierten Großschaltungen (sog. Large Scale Integration = LSI) bestehen. In ihnen sind ganze Schaltungskomplexe mit tausend und mehr Bauelementen auf einem Kristall untergebracht.

AUFGABEN zu 1,2. 1. Vorteil des (heute üblichen) Hindu-Arabischen Zahlensystems gegenüber dem Römischen Zahlensystem ist: a) Einfuhrung der Null und der Stellenschreibweise b) Einführung des Dezimalsystems c) Einfache Durchführung der Multiplikation

3. Vergleich: Analog - Digital

11

2. Was b e d e u t e t der Begriff ,Abacus'? a) Name einer Herstellerfirma von D V A b) Name eines Code für die interne Darstellung von Daten c) Handrechengerät der R ö m e r 3. Wer war Hollerith? a) Erfinder des Rechenschiebers b ) Erfinder der Lochkartentechnik c) K o n s t r u k t e u r der ersten Relais-DVA 4. Nach welchen Kriterien unterscheidet m a n die DVA der 1., 2. u n d 3. Generation? a) danach, ob sie im Dual-, Binär- oder Dezimal-System arbeiten b) nach der Kapazität der Speicher c) nach der Schaltungstechnik ( R ö h r e n , Transistoren, integrierte Schaltkreistechnik) 5. Wie groß ist die Schalt-(Operations-)Zeit bei D V A der 3. Generation? a) ca. 1 jus = 10" 6 s b) ca. 100 (is = 10" 4 s c) ca. 1 0 m s = 1 0 " 2 s 6. Bei welcher Generation von DVA k ö n n e n 3 0 Schaltelemente auf ca. 0,03 Kubikzentimeter ( c m 3 ) untergebracht werden? a) bei D V A der 3. Generation b ) bei D V A der 2. u n d 3. Generation c) überhaupt noch nicht

3. Vergleich: Analog — Digital Bei den m o d e r n e n Rechenanlagen unterscheidet man zwei G r u p p e n , u n d zwar nach ihrem Rechenprinzip: Analog-Rechenanlagen (Stetig-Rechenanlagen) Digital-Rechenanlagen (Ziffern-Rechenanlagen) Die erste Bezeichnung leitet sich vom griechischen ,ana logon' ab, was soviel wie 4m richtigen Verhältnis' heißt. Die zweite Bezeichnung ist auf den lateinischen Begriff digitus (= Finger) zurückzuführen. In der Aufstellung der geschichtlichen Entwicklung h a b e n wir schon zwei typische, elementare Vertreter der beiden Arten von Rechenanlagen kennengelernt. Es waren dies: der Rechenschieber als Vertreter der Analog-Rechenanlagen, der Abacus als Vertreter der Digital-Rechenanlagen

12

Teil I. Allgemeine Grundlagen

3.1. Analog-Rechentechnik Beim Rechenschieber werden Rechenoperationen durchgeführt, indem man ,Strecken' gegeneinander verschiebt und dann vergleicht.

B 1/2: Analoges Rechengerät: Rechenschieber

Dabei kann das Verschieben kontinuierlich erfolgen, d. h. die Zunge des Rechenschiebers kann zwischen unterster und oberster Einstellung jede beliebige Zwischenstellung einnehmen. In der analogen Rechen- (Meß-, Regel-, Steuer-)technik werden physikalische Größen, die ihrer Natur nach schon .zeitliche Stetigkeit' aufweisen, als Rechengrößen verwandt. Dabei wird die eigentlich interessierende Größe (z. B. Durchflußmenge) durch eine andere physikalische Größe (z. B. Zeigerausschlag eines Meßinstruments) ersetzt (oder besser: .simuliert'). Beispiel: Analog-Rechengerät

interessierende Größe, Information

simulierende physikal. Größe

Rechenschieber Uhr Gas- od. Stromzähler

Zahlenwert Zeit durchgeflossene Gas- oder Strommenge Lösung von Rechenoperationen wie: DifferentialGleichungen, die Bewegungen beschreiben. Schwingungen berechnen. Flugbahnen simulieren.

Länge Winkelstellung des Zeigers kontinuierliche Drehung eines Zahnrades Spannung (oder: Strom)

Analog-Rechenanlage

3. Vergleich: Analog - Digital

13

3.2. Digital-Rechentechnik Bei der Digital-Rechentechnik wird die numerische, d. h. die zahlenmäßige Erfassung von irgendwelchen Aussagen angewandt. Alle Aussagen (z. B. Messungen) liegen ziffernmäibig vor und werden arithmetisch (d. h. mit Hilfe der vier Grundrechenarten) verarbeitet. Im Gegensatz zur Analog-Rechentechnik, bei der sich die Größen kontinuierlich (stetig) ändern können, dürfen bei der DigitalRechentechnik die Rechengrößen nur diskrete (genau festgelegte) Zustände annehmen. So darf beim Kugelrechengerät Abacus eine Kugel: entweder: von rechts nach links verschoben werden oder : sie muß auf ihrem ursprünglichen Platz verbleiben. Zwischenzustände sind als Rechenoperation sinnlos (und damit unzulässig). Die Kugel darf also auf dem Draht nur zwei diskrete Stellungen einnehmen.

3.3. Beispiel Ein einfaches Beispiel aus dem Alltag soll uns den Unterschied zwischen Analogund Digital-Rechentechnik veranschaulichen: Geschwindigkeitsmessung mit einem Auto: a) digitale Rechentechnik: das Auto durchfährt z. B.: 1 km Wegstrecke mit konstanter Geschwindigkeit, wofür die Zeit: 100 sec. gestoppt wird. Wegstrecke: 1 km Zeit : 1 0 0 sec. Daraus ergibt sich die Geschwindigkeit über die arithmetische Grundoperation .Division' zu: 1 km/100 sec. = 36 km/h b) analoge Rechentechnik: Tachometer die Geschwindigkeit des Autos wird über die Drehzahl eines Zahnrades und über mechanische Vorrichtungen als Zeigerausschlag auf einer geeichten Skala angezeigt. interessierende Größe (Information): Geschwindigkeit des Autos simulierende physikalische Größe : Zeigerausschlag bzw. Drehzahl des Zahnrades Mit beiden Zuordnungen: kontinuierlich ** analog diskret ** digital ist der wesensmäßige Unterschied zwischen Analog- und Digital-Rechentechnik in leicht faßliche Form gebracht.

14

T e i l I. A l l g e m e i n e G r u n d l a g e n

XI

» •3 a

I

O

6

B> «S, h 9 » §ÖD -"in 5

g & c s^

•a •O

- ^JS G • O 'S & «5 c rt

sB CD £ •g CA ff 3 'S W O * §

8. o

.0

w

cu

10

tm

O c

.2

a>" 2p a 5 £ 2P s S 3 w 5 11 11

¿i a.

•C

I

x

>.

1» N a 3 •G

ff-8 W ^U W C o 0 x> *o ÖD 3 O >>00«

s

'S A . C C s » 3 B

an o 73 c

73

v

•o SS

•C £ 8 oü .. C

Ö Ö >>

73

tM N X Ä

Su(LI

q3

M

I

•a c 3

'S

¿3 "5. E o

SP •a « 5

« c 3

«

.O

ü c

2 eu

•ä D,

5ä :0 a

o •c

E o

Ü VJ .5 [¿J ™ Ii sa Ü

g ^ .a

5

s

C C Ii OJ 00 M e 9

3

e

E

XI 3 * C u 60 O •

£

3 'S c CO M _o •a "«5 c a 3 3 C c S

p 5 3 2 e

O

M

0

J

C c

3 C J3 c>

s cu

•ff

•a a> '5 a

T3 C

xi•

i •5 M 1) IH 4i •a

>

S

e

SS

°

u

•a

I b ,9

v M 60

c s S i a> X) S00 3.

'3 .5 C tu O

w

S

O

c

1

s

'I •e a

« a s

•s

5

3

00 c 3

E E CS

E




tt o £

c 3

co

s

16

Teil I. Allgemeine Grundlagen

3.4. Tabellarischer Vergleich Unter diesem Punkt wollen wir speziell die Analog- und DigLtal-Rechenanlagen einander unter verschiedenen Gesichtspunkten in tabellarischer Form gegenüberstellen (vgl. S. 14/15): Kostenaufwand

B 1/3: Abhängigkeit der Kosten von der geforderten Genauigkeit

3.5. Hybrid-Rechenanlagen Die neuere technische Entwicklung brachte einen weiteren Rechnertypus hervor, den sog. Hybrid-Rechner. Hierbei werden die beiden bekannten Rechenverfahren (Analog- und Digitaltechnik) miteinander gekoppelt. Eine Hybrid-Rechenanlage besitzt sowohl analoge als auch digitale Bauelemente, die elektrisch miteinander verknüpft werden können. Bei der einen Hybrid-Rechenanlage herrscht dabei der analoge Charakter, bei der anderen der digitale vor. Es sind viele Konzeptionen denkbar und zum Teil auch schon verwirklicht. Einen groben Überblick gibt B1/4. Zweifellos steht bei den meisten Aufgaben und Problemen von vornherein fest, ob zur Lösung zweckmäßiger ein Digital- oder ein Analog-Rechner eingesetzt wird. Immer häufiger treten unter den schnell anwachsenden Aufgabenbereichen der modernen Rechentechnik auch Grenzfälle auf. Beispielsweise werden für Echtzeit (real time)-Simulierung sehr vorteilhaft Hybrid-Rechner eingesetzt. Unter einer Echtzeit-Simulierung versteht man die zeitgleiche Nachahmung eines (meist technischen) Systems anhand eines mathematischen Modells. Dieses Verfahren wird z. B. bei Bordnavigationsgeräten von Flugzeugen und bei Prozeßregelungen in der chemischen Industrie angewandt.

17

3. Vergleich: Analog - Digital

Im Gegensatz zum reinen Analog-Rechner hat der Hybrid-Rechner, da er vorteilhaft Eigenschaften der Digital- und Analog-Rechner vereint, noch eine große Entwicklungsmöglichkeit vor sich. Analog-Rechenanlagen

analog mit digitaler Steuerung analog mit digitalen Rechenelementen Kopplung kompletter Analog- u. Digital-Rechenanlagen

HybridRechenanlagen

digital mit analogen Rechenelementen digital mit analoger Programmstruktur

Digital- Rechenanlagen BI/4: Hybrid-Rechnerarten

AUFGABEN zu I, 3. 1. Zu welcher Art von Rechengeräten gehört der Rechenschieber? a) zu: Digital-Rechengeräte b) zu: Hybrid-Rechengeräte c) zu: Analog-Rechengeräte 2. Für die Digital-Rechentechnik sind folgende Begriffe charakteristisch: a) kontinuierlich, stetig b) mathematisch, abstrakt c) diskret, ziffernmäßig 3. Für die Analog-Rechentechnik sind folgende Begriffe charakteristisch: a) diskret, ziffernmäßig b) ähnlich, numerisch c) kontinuierlich, stetig 4. Für numerische Berechnungen mit hoher Genauigkeit verwendet man: a) Analog-Rechenanlagen b) Hybrid-Rechenanlagen c) Digital-Rechenanlagen

18

Teil I. Allgemeine Grundlagen

5. Wozu verwendet man vor allem Analog-Rechenanlagen? a) für Rechnungen sehr hoher Genauigkeit b) für Rechnungen mit viel Zahlenanfall (Datenanfall) c) zur Simulation stetiger Bewegungen und Funktionen 6. Die Genauigkeit bei Analog-Rechenanlagen ist auf 1 bis 0,1% Genauigkeit in bezug auf die Eingabegröße beschränkt durch: a) die mathematischen Rechenmethoden, die bei Analog-Rechenanlagen angewandt werden und die prinzipiell keine höhere Genauigkeit ermöglichen b) begrenzte Rechengeschwindigkeit c) die Rechentechnik, in der die Rechengrößen durch physikalische Größen (meist Spannung) dargestellt wird. Diese Größen können meßtechnisch nicht beliebig genau erfaßt werden. 7. Die Genauigkeitsgrenze bei Digital-Rechenanlagen ist gegeben durch: a) die unvermeidlichen Toleranzen in der elektrischen Darstellung der Binärziffern O, L b) die Stellenzahl der Daten (= Zahl der Bits in einem Wort) bei der gewählten DVA c) die Zugriffszeit des Arbeitsspeichers 8. Was ist eine Hybrid-Rechenanlage? a) eine Rechenanlage; welche die Eigenschaften der Digital- und AnalogRechentechnik kombiniert b) eine besonders große DVA für wissenschaftliche Probleme c) eine DVA für die Steuerung von Ampelanlagen im Straßenverkehr

4. Aufbau einer Digital-Datenverarbeitungsarilage Im folgenden sollen nur noch Digital-Rechenanlagen betrachtet werden. In diesem Sinne wird auch der Begriff Datenverarbeitungsanlage' (oder Rechenanlage oder Computer) benützt, falls keine anderen Einschränkungen dabei gemacht werden.

4.1. Vergleich mit einem menschlichen Rechner Um uns den Aufbau und den Funktionsmechanismus einer DVA verständlich werden zu lassen, ist es am besten, von einem menschlichen Rechner auszugehen. Der menschliche Rechner möge die Aufgabe erhalten haben, den Lohn für einen Akkord-Arbeiter zu errechnen. Dazu stehen ihm zur Verfügung (vgl. B 1/5):

19

4. Aufbau einer Digital-Datenverarbeitungsanlage

1. Tischrechenmaschine 2. (eindeutige) Rechenvorschrift für die Akkord-Berechnung 3. Angaben über den .Arbeiter (Kennzahl, Lohnstufe, erzeugte Stückzahl, Frühöder Spätschicht) 4. Tabellen (über Akkord-Sätze, Schichtzulagen) 5. Notizblock (für Zwischenergebnisse) 6. Ergebnisformular

B 1/5: Menschlicher Rechner und seine Hilfsmittel

Beginnt nun der menschliche Rechner mit der Bearbeitung der gestellten Aufgabe, so ist er nichts weiter mehr als eine Hilfskraft, ja ein Kuli im schlechtesten Sinne des Wortes. Ihm bleibt nämlich nur noch die (bedauerliche) Aufgabe, als mechanische Vermittlung dafür zu sorgen, daß die Anordnungen (Befehle) der Rechenvorschrift korrekt ausgeführt werden. Jede ungewollte oder auch beabsichtigte Abweichung von der Berechnungsvorschrift fuhrt unweigerlich zu einer falschen Lohnberechnung, d. h., das Ergebnis wird wertlos. Unsere Hilfskraft wird also Schritt für Schritt die Befehle der Rechenvorschrift zu erfüllen haben. Befehlfsfolge für: den menschlichen Rechner

die Datenverarbeitungsanlage

Übernahme der Stückzahl-Angabe für Artikel 1

Einlesen der Stückzahl-Angabe für Artikel 1

Eintasten der Stückzahl in den Tischrechner Akkordfaktor aus Tabelle entnehmen

Übergabe der Stückzahl an das Rechenwerk Akkordfaktor aus abgespeicherter Tabelle entnehmen

Eintasten des Akkordfaktors in den Tischrechner

Übergabe des Akkordfaktors an das Rechenwerk

20

Teil I. Allgemeine Grundlagen

Drücken der Multiplikationstaste des Rechners

Multiplikationsbefehl an das Rechenwerk

Ablesen des Ergebnisses und als Zwischenergebnis auf Notizblock schreiben Übernahme der Stückzahl-Angabe für Artikel 2

Übernahme des Zwischenergebnisses vom Rechenwerk in den Speicher Einlesen der Stückzahl-Angabe für Artikel 2

Eintasten der Stückzahl in den Tischrechner

Übergabe der Stückzahl an das Rechenwerk

. usw.

. usw.

Ablesen des bisherigen Zwischenergebnisses vom Notizblock und Eintasten in den Tischrechner

Übernahme des abgespeicherten Zwischenergebnisses in das Rechenwerk

Drücken der Additionstaste

Additionsbefehl an das Rechenwerk

Übernahme der Schichtangabe

Einlesen der Schichtangabe über Eingabegerät

entsprechenden Schichtzuschlag aus Tabelle entnehmen

entsprechenden Schichtzuschlag aus abgespeicherter Tabelle entnehmen

Eintasten in Tischrechner

Übernahme ins Rechenwerk

Drücken der Additionstaste

Additionsbefehl an Rechenwerk

Übernahme der Kennzahl-Angabe

Einlesen der Kennzahl über Eingabegerät

Notieren der Kennzahl-Angabe

Drucken der Kennzahl über Ausgabegerät

Ablesen des Endergebnisses

Übernahme des Endergebnisses vom Rechenwerk

Notieren des Endergebnisses

Drucken des Endergebnisses

Bei all diesen Operationen besteht die Möglichkeit von folgenden Fehlern, die zu einem falschen Ergebnis (hier Lohnberechnung) führen: die die die die

Hilfskraft Hilfskraft Hilfskraft Hilfskraft

liest die Angaben falsch ab, tastet die Angaben falsch ein, liest die Ergebnisse falsch ab, irrt sich beim Niederschreiben der richtig abgelesenen Ergebnisse

Selbst wenn also der Tischrechner richtige Ergebnisse liefert, besteht (vor allem bei längeren Zahlenrechnungen, z. B. wenn mehr als 2 Artikel auftreten) die Gefahr falscher Ergebnisse auf Grund von Unachtsamkeit oder/und Ermüdung unserer Hilfskraft. Um dem Menschen diese und ähnliche unerquicklichen Routinearbeiten abzunehmen, haben sich Ingenieure und Mathematiker darum bemüht, den Menschen aus dieser Situation des Befehlsempfängers herauszunehmen und ihn durch eine Maschine zu ersetzen. Dem Menschen bleibt ,nur' noch die (Denk-)Arbeit der Herstellung von Rechenvorschriften (Programmen).

4. Aufbau einer Digital-Datenverarbeitungsanlage

21

Wie wir aus dem Überblick über die geschichtliche Entwicklung gesehen haben, blieb die Verwirklichung dieser Wünsche den Menschen lange Zeit versagt, bis sie in großem Maße in unserer Zeit gelang. Vorarbeit zu den modernen DVA leisteten die Buchungs- und Lochkartenmaschinen, die vor allem in den Zwanziger Jahren entwickelt wurden. Wird nun unser menschlicher Rechner als koordinierendes Bindeglied durch ein Steuerwerk (control unit) - so nennt man die entsprechende Einrichtung bei einer DVA - ersetzt, so führt dies zur Anordnung entsprechend B 1/6. Daraus entnehmen wir folgende Analogie: Angaben = Eingabe-Einheit (input-unit) Ergebnisse = Ausgabe-Einheit (output-unit) menschlicher Rechner = Steuerwerk (control-unit) Tischrechner = Rechenwerk (arithmetic-unit) Tabellen, Notizblock = Speicher (memory, storage) Rechenvorschrift = Programm (program) Programm

B 1/6: Struktur einer Datenverarbeitungsanlage

Die Funktionen des Tischrechners übernimmt das Rechenwerk der DVA. Die Angaben der Tabellen sind in einem Speicher abgelegt. Auch die Zwischenergebnisse können dort gespeichert werden. Die Angaben über den Arbeiter (und seine Tätigkeit) werden über Eingabegeräte (etwa Lochstreifen- oder Lochkartenleser) in die DVA geschleust. Das Endergebnis wird über ein Ausgabegerät (etwa Fernschreibmaschine oder Lochkartenstanzer oder Schnelldrucker) ausgedruckt. Neben die Befehlsfolge, die für die Hilfskraft gilt, sind auf S. 19 die entsprechenden Befehle gesetzt, die dem Steuerwerk vom Programm her .erteilt' werden. Maschinen, die den in B1/6 gezeigten Funktionsablauf aufweisen, nennen wir (digitale-) Datenverarbeitungsanlagen. Die Beschreibung einer DVA führt dem-

Teil I. Allgemeine Grundlagen

22

entsprechend auf die Beschreibung der in B 1/6 aufgezeigten 5 Grundeinheiten, des Programms und des gegenseitigen Zusammenwirkens. Bevor wir uns aber dieser Aufgabe zuwenden, wollen wir uns mit der Darstellung der Information beschäftigen, die wir in vielfältiger Form als Eingabe-, Ausgabegrößen und Zwischenergebnisse vorliegen haben, speichern und verarbeiten wollen. 4.2. Informationsdarstellung 4.2.1. Begriffe Im weiteren Verlauf werden wir verschiedene Begriffe wie: Zeichen, Alphabet, Daten, Bit, binär, dual, immer wieder verwenden. Es ist also naheliegend, sich mittels klarer Definitionen einen Überblick über Sinn und Geltungsbereich dieser Begriffe zu verschaffen. Sicherlich werden die Definitionen für sich manchmal etwas steril und abstrakt erscheinen. Wir werden aber sehen, daß sie sich gerade durch ihren systematischen Aufbau und ihre klaren Abgrenzungen (etwa gegenüber der Umgangssprache) leicht verstehen und gut merken lassen - vor allem, wenn wir sie im weiteren durch praktische Anwendungen interpretieren. Es ist ratsam, bei späterer Erwähnung eines dieser Begriffe zurückzublättern und sich die entsprechende Definition nochmals vor Augen zu führen. Jegliche Art verwaltender Tätigkeit läßt sich in die vier Grundtätigkeiten: Lesen, Ordnen, Rechnen, Schreiben aufteilen. Unter .Ordnen' sind Vorgänge, wie Sortieren, Selektieren (Auswählen), Mischen etc. zu verstehen. 3 Informationsarten:

4 Grundtätigkeiten: •

Lesen

>

Ordnen: Sortieren Selektieren Mischen etc.

>

Rechnen

*

Schreiben

-4



Oberbegriffe:

Ordnungsinformationen Daten

*• Mengeninformationen

>

Steuerinformationen

Befehle

B 1/7: Grundtätigkeiten und Informationsarten

Diese vier Grundtätigkeiten sind an drei mögliche Informationsarten gekoppelt. Diese sind: Ordnungsinformationen, Mengeninformationen und Steuerinformationen. Ordnungsinformationen sind beispielsweise: Konto-Nr., Kennzahlen,

23

4. Aufbau einet Digital-Datenverarbeitungsanlage

Abteilungs-Nr., Haus-Nr., Namen, Straßenbezeichnungen etc. Sie bilden die Ausgangsgrößen für die Grundtätigkeit des Ordnens. Gerechnet dagegen wird mit Mengeninformationen, wie Stückzahlen, Preisen und Umsatzwerten. Ordnungsund Mengeninformationen faßt man unter dem Oberbegriff Daten zusammen. Um die Ausführung einer oder mehrerer der vier Grundtätigkeiten zu veranlassen, bedarf es des Befehls, der Instruktion, der Anweisung. Informationen dieser veranlassenden, initiierenden Art nennt man Steuerinformationen. Wir definieren folgende Begriffe: Zeichen Ein Zeichen ist ein Symbol aus einer Menge von Symbolen, die zur Darstellung von Informationen dienen. In der DV unterscheiden wir drei Arten von Zeichen: a) numerische Zeichen = Ziffern (digit): z.B.: b) alphabetische Zeichen = Buchstaben : z. B.: oder: c) Sonderzeichen : z. B.:

0 1 ... A B ... aß... + —...

8 9 Y Z i// co = /

Die Gesamtheit der Zeichen (d. h., die gesamte Menge dieser Informations-Symbole) bezeichnen wir jeweils als Alphabet, wobei wir ganz entsprechend unterscheiden: a) Ziffern -Alphabet b) Buchstaben -Alphabet c) Sonderzeichen-Alphabet Wir können also sagen: das Zeichen 9 ist ein Symbol aus der Symbolmenge: Ziffern-Alphabet das Zeichen B ist ein Symbol aus der Symbolmenge: Buchstaben-Alphabet das Zeichen + ist ein Symbol aus der Symbolmenge : Sonderzeichen-Alphabet Daten Daten sind Ordnungs- oder Mengeninformationen. Sie werden in eine DVA: eingegeben, dort verarbeitet und ausgegeben. (Beachte: Einzahl von Daten ist Datum. In diesem Sinne wird dieser Begriff im folgenden benützt und nicht etwa in seiner Umgangssprachen-Bedeutung als Terminangabe!)

24

Teil I. Allgemeine Grundlagen

Wir unterscheiden drei Arten von Daten: a) numerische Daten numerische Daten (Zahlen) sind Daten, die sich aus numerischen Zeichen (Ziffern) und evtl. noch Sonderzeichen (wie Vorzeichen +, —) zusammensetzen. b) alphabetische Daten alphabetische Daten sind Daten, die sich nur aus alphabetischen Zeichen (Buchstaben) zusammensetzen. c) alpha-numerische Daten alpha-numerische Daten sind Daten, die sich aus beliebigen Zeichen (Ziffern, Buchstaben, Sonderzeichen) zusammensetzen. Wort Ein Wort ist eine zusammengehörige Folge von Zeichen. Die Wortlänge ist i. a. konstant, d. h., ein Wort besteht stets aus einer ganz bestimmten Anzahl von Zeichen, die innerhalb der DVA gemeinsam verarbeitet und gemeinsam (unter einer Adresse) abgespeichert werden. Die Mehrzahl von ,Wort' wird - fälschlicherweise - als .Worte' bezeichnet.

Feste Wortlänge Bei großem Rechenaufwand, d. h., vornehmlich bei technisch-wissenschaftlicher Anwendung von DVA, setzt man Maschinen mit fester Wortlänge ein. Die Wortlänge ist dabei von Fabrikat zu Fabrikat verschieden - sie liegt i. a. zwischen 4 und 16 Zeichen je Wort.

Variable Wortlänge DVA mit variabler Wortlänge findet man häufig bei kaufmännischer Anwendung der DV, um bei den in ihrer Länge stark schwankenden Begriffen wie: Name, Anschrift, Konto-Stand etc., den Speicher besser ausnützen zu können. Ebenso wie beim Begriff .Daten' unterscheidet man auch beim Begriff ,Wort': a) numerisches Wort ein numerisches Wort ist ein .numerisches Datum' b) alphabetisches Wort ein alphabetisches Wort ist ein .alphabetisches Datum' c) alpha-numerisches Wort diese Bezeichnung umfaßt zwei Begriffe: 1. alpha-numerisches Datum 2. Befehl Befehl Ein Befehl ist ein alpha-numerisches Wort mit speziellen Steuerfunktionen. Ein Befehl bildet die Elementar-Instruktion (Elementar-Anweisung) innerhalb eines

4. Aufbau einer Digital-Datenverarbeitungsanlage

25

Programms. Ein Befehl gibt also dem Steuerwerk die Anweisungen für den folgenden Schritt im Ablauf der Rechenoperation. Befehle sind also ebenso wie alpha-numerische Daten aus beliebigen Zeichen (Ziffern, Buchstaben, Sonderzeichen) aufgebaut, unterscheiden sich von diesen aber dadurch, daß sie nicht als Rechengrößen ein- und ausgegeben sowie verarbeitet werden, sondern dies eigentlich selbst veranlassen. Programm Ein Programm ist die Folge von Befehlen (Einzel-Instruktionen), welche von der DVA unter Lenkung durch das Steuerwerk nacheinander ausgeführt wird. Speicherprogrammierte DVA Ähnlich den Daten (etwa Kennzahlen oder Stückzahlen) wird bei einer speicherprogrammierten DVA auch die Befehlsfolge für die auszuführenden Operationen, d. h., das Programm, im Speicher aufbewahrt. Vor Beginn des Rechengangs wird also das Programm in den Speicher eingelesen. Während des Rechengangs wird Befehl um Befehl des Programms vom Steuerwerk aus dem Speicher übernommen und ausgeführt. Das abgespeicherte Programm steuert also ohne weitere äußere Eingriffe den Ablauf des Rechengangs. Die Idee des .abgespeicherten Programms' stammt von dem Mathematiker Neumann (vgl. S. 8). Satz Ein Satz besteht aus mehreren Worten, deren Inhalt logisch zusammenhängt. Ein Satz kann beispielsweise die Kto.-Nr., den Kto.-Stand und das Datum der letzten Kto.-Änderung eines Kunden umfassen — also Angaben, die etwa in einer Lochkarte abgespeichert sind. Block Ein Block besteht aus ca. 10 Sätzen, deren Inhalt ähnlich geartet ist. Ein- und Ausgabe erfolgen meist blockweise. Fernübertragung von Daten (etwa über gewöhnliche Telefonleitungen) erfolgt ebenso blockweise, da hierdurch eine relativ einfache Fehlersicherung erreicht werden kann (vgl. III, 2.4.7.2). Tabelle B 1/8 und B1/9 folgt Seite 26

AUFGABEN zu 1,4.2.1. 1.

Welche verwaltende Grundtätigkeiten gibt es? a) Lesen, Ordnen, Rechnen, Schreiben b) Lesen, Sortieren, Selektieren, Schreiben c) Lesen, Addieren, Subtrahieren, Schreiben

2.

Welche Informationsarten gibt es? a) Eingabe-, Ausgabeinformationen

26

Teil I. Allgemeine Grundlagen

27

4. Aufbau einer Digital-Datenverarbeitungsanlage

b) Ordnung»-, Mengen-, Steuer(ungs)informationen c) Ordnungsinformationen, Daten, Befehle 3.

Unter einem .Zeichen' versteht man in der Datenverarbeitung: a) ein elektrisches Signal b) einen Maschinenbefehl c) ein Symbol aus einer Menge von Symbolen, die man Alphabet nennt

4.

Was bedeutet der Begriff .numerisch'? a) zahlen-, ziffernmäßig b) nach Nummern geordnet (etwa Speicherordnung) c) nur mit Digital-Rechenanlagen lösbar

5.

Innerhalb des Begriffs .Alphabet' unterscheidet man: a) Ziffern-, Buchstaben- und Sonderzeichen-Alphabet b) Eingabe-, Intern- und Ausgabe-Alphabet c) Eingabe-, Maschinen- und Ausgabe-Alphabet

6.

Das Wort M2/K3 gehört folgender Begriffsklasse an: a) Befehl b) numerische Daten c) alpha-numerische Daten (und damit zu: alpha-numerische Worte)

7.

Die DVA mit fester Wortlänge arbeiten mit ca

Zeichen je Wort:

a) 10 b) 50 c) 100 8.

9.

Wo werden DVA mit variabler Wortlänge eingesetzt? a) bei kaufmännischen Problemen, weil häufig Ausdrücke (Namen, Bezeichnungen) verschiedener Länge auftreten und der Speicher dennoch voll ausgenützt werden soll b) bei wissenschaftlich-technischen Problemen, da oft verschiedene Genauigkeit gefordert wird und diese von der Stellenzahl je numerisches Wort abhängt c) bei DVA mit viel Datentransport zwischen Zentraleinheit und Magnetbandspeicher-Einheit Der umfassendere Begriff der drei Begriffe: Wort, Datum, Befehl, ist: a) Datum, er beinhaltet den Begriff ,Wort' und dieses wiederum den Begriff .Befehl' b) Wort, er umschließt die übrigen zwei Begriffe c) keiner, alle drei sind gleichgeordnet

10.

Was versteht man unter .Speicherprogrammierten DVA'? a) DVA, bei denen das Programm zunächst in einer Symbolsprache ein-

28

Teil I. Allgemeine Grundlagen

gelesen, von der Maschine in die eigene (Maschinen-)Sprache übertragen und in den Speicher eingeschrieben wird b) DVA, bei denen das Programm (= Befehlsfolge) ebenso wie die zu verarbeitenden Daten im Speicher der Anlage aufbewahrt und Befehl um Befehl vom Steuerwerk während des Rechenablaufs abgerufen wird c) DVA, bei denen durch geschickte Ausnutzung der Symmetrieeigenschaften des Speichers besonders schnelle Programme erstellt werden können 11.

Was sind die Grundbausteine eines Programms? a) Entscheidungen b) Daten c) Befehle

4.2.2. Elektrische Darstellung als Binärzeichen

Es erhebt sich nun die Frage, in welcher (logischen und physikalischen) Form wir die besprochenen Zeichen innerhalb der Ein- und Ausgabegeräte sowie der anderen Grundeinheiten der DVA darstellen können. Die Darstellung der Zeichen geschieht durch Signale, speziell elektrische Signale: Spannungen. Wie wir noch sehen werden, ist es vorteilhaft, nur zwei diskrete Zustände (Signalwerte) zu unterscheiden: entweder Spannung vorhanden oder Spannung nicht vorhanden. Man nennt solche Signale, die nur zwei bestimmte Zustände (Signalwerte) annehmen können, binär = zweiwertig (engl, binary). Die beiden möglichen Zustände bezeichnet man mit den Binärzeichen O und L. ,L' verwendet man, um die binäre Eins (L) von der dezimalen Eins (1) zu unterscheiden. Man sagt ,die Ell', weil es ,die Eins' heißt. Das Binär-Alphabet besteht also aus den zwei Zeichen O und L. Man hat nun zwei Möglichkeiten der Zuordnung: entweder: L = positive Spannung 0 = keine Spannung oder : L = keine Spannung 0 = positive Spannung Spannung u

B1/10: Spannungs-Zeit-Diagxamm für die Zeit t

Zeichenfolge L O L L

4. Aufbau einer Digital-Datenverarbeitungsanlage

29

Meistens wählt man die 1. Möglichkeit. Die zeitliche Reihenfolge des Spannungssignals für die Zeichenfolge: L O L L ergibt sich somit nach B 1/10. Eine wichtige Abkürzung für Binärzeichen ist: bit (engl.: bit = binary digit = Binärziffer) 1 bit ist also 1 Alternativentscheidung — nämlich die Entscheidung zwischen O und L. Als Hauptwort wird ,Bit' groß geschrieben. Mehrzahl von ,Bit' ist ,Bits'. Als Zähl-(Maß-)Einheit für die Alternative 0 oder L wird ,bit' klein geschrieben. Ebenso wie ,das Kilogramm' groß und ,10 kg' klein geschrieben werden. Wir werden in Teil III noch sehen, daß man alle logischen Entscheidungen auf die Elementar-Entscheidung zwischen O und L (= 1 bit) zurückfuhren kann. Dementsprechend verwendet man dort (in der Informationstheorie III, 1) auch ,1 bit' als Maßeinheit für den Informationsgehalt einer Nachricht. Die Verwendung des Binär-Alphabets bringt u. a. den Vorteil mit sich, daß man nur zwischen zwei (Spannungs-)Zuständen (O und L) unterscheiden muß. Bei Verwendung etwa des Dezimal-Alphabets wären es dagegen zehn Zustände (0, 1 . . . 8, 9)! Alle Spannungszustände höher als ü/2 werden als L interpretiert, alle Spannungszustände tiefer als ü/2 werden als 0 interpretiert (vgl. B1/11). Es können also große Toleranzen in der Spannungsschwankung zugelassen werden, was sich vor allem bei der technischen Verwirklichung günstig auswirkt. Spannung u

Ü/2

' •" • als:

L

* O

L

• L

Zeit t

interpretiert

B 1 / 1 1 : zulässige Spannungstoleranzen

Das Binär-Alphabet bringt neben diesem Vorteil der großen Spannungstoleranzen noch weitere (etwa bei Rechenmethoden (vgl. Teil II)) mit sich.

30

Teil I. Allgemeine Grundlagen

4.2.3. Anwendung von Codes zur Zeichendarstellung

Die Verwendung eines Alphabets mit nur zwei Zeichen ( 0 und L) bringt natürlich auch Nachteile gegenüber der Verwendung eines Alphabets mit mehr Zeichen (etwa 10) mit sich. Wollen wir etwa die zehn Zeichen 0,1, . . . 9 des Dezimal-Alphabets oder die 26 Buchstaben des Buchstaben-Alphabets in Binärzeichen (O und L) ausdrücken, so müssen wir jeder Dezimalziffer bzw .jedem Buchstaben eine bestimmte Kombination mehrerer Binärzeichen zuordnen. Diese Zuordnung (die für Hin- und Rückwandlung eindeutig sein muß) nennt man Code = Schlüssel (engl.: code). Der Ausdruck ,Code' wird — abweichend von dieser Definition — auch zur Bezeichnung für das Alphabet 2, in das umgewandelt werden soll, verwandt (vgl. unten: BCD-Code). Mehrzahl von ,Code' ist,Codes'. Codieren = Verschlüsseln, nennt man den Vorgang der Zuordnung eines (meist allgemeineren) Alphabets j in ein (meist spezielleres, technisches) Alphabet 2 . Decodieren ist die Umkehrung der Codierung.

Code Alphabet]


M • ö B x a > e c tj x t 3* ü M M o o 3 « « j «2 2 h n m ^ vi

4 >

a

S < u o C 4 > '§ o n.: c v J2 3w o £c -c •S M o o ö 'u J3 J junS h in ri ^ vi

= s « o 0 ) o > • CM C C S O M ö o o > J2 J2 JnIASS H ri m ^ t vi

c o

.4.

ts JG u S l -i cd .2 e .s

-C

C J a> HB Ö Q c s g « r? c &o bi o = a :0 S 3
o

aî •C o l-J

S A U jM

5

•S o •a a a

S « a

) bzw. kleiner ( 2 und: 0 < bj < B können wir ein allgemeines polyadisches Zahlensystem folgendermaßen definieren und beschreiben:

mit der Basis B

a) Stellenschreibweise: gebrochene Zahlen Z = bn N

Vi

b j b„, b.j b_2 /

ganze Zahlen

b m + 1 bm

2. Zahlensysteme

93

b) Potenzschreibweise (ausgeschrieben) z = b n - Bn + b n . , • Bn

l

+ . . . + b j • B 1 + b 0 - B° + b_! • B"1 + . . . + b m - B m

c) Potenzschreibweise (Kurzform) n z = ^ b i B i i=m Für die Grenzen m und n gelten dieselben Angaben wie in B II/5. Unter ,polyadische Zahlensysteme' fassen wir alle Zahlensysteme zusammen, die in oben angegebener Weise auf der Stellenschreibweise aufbauen. Andere Zahlensysteme wären etwa die ,Restklassen-Systeme'. Ihre Anwendung bei DVA hat allerdings noch keine größere praktische Bedeutung erlangt.

102

1

101

10°

1 1 1 1 1 1 1 1

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7

2

7

0

0

Hexadezimal

Oktal

Quinär

Dezimal

16°

1 1 1 1 1 1 1 1 2 2

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1

1 1

0 1 2 3 4 5 6 7 8 9 0' 1' 2' 3' 4' 5' 0 1

3

3

1

1'

4

4

6

4



1 1 1 1 1 •2 2 2 2 2 3 3 3

0 1 2 3 4 0 1 2 3 4 0 1 2 3 4 0 1 2

1

0

2

4

0

0

51



8J

161

81

52

1

B 1176: Ganze Zahlen in verschiedenen Zahlensystemen

94

Teil II. Mathematische Grundlagen

In BII/6 sind einige ganze Dezimalzahlen und die Formen, wie sie in verschiedenen anderen polyadischen Zahlensystemen auftreten, aufgeführt. Das DualSystem ist dabei ausgelassen, da es im folgenden Abschnitt gesondert behandelt wird. Interessant auch ist das Hexadezimal-System (hexadezimal = 16), das auf der Basis B = 16 aufbaut. Dieses System wird immer häufiger bei DVA eingesetzt. Sein Vorteil beruht darin, daß man mit 4 bit gerade 4 2 = 4 • 4 = 16 unterscheidbare Binär-Zustände angeben kann, was gerade einer Hexadezimalstelle entspricht. Pseudotetraden treten hier also nicht auf. Das Hexadezimal-Alphabet besteht natürlich aus 16 Ziffern. Da wir aus dem üblichen Dezimal-Alphabet nur zehn Ziffern (0,1, 8, 9) kennen, haben wir für B II/6 sechs weitere erfunden (0', 1', 2', 3', 4', 5'). 2.1.3. Dual-System

Der Mathematiker Leibniz hat sich als erster intensiv mit dem Dual-System beschäftigt (vgl. I, 2). Wie der Name ,Dual' (= 2) schon sagt, ist beim Dual-System die Basis B = 2. Dies ist die kleinstmögliche Basis eines polyadischen Zahlensystems. Als Dual-Alphabet, das ja nur aus B = 2 Ziffern besteht, verwenden wir die früher eingeführten Binärzeichen 0 und L. 2.1.3.1. Definition Nachdem wir uns im vorhergehenden Abschnitt die Darstellung des allgemeinen polyadischen Zahlensystems klargemacht haben, können wir nun rückwärts leicht auf die Definition des Dualsystems als Spezialfall eingehen. Aus 2.1.2. entnehmen wir mit B = 2 und der Einschränkung: bj = 0 oder L die allgemeine Darstellung einer beliebigen Dualzahl: in Stellenschreibweise: z = t»n b„.!

b, b Q , b_! b. 2

b m + 1 bm

in ausgeschriebener Potenzschreib weise: z = b n - 2" + . . . . + b j • 2 1 + b 0 - 2° + b.! • 2"1 + . . . . + b m - 2 m in Kurzform:

n i=m

In B II/7 sind zum Vergleich die ersten 17 Zahlen des Dezimal-Systems ihrer Dualform gegenübergestellt. Jede Verschiebung einer Dualzahl um eine Stelle nach links bzw. rechts bewirkt eine Verdoppelung bzw. Halbierung, da jede Dualstelle den Faktor 2 bedeutet. Allgemeiner können wir formulieren:

2. Zahlensysteme

95

Die Verschiebung einer Dualzahl um s Stellen nach links bzw. rechts bedeutet eine Multiplikation bzw. Division mit der Zahl: 2 S . Das Verschieben ist recht einfach durch sogenannte Verschiebe-Befehle durchzufuhren.

dual

dezimal

Stellenwert: 2

= = = = =

O L

L L

L L L L L L L L O 0

L L L L O 0 0 O L L L L O O

L L 0 0 L L 0 0 L L 0 0 L L 0 O

O L

O

0 1 0 1 0

2° 2° 2° + 1 2° + 1 2° + 0

L

O L

O L

O L

O L

O L

O L

B II/7: Vergleich von Dual- und Dezimal-Zahlen

Beispiel: Die Division durch die Zahl 8 geschieht durch s = 3 Stellenverschiebungen nach rechts, da 8 = 2 3 . dezimal: dual

16 LOOOO

LOOO

8 = 2 = LO

3 Rechtsverschiebungen

Teil II. Mathematische Grundlagen

96

Aus B II/7 können wir entnehmen, daß im Dual-System die Stellenzahl bedeutend schneller zunimmt als beim Dezimal-System. Im Abschnitt über Informationstheorie (Teil III) werden wir sehen, daß eine Dualzahl im Durchschnitt 3,3 mal soviel Stellen aufweist als die entsprechende Dezimalzahl. Dies erklärt sich natürlich aus dem kleinen Dual-Alphabet, das nur die Unterscheidung zweier Zeichen (O und L) erfordert. Die hohe Stellenzahl und der monotone 0,L-Wechsel erschweren natürlich sehr die Merkbarkeit von Dualzahlen. Andererseits ist gerade das kleine Alphabet (O, L) ein bedeutender Vorteil des Dual-Systems in der Anwendung in DVA. Die meisten elektronischen und magnetischen Bauteile zeichnen sich nämlich durch zwei stabile Zustände aus. 2.1.3.2. Unterschied: Binär - Dual Obwohl es in der Praxis und teilweise auch in der Literatur nicht konsequent eingehalten wird, wollen wir doch zwischen dem Dual-System und den BinärSysteme« unterscheiden. Das Dual-System wurde oben eindeutig als das polyadische Zahlensystem mit der Basis B = 2 definiert. In ihm wird die gesamte Zahl aus 2er Potenzen aufgebaut, die latent in den Ziffernstellen mitgeliefert werden. Im Gegensatz dazu verstehen wir unter einem Binär-System irgendein Zahlensystem, das mit nur 2 Elementen (0, L) in der Zahlendarstellung auskommt. Ein solches Binär-System haben wir schon in der Tetradenverschlüsselung der Dezimalziffern kennengelernt (vgl. 1,4.2.3). Dort lag ein Dezimal-System.vor, dessen einzelne Ziffern durch die Binärzeichen O und L als Tetrade dargestellt waren. Der Begriff,Binär-System' ist also ein übergeordneter Begriff, der sich auf die binäre Darstellungsweise und nicht auf den inneren Aufbau des Zahlensystems bezieht. Da das Dual-Alphabet (O, L) mit dem Binär-Alphabet übereinstimmt, ist das Dual-System nur ein Sonderfall der Binär-Systeme.

Beispiel:

1 O O O L l O L L L

24 weitere

+



L O O O L

Binär-Systeme 1 Dezimalstelle B II/8: Binär-Systeme, Dual-System

5 Dualstellen

= 17

97

2. Zahlensysteme

A U F G A B E N zu II, 2.1. 1. Wie lautet im Dezimal-System die Potenzschreibweise für den in Stellenschreibweise angegebenen Ausdruck: 906,04? a) 906,04 = 9 • 10 2 + 0 • 10 1 + 6 • 10° + 0 • 1 0 1 + 4 • 10" 2 b) 906,04 = 9 • 10 2 + 0 • 10 1 + 6 • 10° - 0 • 10 1 - 4 • 10 2 c) 906,04 = 9 • 10 2 + 0 • 10 1 + 6 • 10° - 0 • 10" 1 - 4 • 10" 2 2. In welchem polyadischen Zahlensystem ist die Zahl z angegeben und welchen Charakter hat sie, wenn ihre Kurzform lautet: o

z = 2 > i - 16 j i=-3

a) tetraden-dezimales System, da die Basis B = 2 4 = 16 Charakter: ganzzahlig, da i ganzzahlig. b) Oktal-System, da die Basis B = 2 • 8 = 16 Charakter: endlich, echt gebrochen, da i endlich und untere Grenze m = - 3 negativ. c) Hexadezimal-System, da die Basis B = 16 Charakter: endlich, echt gebrochen, da obere Grenze n = 0 und untere Grenze m = - 3 ganz, negativ und endlich 3. Was versteht man unter ,polyadisches Zahlensystem'? a) ein Zahlensystem, das nur mit unecht gebrochenen Zahlen operiert b) ein Zahlensystem, das auf der Stellenschreibweise aufbaut, wobei jede Stelle einen weiteren Faktor B (= Basis des Zahlensystems) bedeutet c) ein Zahlensystem, bei dem die einzelnen Ziffern als Tetrade, d. h., aus 4 bit, aufgebaut ist 4. Welcher der beiden Begriffe — Binär-System, Dual-System — ist der übergeordnete? a) Dual-System b) Binär-System c) stehen in keinem Zusammenhang

2.2. Festkomma-Darstellung 2.2.1. Begrenzte Stellenzahl Bei DVA mit fester Wortlänge verfugt ein Wort über eine (durch die technische Konzeption) festgelegte (Bit-)Stellenzahl. Sie beträgt 20 bis 60 bit, wobei ca. 40 bit das Übliche ist. Mit 40 bit lassen sich darstellen: entweder: eine Dualzahl mit 40 bit, was 40 : 3,3 = 12 Dezimalstellen entspricht oder: 40 : 4 = 10 Dezimalstellen tetradenverschlüsselt.

Teil II. Mathematische Grundlagen

98

DV-Modelle aus modernen Familiensystemen (vgl. S. 10) mit variabler Wortlänge benutzen für die Daten- und Befehlsdarstellung die Byte-Struktur.

Feste Wortlänge

Beispiele

Variable Wortlänge (Byte-Maschine)

alphabetische Daten: :

4 Bytes

O O A P P T

Name

A

M A H L E R

Name

M A ]~H I L~[~E I R I = 6 Bytes

P

P

T

numerische Daten: 680921 68

0680921C

0 6 8C

= 4 Bytes :

2 Bytes

BII/9: Feste und Variable Wortlänge

Der Ziffernteil des letzten Byte bei numerischen Daten in gepackter Darstellung (vgl. B 1/18) enthält die Hexadezimalziffer LLOO, die oft mit C abgekürzt wird. Sie kennzeichnet das positive Vorzeichen. Bytemaschinen weisen nicht nur Datenworte sondern auch Befehlsworte variabler Länge auf. Die Befehlsliste derartiger DVA kennt 5 Befehlsformate, wobei für einen Befehl 2 , 4 oder 6 Bytes vorgesehen sind. Für die Darstellung einer Zahl in einer DVA fester Wortlänge haben wir eine ganz bestimmte — von Maschinentyp zu Maschinentyp verschiedene, innerhalb eines Typs jedoch festgelegte - Stellenzahl zur Verfügung (in B II/9 sind es 6 Dezimalstellen). Wir können somit nur eine Ziffernfolge mit begrenzter Stellenzahl verwirklichen. Besitzt die darzustellende Zahl mehr Ziffern, so ist sie in unserer DVA überhaupt nicht darstellbar — oder wir schneiden die überzähligen Stellen ab. Lostrennen werden wir natürlich die niedrigen, d. h., rechten Stellen, da ihr Weglassen die geringste Verfälschung mit sich bringt. Besitzt die darzustellende Zahl dagegen weniger Ziffern als zulässig, so brauchen wir nur die übrigen, hohen Stellen mit Nullen aufzufüllen — die Zahl wird also in diesem Fall in ihrem Wert nicht verändert. Nehmen wir an, wir hätten eine DVA mit einer Wortlänge von — zur einfacheren Darstellung unüblicherweise — nur 5 Dezimalstellen (bei der Darstellung im Dual-System ergeben sich völlig analoge Verhältnisse!). B II/10 zeigt dann die Möglichkeiten bei dieser begrenzten Stellenzahl.

2. Zahlensysteme

99

vorgegebene Zahl:

6809215

Darstellung

68092

Methode

:

68

00068 mit 000 auffüllen

Weglassen von 15

B 11/10: Zahlendarstellung bei begrenzter Stellenzahl

Lassen wir auch gebrochene Zahlen zu, so genügt natürlich zur Charakterisierung die Ziffernfolge allein nicht mehr. Das Komma ist hier noch von entscheidender Bedeutung. Es trennt den ganzen vom gebrochenen Anteil der Zahl. Man unterscheidet nun zwei Arten der Festlegung und Kennzeichnung der Kommaposition: Festkomma- und Gleitkomma-Darstellung. 2.2.2. Definition

Bei einer DVA mit Fesfkomma-Darstellung werden die Zahlen so behandelt, als stünde das Komma bei allen Zahlen an derselben, festen Stelle. Es bleibt dem Programmierer überlassen, die Zahlen so umzuformen, daß dies auch wirklich der Fall ist. Da also das Komma immer an einer festen Position ,steht', braucht man es überhaupt nicht mitzuführen (etwa als besondere Bit-Stelle). Dies brächte ja keine zusätzliche Information. An welcher Stelle man sich das Komma denkt, ist grundsätzlich gleichgültig — es kommt nur auf die relative Lage bei den verschiedenen Zahlen an. Günstig, übersichtlich und üblich ist es jedoch, das Komma entweder nach der niedersten Stelle oder vor der höchsten Stelle anzubringen. Das bedeutet aber, daß die Zahlen alle entweder als ganz oder als echt gebrochen behandelt werden (vgl. B II/11). Wir verwenden also für die Festkomma-Darstellung die Definition des polyadischen Zahlensystems (vgl. 2.1.2), wobei wir die Summengrenzen m und n für ganz bzw. echt gebrochene Zahlen aus B II/5 entnehmen. Die Definition ist allgemein, die Basis B kann also beliebig gewählt werden (z. B. B = 10 oder B = 2). Darstellung als: ganze Zahl + m

bn

bn-l

echt gebrochene Zahl bo

=0

n + 1 = zulässige Stellenzahl B 11/11: Komma-Anordnung bei Festkomma

b-i

b-2

-m

= zulässige Stellenzahl

n

=- 1

bm

+

100

Teil II. Mathematische Grundlagen

Um auch negative Zahlen darstellen zu können, wird ein eigenes Vorzeichen-Bit entweder vornangestellt oder hinten angehängt. Für diese Bit-Stelle kann man beispielsweise vereinbaren: 0 bedeutet +, d. h., positive Zahl L bedeutet - , d. h., negative Zahl Durch die begrenzte Stellenzahl und das feste Komma ist natürlich ein ganz bestimmter Zahlenbereich als darstellbar festgelegt. Dieser ist z. B. bei einer DVA mit 5 Dezimalstellen: 00000 bis 99999 bzw. 0,00000 bis 0,99999 allgemein bei s Dezimalstellen (B = 10): 0 bis 10s - 1 bzw. 0 bis 1 - 10 s allgemein bei einem polyadischen Zahlensystem mit der Basis B und s Stellen: 0 bis Bs - 1

bzw. 0 bis 1 - B s

Die eine Darstellungsweise hat nun nicht etwa der anderen etwas voraus. Durch Wahl geeigneter Maßstabsfaktoren (hier 10"s bzw. 10 5 ) kann nämlich der eine Zahlenbereich in den anderen übergeführt werden. Beispiel: Wir wollen die beiden Zahlen 680921 und 3,2 in normalisierter Form bei 5-stelliger Wortlänge darstellen. Unter .Normalisieren' versteht man in diesem Zusammenhang die Verschiebung der Zahl so weit nach rechts oder nach links, daß die 1. Ziffer (links) ungleich Null ist. Mit anderen Worten: eine normalisierte Zahl ist gekennzeichnet durch: b n

0

Die eventuell notwendigen Verschiebungen sind leicht mit den Verschiebebefehlen durchzuführen. normalisierte Form der Zahlen 680921 und 3,2

Maßstabsfaktor bei Darstellung als: ganze Zahl 1

68092

•10

32000

•10"4

echt gebrochene

• 106 101

B11/12: Normalisierung und Maßstabsfaktor

Da die Maßstabsfaktoren in einer DVA mit Festkomma nicht mitgeführt werden, muß der Programmierer darauf achten, daß während des Programmablaufs stets nur Zahlen addiert oder subtrahiert werden, die in diesem Moment gleichen Maßstabsfaktor besitzen! Ist dies nicht der Fall (wie etwa in B11/12), so müssen die

101

2. Zahlensysteme

beiden Operanden vor Ausfuhrung der Operation zuerst durch Verschiebebefehle auf die Form mit gleichem Maßstabsfaktor gebracht werden (vgl. B II/13). Aus dem 2. Beispiel in B II/13 entnehmen wir, daß aufgrund der beiden unerläßlichen Bedingungen: gleiche Maßstabsfaktoren der Operanden, begrenzte Stellenzahl (hier 5 Dezimalstellen) die Ziffer 2 im Operanden 3,2 und damit auch im Ergebnis verloren geht. Statt dem richtigen Ergebnis 68095,2 erhalten wir nur 68095. Addition der Zahlen 6809 und 3,2: Maßstabsfaktoi bei Darstellung als: inte rne Darst eilung

ganze Zahl

echt gebrochene Zahl

68090

•10"»

•104

+

00032

• 10"1

•104

=

68122

• 10"1

•104

68092

• 10°

• 10s

+

00003

• 10°

• 10 5

=

68095

• 10°

• 10 5

Ergebnis: 6809 + 3,2 = 6812,2 Addition der Zahlen 68092 und 3,2:

Ergebnis: 68092 5 Stellen

+3,2

=68095

abge-

5 Stellen

schnitten B 11/13: Addition bei Festkommadarstellung

Da die Maßstabsfaktoren innerhalb der D V 4 nicht vorhanden sind, können sie auch mit dem Ergebnis nicht ausgedruckt werden. Der Programmierer erhält als Ergebnis nur eine Ziffernfolge, die Kommastelle dazu muß er selbst ermitteln. Wir haben also dieselben Verhältnisse vor uns wie bei einer Tischrechenmaschine oder beim Rechenschieber. Auch dort werden die Zehnerpotenzen (= Maßstabsfaktoren des Dezimal-Systems) und damit die Kommastelle gesondert bestimmt. Diese Ermittlung der Kommastelle ist natürlich recht einfach bei Aufgaben, in denen praktisch nur Zahlen mit gleicher Kommastellung und damit gleichen Maßstabsfaktoren vorkommen. Umständliches Operieren mit Maßstabsfaktoren ist hier nicht nötig. Dies ist etwa bei der kommerziellen Anwendung von DVA

102

Teil II. Mathematische Grundlagen

der Fall. Bei Buchungen, Lohnberechnungen, Bestellungen usw. treten stets DMund bzw. oder Pfennig-Beträge auf. Das Komma ist hier stets vor der zweitletzten Stelle zu denken (m. a. W.: bei Darstellung als ganze Zahlen tritt stets der Maßstabsfaktor 10"2 auf)- Mit 10 Dezimalstellen ist dabei der Bereich von 0 bis 99 999 999,99 DM zu verwirklichen. Gänzlich anders liegen dagegen die Verhältnisse bei der wissenschaftlich-technischen Anwendung von DVA. Hierbei treten nämlich Zahlen auf, die sich um viele (bis zu 100) Zehnerpotenzen unterscheiden. Hier stets passende Maßstabsfaktoren aufzufinden, wäre recht umständlich. Man kennt deshalb bei DVA noch eine zweite Zahlendarstellung, die sog. Gleitkomma-Darstellung. Wir werden uns damit in 2.4. eingehend beschäftigen. Die modernen DVA beherrschen fast alle beide Darstellungsarten von Zahlen.

\ 2.2.3. Die Grundrechenarten bei Festkomma-Darstellung

In diesem Abschnitt wollen wir die 4 Grundrechenarten (Addition, Subtraktion, Multiplikation, Division) und ihre Ausführungen am Dezimal- oder bzw. und Dual-System vorführen. Es bedeutet aber nicht viel Mühe, diese Methoden gegebenenfalls entsprechend auch auf andere Zahlensysteme zu übertragen. 2.2.3.1.

Addition

Durch direkte Verwendung des Binär-Alphabets ( 0 , L) besitzt das Dual-System die schon erwähnten Vorteile: hohe Betriebssicherheit und Einfachheit in der Zahlendarstellung. Ein weiterer großer Vorteil sind die höchst einfachen Rechenregeln. Da im DualSystem nur die Zeichen O und L vorkommen, liegt hier ein .Einmaleins' im wahrsten Sinne des Wortes vor. Für die Addition zweier Dualstellen gelten vier einfache Regeln (vgl. B II/14).

o + o=

0

0 +L =L L+ 0=L L + L = 0 und Übertrag L auf die nächsthöhere Dualstelle B 11/14: Additionsregeln für zwei Dualstellen

Die Addition von zwei mehrstelligen Dualzahlen baut sich hieraus in der uns schon gewohnten Weise auf: beginnend mit der niedersten, wird Stelle um Stelle unter Berücksichtigung eventueller Uberträge L nach diesen Additionsregeln abgearbeitet.

2. Zahlensysteme

Beispiel:

103

dezimal +

dual

70 34

==i== = 104

LOOOLLO + LOOOLO übertra

8

LL __ = LLOLOOO

Dieselben Schritte fuhrt das Rechenwerk der DVA in derselben Reihenfolge aus (vgl. B II/15). Durch Transportbefehle wird der 1. Operand (LOOOLLO) in den Akkumulator AC gebracht. Das Speicher-Register, das wie AC gerade ein Wort aufnehmen kann, übernimmt vom Speicher den 2. Operanden (LOOOLO). Als dritte Baugruppe ist ein Binäraddierer (+) vorhanden. Dieser ist in der Lage, zwei Dualstellen nach den vier Additionsregeln zu verknüpfen und einen eventuell in der vorhergehenden Stelle aufgetretenen Übertrag L mit zu berücksichtigen.

Rückkopplung

AC

= Akkumulator

SpR = Speicher-Register +

= Binär-Addierer

Beispiel: LOOOLLO + OLOOOLO = LLOLOOO B 11/15: Additionseinrichtung (Zustand beim 5. Takt)

Wie ein Binäraddierer technisch realisiert wird und vor allem, wie er die Uberträge richtig behandelt, werden wir noch in III, 3.7.3.2. sehen. Der 1. bzw. 2. Operand wird regelrecht Stelle um Stelle durch den AC bzw. das SpR geschoben. Die freiwerdenden Stellen im AC können die Ergebnis-Bits aufnehmen. Dies geschieht über eine Rückkopplung. In diesem Zusammenhang spricht man von .rückgekoppeltem Schieberegister'. Am Ende der Addition, also nach 7 Schiebetakten steht das Ergebnis (LLOLOOO) im AC. Es kann dort entweder als Ausgangsoperand für weitere Operationen dienen oder durch Transportbefehle in den Speicher übernommen werden. 2.2.3.2.

Multiplikation

Bei der Grundrechenart .Multiplikation' gelten - wie bei der Addition - vier denkbar einfache Grundregeln (vgl. B II/16).

Teil II. Mathematische Grundlagen

104

o 0 L L

0 =0 L= 0 o =o L=L B 11/16: Multiplikationsregeln für 2 Dualstellen

Die Ergebnisse der Multiplikation sind also stets O bis auf: ,ein mal eins = eins'. Die Multiplikation von zwei mehrstelligen Dualzahlen wird in der uns gewohnten Weise — nur viel einfacher — durch Bildung von Teilprodukten des Multiplikanden mit den einzelnen Multiplikatorstellen und anschließende Stellenverschiebung durchgeführt. Beispiel: dual

dezimal Multiplikand • Multiplikator 33 • 13 99 33 •

Multiplikand • Multiplikator LOOOOL•LLOL LOOOOL OOOOOO Teilprodukte LOOOOL • • LOOOOL• • •

Teilprodukte

= 429 = Ergebnis =

L L O L O L L O L = Ergebnis

Wir sehen, die Teilprodukte ergeben sich im Dual-System entweder zu O (wenn die betreffende Multiplikatorstelle 0 ist) oder einfach als Multiplikand selbst (wenn die betreffende Multiplikatorstelle L ist). Eine eigentliche Multiplikation zur Bildung der Teilprodukte (wie 33 • 3 = 99 im Dezimal-System) ist hier gar nicht nötig. Jedes Teilprodukt ist gegenüber dem vorhergehenden um eine Stelle nach links versetzt. (Dieselbe Wirkung erzielt man, wenn man stets die Summe der bisherigen Teilprodukte um 1 Stelle nach rechts verschiebt und das neue Teilprodukt dann hinzuaddiert. So geschieht es in B II/19). Das Rechenwerk vollzieht wieder dieselben Schritte wie bei der Multiplikation von Hand. Die Multiplikationseinrichtung (B II/17) unterscheidet sich von der Addiereinrichtung (B11/15) nur durch ein 3. Register, das sog. MultiplikatorQuotienten-Register (MQR), genauer gesagt: den Hauptbestandteil des Rechenwerks einer DVA bildet die Multipliziereinrichtung, die unter Weglassung des MQR als Addiereinrichtung Verwendung findet.

2. Zahlensysteme

105 Rückkopplung

AC = Akkumulator SpR = Speicherregistei

MQR = Multiplikator-Quotienten-Register + = Binär-Addierer

B II/17: Muliplikationseinrichtung

AC und MQR bilden eine Einheit, deren Inhalt gemeinsam nach rechts (oder links) verschoben werden kann. Durch Transportbefehle wird der 1. Operand (= Multiplikator) in den AC gebracht und durch gemeinsame Rechtsverschiebung des AC-MQR-Inhalts in das MQR verlegt. Der AC ist nun auf Null gesetzt. Das SpR übernimmt vom Speicher den 2. Operanden (= Multiplikand). In der niedersten (rechten) Stelle des MQR - wir schreiben ! geht dabei verloren. Ist dagegen die Teststelle ! gerade O, so wird die Rechtsverschiebung unmittelbar durchgeführt. K bleibt geöffnet, da Null ja nicht addiert zu werden braucht. Die Multiplikation ist beendet, wenn die Gesamtzahl der Rechtsverschiebungen gleich der Stellenzahl eines Wortes ist. Das Ergebnis der Multiplikation zweier s-stelliger Zahlen kann maximal 2s Stellen besitzen (Beispiel: 99 • 99 = 9801). Dementsprechend steht nun das Ergebnis in doppelter Wortlänge in der gekoppelten AC-MQR-Einheit. Wollen wir aber mit dem Ergebnis weitere Operationen durchführen, so müssen wir es auf einfache Wortlänge reduzieren. Dies geschieht durch Normalisieren: der AC-MQR-Inhalt wird so lange nach links verschoben, bis die oberste (linke) Stelle im AC ungleich 0 , d. h., L, ist. Dann wird der Inhalt vom AC als Ergebnis von einfacher Wortlänge (in B 11/19) interpretiert. Der verbleibende Rest im MQR (in B 11/19) wird abgeschnitten und geht ver-

106

Teil II. Mathematische Grundlagen

loren. Zu beachten ist natürlich dabei, daß das Ergebnis (LLOLOL) einen anderen Maßstabsfaktor besitzt als Multiplikator oder Multiplikand. Der logische Ablauf einer Multiplikation zweier Dualzahlen ist als Flußdiagramm in B 11/18 angegeben. Das oben schon angeführte Beispiel wird in B II/19 ausführlich behandelt.

B 11/18: Logischer Ablauf der Multiplikation: Produkt := Multiplikand • Multiplikator (vgl. B 11/19)

2. Zahlensysteme

107

Beispiel: Multiplikation:

LOOOOL • LLOL = LLOLOLLOL (33 • 13 = 429) bei der Wortlänge 6 bit. Lösungsgang:

+ =

+ =

+ =



oooooo

OOLLOL

:= Multiplikator, := 0 Addition des Multiplikanden, da (MQR)j

OLOOOO

LOOLLO

OOLOOO LOOOOL LOLOOL

OLOOLL

um 1 Stelle nach rechts keine Addition, da (MQR)j 5 einfach erkennen zu können. Dies läßt sich beim Aiken-Code leicht handhaben, man muß nur die 1. Binärstelle untersuchen. Die Ziffern 0, 1, 2, 3, 4 besitzen dort eine 0 , die Ziffern 5, 6, 7, 8, 9 ein L. Ein weiterer Vorteil ist darin zu sehen, daß beim Aiken-Code ein Dezimalübertrag auch einen Tetradenübertrag bewirkt. Beispiel:

8 + 3

LLLO + POLL

= 11

OOOL 0 0 0 L 1

= Aiken-Tetrade für 8 = Aiken-Tetrade für 3 = 2 Aiken-Tetraden für 11

1

B 111/16: Additionsvorschrift für Aiken-Code

2. Codierung

155

Eine Korrektur ist beim Aiken-Code grundsätzlich nur dann durchzuführen, wenn bei der Addition zweier Aiken verschlüsselter Dezimalziffern die Summe eine Pseudotetrade ergibt. Dabei ist als Korrektur OLLO (duale 6) zu subtrahieren, wenn zugleich ein Dezimalübertrag auftritt, ansonsten ist OLLO zu addieren. Die Korrekturregel läßt sich als Flußdiagramm nach B III/16 darstellen. Beispiel 1: 1 +1 =4

OOO L = Aiken-Tetrade für 1 + P O L L = Aiken-Tetrade für 3 = OLOO = Aiken-Tetrade für 4

Beispiel 2: 3 +4 =7

Ü=0

OOLL + OLOO OLLL + OLLO = LLOL

Aiken-Tetrade für 3 Aiken-Tetrade für 4 Aiken-Pseudotetrade, daher: Korrekturtetrade (+ 6) Aiken-Tetrade für 7

LLOL + LLOO

Aiken-Tetrade für 7 Aiken-Tetrade für 6 Aiken-Pseudotetrade, daher Korrekturtetrade ( - 6 ) 2 Aiken-Tetraden für 1 und 3

Beispiel 3: 7 + 6 = 13

Wie wir unten noch sehen werden, weist die Aiken Verschlüsselung noch den Vorteil auf, daß die Komplementbildung für die Darstellung der negativen Zahlen durch einfaches Vertauschen von L und O erfolgt. 2.2.3. 3-Exzess-Code (Stibitz-Code) Wie man aus B III/13 ersieht, geht der 3-Exzess-Code aus dem BCD-Code durch Verschiebung um 3 Tetraden, d. h., durch Addition von OOLL (= duale 3) hervor. Daher ergibt die Addition zweier 3-Exzess-codierten Dezimalzahlen um OOLL zuviel, solange kein Dezimalübertrag erfolgt, d. h., als Korrektur ist die Subtraktion von OOLL erforderlich. Dagegen müßten bei einer Addition mit Dezimalübertrag die Pseudotetraden (von LLOL über 0 0 0 0 bis OOLO) übersprungen werden, d. h., es müßte zugleich 6 addiert und 3 subtrahiert werden. Als Korrektur ergibt sich somit in diesem Fall die Addition von OOLL (duale 3 = 6 - 3 ) .

156

Teil III. Logische Grundlagen

Beim 3-Exzess-Code ist die Korrektur also überhaupt nicht vom Auftreten einer Pseudotetrade als Summe abhängig, das Rechenwerk braucht diese also gar nicht zu kennen. Die Korrekturvorschrift für den 3-Exzess-Code ist in B III/17 festgehalten. Der 3-Exzess-Code wird manchmal auch als Stibitz-Code bezeichnet.

• Ergebnis als Tetrade(n) im 3-Exzess-Code

B HI/17: Additionsvorschrift für 3-Exzess-Code

Beispiel 1:

8 + 7 15

c

LOLL LOLO OLOL ü= + OOLL + OOLL OLOO LOOO 1

3-Exzess-Tetrade für 8 3-Exzess-Tetrade für 7 Übertrag, daher: Korrekturtetrade (+ 3) 2 Tetraden für 1 und 5

5

Beispiel 2: 1 +4 =5

Ü= 0 I .

OLOO = 3-Exzess-Tetrade für 1 O L L L = 3-Exzess-Tetrade für 4 LOLL kein Übertrag, daher OOLL Korrekturtetrade (- 3) LOOO = 3-Exzess-Tetrade für 5

Komplementbildung Eine positive Zahl wird in einer DVA durch Vorsetzen einer 0 in einer besonderen Vorzeichenstelle gekennzeichnet. Die betragsgleiche negative Zahl wird in der DVA dargestellt, indem ziffernweise die Differenz zu 9 gebildet wird (9erKomplement, vgl. II, 2.2.3.3).

2. Codierung

157

Beispiel für 9er-Komplementdarstellung: externe Darstellung: interne Darstellung: Vorzeichen I + 617 - 617

Vorzeichenstelle I 0617 9382

Eine negative Zahl hat also in der Vorzeichenstelle eine 9 stehen und kann somit von einer positiven unterschieden werden, die dort eine 0 hat. Beim Dual-System sind die Verhältnisse völlig analog. Beispiel für ler-Komplementdarstellung: externe Darstellung: interne Darstellung: Vorzeichen I + LOL - LOL

Vorzeichenbit 1 OLOL LOLO

Die Komplementbildung erfolgt bei allen Tetraden-Codes wie beim hier angeführten Dual-System. Damit ist die Subtraktion in den Tetraden-Codes auf die Addition zurückführbar. Beispiel:

1 7 - 1 4 = 3 im Aiken-Code

+ 14 - 14 + 17

0 L O

OOO L OL 0 0 LLLO LOLL 000L LLOL L •*— -

U=L O u

0000

LOOO L

O

0000

LOOL-«-OLLO

Übertrag und Pseudotetrade, daher: Korrekturtetrade (- 3)

OOLL 0 0 LL = + 3 In B III/18 sind die drei bisher besprochenen Tetraden-Codes vergleichend gegenübergestellt. =



0000

+

BCD-

Aiken-

Rechenwerk für Addition

kompliziert, da das Auftreten von 6 verschiedenen Pseudotetraden festgestellt werden muß

Komplementbildung

schwierige Umrechnung

B 111/18: Vergleich der Tetraden-Codes

3-Exzess-Code einfach, da die Korrektur nur vom Übertrag abhängt

einfache Umrechnung durch Vertauschung von L und 0

158

Teil III. Logische Grundlagen

2.2.4. Gray-Code Der Gray-Code wird weniger für arithmetische Operationen als vielmehr für Analog-Digital-Umwandlung benützt. Er eignet sich hierfür besonders gut, weil sich jede Ziffer von der vorhergehenden nur durch eine Binärstelle unterscheidet. Nehmen wir als Anwendungsbeispiel etwa eine Meßwaage, welche die analoge Größe ,Gewicht' jeweils in eine von 16 Gewichtsklassen einordnen, d. h., digital angeben soll (3,5 g bis 4,5 g soll z. B. als 4 angezeigt werden). Dies kann z. B. durch Einteilung der Anzeigescheibe in 4 konzentrische Ringe (Tetrade!) und Unterteilung dieser Ringe in jeweils 16 gleiche Abschnitte erreicht werden (vgl. B III/19). An einem Ablesefenster registrieren 4 Fotozellen, ob im jeweiligen Ring die Scheibe ,dunkel' oder ,hell' anzeigt. ,Hell' kann z. B. die 0 , .dunkel' die L darstellen. In der in B III/19 eingezeichneten Stellung würde die Ablesevorrichtung: .hell' ,dunkel' .dunkel' .hell' d.h.: 0 L L 0 als die Gewichtsklasse 4 anzeigen. Nehmen wir an, die Scheibe stehe so, daß das Ablesefenster gerade zwischen 3 und 4 Uegt. Dann kann nur entweder 3 oder 4 angezeigt werden, da sich die 4 nur um eine Binärstelle (die dritte) unterscheidet.

B 111/19: Anzcigcschcibc im Gray-Code

159

2. Codierung

B 111/20: Ablesemöglichkeiten für den Sollwert 3,5 auf einer Anzeigescheibe nach B 111/19

Ganz anders wäre dies beim BCD-Code, wie B III/21 zeigt. Hierbei treten im Gegensatz zum Gray-Code gewaltige Abweichungen vom Sollwert 3,5 auf. Anzeige:

Ablesung: entweder:

O

L

L dagegen ist der Sollwert

oder:

0

0

0

=

3,5

0

BIII/21: Ablesemöglichkeiten für den Sollwert 3,5 auf einer Anzeigescheibe mit Dual-Code (genauer: BCD-Code)

2.3. Dezimat-Codes mit mehr als 4 Bits Wir wissen, daß schon bei der Darstellung der Dezimalziffern mit Tetraden, also mit 4 Bits, eine Entscheidungs-Redundanz von ER = 0,67 bit auftritt. Andererseits wissen wir, daß erhöhte Redundanz auch erhöhte Sicherungsmöglichkeiten bietet. Es ist also naheliegend, in gewissen Fällen, in denen höhere Übertragungssicherheit gefordert wird, mehr Binärstellen als nur 4 zu benützen. (Teilweise lassen sich damit auch einfachere Rechenwerke bauen.) (¡°>Code Der (j^)-Code (sprich: 1 aus 10-Code) ist sehr einfach aufgebaut. Er besteht aus 10 Binärstellen, wovon stets eine mit L belegt ist und alle anderen O sind. Jeder Dezimalziffer ist genau eine Binärstelle zugeordnet.

160

Teil III. Logische Grundlagen Dezimalziffer 0 1 2 3 4 5 6 7 8 9

(j°>Code OOOOOOOOO L OOOOOOOOLO OOOOOOOLOO OOOOOOLOOO OOOOOL OOOO OOOOLOOOOO OOOLOOOOOO OOL OOOOOOO OLOOOOOOOO LOOOOOOOOO

B 111/22: Zuordnungsliste für den (}°>Code

Kostenmäßig ist der große Aufwand von 10 Binärstellen für 1 Dezimalziffer natürlich ein Nachteil. Der (J^)-Code besitzt eine sehr große Redundanz: ER = ld EV2 - ld EVI = ld 2 1 0 - ld 10 1 = 10 - 3,33 = 6,67 bit Daraus resultiert andererseits ein großer Vorteil: da jedes Codewort nur eine L enthält, läßt sich eine Störung (etwa Auftreten von zwei oder mehr L oder gar keiner) sehr leicht erkennen. Weiterhin kann dieser Code gut für die optische Darstellung von Dezimalziffern mittels Glimmlampen verwendet werden. Jeder der 10 Binärstellen wird eine Glimmlampe zugeordnet mit der entsprechenden Dezimalziffer als Aufschrift. Die Dezimalziffern 0, 1 , . . . . 9, werden auf Lochkarten im ,1 aus lO'-Code dargestellt. Für jede Ziffer wird eine eigene Zeile für die Lochung bereitgestellt. Eine Spalte der Lochkarte darf in einer der zehn Zeilen gelocht sein und speichert damit eine Dezimalziffer im ,1 aus lO'-Code. Weitere, häufig angewandte Codes mit mehr als 4 Bits sind in B III/23 zusammengestellt. Diese Codes sind so aufgebaut, daß das Codewort für eine Dezimalziffer stets zwei L enthält. Der ( ^ - C o d e , auch Quinär-Code genannt, besitzt gerade: = j 1 ^ = 10 Möglichkeiten (vgl. II, 1.4), jeweils zwei L innerhalb 5 Binärstellen anzuordnen. Diese 10 Möglichkeiten ergeben genau die 10 Dezimalziffern. Beim Biquinär- und Quibinär-Code besteht jedes Codewort aus zwei BinärstellenGruppen. Eine Gruppe besitzt 2 Bits, die andere 5 Bits. In jeder der beiden Gruppen muß stets eine L erscheinen. Diese Bedingung läßt Fehler erkennen. Aus der Wertigkeit der einzelnen Stellen kann die zugeordnete Dezimalziffer erlesen werden.

161

2. Codierung

Dezimal-

0 1

Biquinär7421 0

5 0 4 3 2 1 0

8 6 4 2 0 1 0

LLOOO

OL OOOOL

OOOOL OL

OOOLL

OL OOOLO

OOOOL LO

OL OOLOO

OOOLO OL

OL OLOOO

OOOLO LO

OL LOOOO

OOLOO OL

5

OOLOL OOLLO OLOOL OLOLO

L O OOOOL

OOLOO LO

6

OLLOO

LO OOOLO

OLOOO OL

7

LOOOL

LO OOLOO

OLOOO LO

8

LOOLO

L O OLOOO

LOOOO OL

9

LOLOO

LO LOOOO

LOOOO LO

2 3 4

Code

Quibinär-

Wertigkeit

B III/23: Zuordnungsliste häufiger Codes

Beispiel: OLOOOLO bedeutet: im Biquinär-Code: 0 - 5 + l - 0 + 0 - 4 + 0 - 3 + 0 - 2 + l - l + 0 - 0 = l im Quibinär-Code: 0 - 8 + l - 6 + 0 - 4 + 0 - 2 + 0 - 0 + l - l + 0 - 0 = 7

A U F G A B E N zu III, 2.1./2.2./2.3. J . Welche Ursachen gibt es für die Redundanz eines Code zur Datenübertragung? a) Zwang zum Umwandeln des (Nachrichten-) Alphabets j in das (Signal-) Alphabet 2 , absichtliche Redundanz zur Übertragungssicherung b) Stellenrundung, optimale Wahl der Stellenzahl, technische Gründe (s. internat. Fernschreibcode), absichtliche Redundanz zur Übertragungssicherung. c) Stellenrundung, Wahl eines nichtbinären Alphabets 2 , technische Gründe (s. internat. Fernschreibalphabet), absichtliche Redundanz zur Übertragungssicherung 2. Die meisten modernen DVA arbeiten bei der internen Zahlendarstellung im: a) Dual-System (binär dargestellt) b) Dezimal-System (binär dargestellt) c) Dezimal-System (dezimal dargestellt) 3. Was ist das charakteristische Gemeinsame aller Tetraden-Code? a) die binäre Darstellung jeder Dezimalziffer als Tetrade (= 4 Bits) b) die binäre Darstellung jeder Dezimalzahl als Tetrade (= 4 Bits) c) die binäre Darstellung jeder Dezimalziffer und jedes Buchstabens als Tetrade (= 4 Bits) 11

Dworatschek

162

Teil III. Logische Grundlagen

4. Welche Korrektur muß bei der Addition der beiden Zahlen 7 und 9 im BCIiCode vorgenommen werden und wieso? a) Addition von + OLLO, da eine Pseudotetrade als Ergebnis erscheint b) Addition von + OLLO, da ein Übertrag auftritt c) keine Korrektur, da sowohl eine Pseudotetrade als auch ein Übertrag auftritt. 5. Bei welchen Tetraden-Code treten mehr Ps&idotetraden auf, beim AikenCode oder beim 3-Exzess-Code? a) beim Aiken-Code (6 Pseudotetraden, beim 3-Exzess-Code dagegen nur 3 Pseudotetraden) b) beim 3-Exzess-Code (6 Pseudotetraden, beim Aiken-Code dagegen nur 3 Pseudotetraden) c) bei beiden gleich viele (6 Pseudotetraden) 6. Welche Korrektur muß bei der Addition der beiden Zahlen 3 und 4 im AikenCode vorgenommen werden und wieso? a) Addition von + OLLO, da Pseudotetrade und kein Übertrag auftreten b) Addition von - OLLO, da Pseudotetrade und Übertrag auftreten c) keine Korrektur erforderlich, da keine Pseudotetrade und kein Übertrag auftreten 7. Wie groß ist die Entscheidungs-Redundanz beim Biquinär-Code? a) ER = ld EV2 - ld EVI = ld (2 + 5) 2 - ld 10 = 7 • ld 7 - ld 10= 16,3 bit b) ER = ld EV2 - ld EVI = 2 • ld 2 S - ld 10 = 6,68 bit c) ER = l d E V 2 - l d E V l = ld 2 ( 2 + s > - ld 10 = 7 - 3,32 = 3,68 bit 2.4. Codesicherung 2.4.1. Fehlerursachen

Bei der Übertragung codierter Zeichen strebt man natürlich ein möglichst fehlerfreies Arbeiten der technischen Geräte an. Völlig zu umgehen sind jedoch die Fehlereinflüsse nicht. Da wir bei der Codierung praktisch ausschließlich mit binären Elementen (O, L) arbeiten, kann es durch Störungen im Übertragungskanal vorkommen, daß eine L in eine O oder umgekehrt eine 0 in eine L verfälscht wird. Stellen wir etwa bei der Übertragung die L als Spannungsimpuls der Größe + 6V und die 0 als Spannung OV dar, so kann durch einen Störspannungsimpuls der Größe ca. - 6V innerhalb des Übertragungskanals aus dem Codewort LLOL das Codewort LOOL entsprechend B HI/24 entstehen. Man verwendet deshalb meist Codes, die es dem Empfangsgerät ermöglichen, entweder : Fehler zu erkennen oder sogar: Fehler automatisch zu korrigieren.

163

2. Codierung

Dementsprechend spricht man von: .fehlererkennenden Codes' (error-detecting code) und ,fehlerkorrigierenden Codes' (error-correcting code) Beide Arten von Codes beruhen in ihrer Funktion auf dem Vorhandensein von Redundanz (vgl. 2.1.1). Darunter versteht man die Weitschweifigkeit eines Codes, die dadurch zustande kommt, daß wir von den insgesamt möglichen 0,L-Kombinationen nicht alle, sondern nur einen Teil benützen. Die 0,L-Kombinationen nennen wir generell Codeworte. Die unbenutzten Codeworte bezeichnen wir als Pseudoworte und die benutzten als Nutzworte. Trifft nun beim Empfänger am Ende einer Übertragungsstrecke ein Pseudowort ein, so ,weiß' er, daß eine Störung vorgekommen ist, die das vom Sender abgegebene Nutzwort in das empfangene Pseudowort umgewandelt hat.

ungestörtes Codewort

L

O

L

gestörtes Codewort

L + 6V

— OV

L

O

O

L

=>

OV Störimpuls

- 6V

B 111/24: Störung eines Codewortes in einem Übertragungskanal

2.4.2. Ungesicherte Codes

Besitzt der angewandte Code überhaupt keine Redundanz, d. h., werden alle Codeworte als Nutzworte verbraucht, so ist keine Fehlererkennung möglich. Jede Störung (Vertauschung von 0 und L) führt ja wieder zu einem Nutzwort und wird als solches natürlich vom Empfänger anstandslos angenommen. Wir wollen uns das Verhalten von ungesicherten Codes am Beispiel eines klein gewählten, s = 2 stelligen Code klarmachen. Es sind: EV = 2S = 2 2 = 2 • 2 = 4 mögliche 0,L-Kombinationen und damit 4 Codeworte vorhanden. Der Code soll ungesichert sein, d. h., keine Pseudoworte und damit keine Redundanz besitzen. Alle 4 Codeworte werden als Nutzworte (A, B, C, D) verwertet. Zahl der Nutzworte (Nachrichten): EVI Zahl der Codeworte (alle 0,L-Kombin.): EV2 Zahl der Pseudoworte (unbenutzte 0,L-Kombin.): Entscheidungs-Redundanz: ER = ld EV2 - ld EVI = ld 4 - ld 4 n *

=4 =4 =0 =0

Teil III. Logische Grundlagen

164 Alph.j

Alph-2

A

00

B

OL

C

LO

D

LL

s

4 Codeworte zugleich: 4 Nutzworte /

B 111/25: Zuordnungsliste eines ungesicherten Code

Übertragen wir nun die Buchstabenfolge DAB und tritt während der Übertragung etwa in der ersten Stelle des dritten ausgesandten Nutzwortes (= B) eine Störung auf, so wird die Buchstabenfolge DAD statt DAB (z. B. als Lochstreifen) empfangen (vgl. B III/26). Störung

O o

O o

Empfangslochstreifen

Übertragungskanal

• o

Sendelochstreifen

B 111/26: nicht erkennbare Störung bei ungesichertem Code

2.4.3. Fehlererkennende Codes

Um also die bei der Übertragung unvermeidlichen Fälschungen einer oder mehrerer Stellen eines Nutzwortes am Empfangsort erkennen zu können, dürfen bei einem s-stelligen Code nicht alle EV = 2S Möglichkeiten als Nutzworte verbraucht werden. Es müssen einige Kombinationen als Pseudoworte ungenutzt bleiben, die dann — werden sie empfangen — als Hinweis für eine Fälschung dienen. Wir wollen uns als Beispiel wieder einen Code mit 4 Nutzworten vorstellen. Diesmal verwenden wir aber s = 3 Stellen und erhalten somit: EV2 = 2S = 2 3 = 8 mögliche 0,L-Kombinationen (vgl. B III/27). Uns verbleiben also 4 Pseudoworte, die uns zur Fehlererkennung dienen können. Übertragen wir nun die Buchstabenfolge DAB wie im Fall des ungesicherten Code, und tritt in der 1. Stelle des 3. Nutzwortes (B) eine Störung auf, so trifft beim Empfänger das Pseudowort LLL ein. Der Empfänger veranlaßt daraufhin automatisch eine Wiederholung des gestörten Nutzwortes (vgl. B 111/28).

2. Codierung

165

Alphabet2

Alphabet]

000

A unbenutzt

00 L

unbenutzt

OLO OLL

B

LOO

unbenutzt

LOL

C

LLO

D

LLL

unbenutzt

B III/27: Zuordnungsliste eines fehlererkennenden Code Pseudowort Î

*• Befehl zum Wiederholen Störung

0 • • Empfangslochstreifen

Übertragungskanal

O O

0 « • O

Sendeloch streifen

B 111/28: Störung bei fehlererkennendem Code

2.4.4. Hamming-Distanz h Verwenden wir einen Code, der sowohl Nutzworte als auch Pseudoworte enthält, so unterscheidet sich jedes Nutzwort von jedem anderen Nutzwort in einer bestimmten Zahl d von Binärstellen. Man bezeichnet d als Stellen-Distanz. In B 111/27 war die Stellendistanz von jedem Nutzwort zu jedem anderen Nutzwort einheitlich d = 2. Es gibt aber auch Codes, bei denen d nicht durchweg gleich ist. Bei ihnen gibt es also Nutzworte, die sich von einem benachbarten Nutzwort in mehr Stellen unterscheiden als von einem anderen. Wichtiger als die Stellendistanz für die Beurteilung eines Code ist deshalb der Begriff: Hammingdistanz h. Darunter versteht man die geringste paarweise Stellendistanz zwischen allen Nutzworten eines Code, h ist also das Minimum aller auftretenden d, es gilt: h < d .

166

Teil III. Logische Grundlagen

(Beachte: manchmal wird in der Literatur die Stellendistanz d selbst schon als Hammingdistanz h bezeichnet, und nicht erst das Minimum der auftretenden d-Werte!) In B IH/27 war h = 2, da einheitlich d = 2 und damit auch das Minimum von d gleich 2 war. Man kann sich für einen 3-stelligen Code die Stellendistanz d bzw. die Hammingdistanz h an einem Drahtwürfel klarmachen. Die Ecken des Würfels stellen die Codeworte (Nutzworte + Pseudoworte) dar. Die Nutzworte sind mit A, B, C, D markiert. Die Anzahl der Drahtkanten von einem Nutzwort zu einem benachbarten Nutzwort ist die jeweilige Stellendistanz d. (vgl. B III/29). 3. Binärstelle

B111/29: Räumliche Darstellung der Stellendistanz d

Drückt man diesen Dralitquader zu einer Ebene zusammen, so erhält man das Gebilde links in B III/30. Rechts davon ist angedeutet, wie die Lage der Nutzworte zwischen den Pseudoworten für verschiedene Hammingdistanzen aussieht. Hammingdistanz:

B HI/30: Modell für einen Code mit s = 3 Binärstellen ( • = Nutzwort

O = Pseudowort)

167

2. Codierung

Das Verhalten von Codes mit mehr als 3 Stellen beim Auftreten von Fehlern kann an analogen flächenhaften Skizzen untersucht werden. Die Skizzen gewinnt man allgemein dadurch, daß man alle jene Codeworte durch eine Linie miteinander verbindet, die sich nur in einer Stelle unterscheiden. Die geringste Anzahl von Verbindungslinien, entlang welcher man sich von einem Nutzwort zum benachbarten bewegt, ist die Hammingdistanz h des Code. Meist genügt es, diese (kürzeste) Verbindungslinie zu zeichnen (vgl. B111/31).

anderen Codeworten

# = Nutzwort O = Pseudowort Hammingdistanz h = 3

B HI/31: Knotenmodell für Code mit h = 3

ausgesandtes Nutzwort sei: OLLL bei einem Fehler in der Übertragung wird das Pseudowort empfangen: OLOL d. h. 1 Fehler wird erkannt bei 2 Fehlern in der Übertragung wird das Pseudowort empfangen: LLOL d. h. 2 Fehler werden erkannt. » Bei 3 Fehlern in der Übertragung wird das Nutz wort empfangen: LLOO d, h. 3 Fehler werden nicht erkannt. allgemein gilt: e = h -1 wobei:

e = Zahl der mit Sicherheit erkannten Fehler h = Hammingdistanz

In obigem Beispiel wäre also: e= h-1=3-1=2

168

Teil III. Logische Grundlagen

2.4.5. Fehlerkorrigierende Codes

Nimmt man an, daß bei der Übertragung grundsätzlich nur 1 Fehler pro Nutzwort auftritt, so kann man B III/31 entnehmen, daß das Nutzwort OLLL nur in das Pseudowort OLOL, nicht aber in das Pseudowort LLOL übergehen kann. Umgekehrt kann das Nutzwort LLOO nur in das Pseudowort LLOL, nicht aber in OLOL übergehen. Interpretiert also das Empfangsgerät ein eintreffendes Pseudowort automatisch als das diesem Pseudowort am .nächsten liegende' Nutzwort (kleinstes d), so ist damit eine automatische Fehlerkorrektur erfolgt. allgemein gilt für die Fehlerkorrektur: k = (h -1)/2 wenn:

k = Zahl der mit Sicherheit richtig korrigierten Fehler h = Hammingdistanz

Den beiden Gleichungen für Fehlererkennung und Fehlerkorrektur entnehmen wir noch die Beziehung: e=2k d. h.: mit ein und demselben Code sind doppelt soviele Fehler erkennbar als korrigierbar. Beispiel: Code mit Hammingdistanz h = 6 daraus folgt: Zahl der mit Sicherheit erkennbaren Fehler : e = h - l = 6 - l = 5 Zahl der mit Sicherheit korrigierbaren Fehler: k = e/2 = 2,5 abgerundet: k = 2

B III/32: Fehlererkennung: h = 6, e = 5

2. Codierung

169

B HI/33: Fehlerkorrektur: h = 6, k = 2

In diesem Beispiel (h = 6) ist neben der reinen Fehlererkennung bzw. -korrektur auch noch die gemischte Fehlererkennung und -korrektur möglich. Die empfangenen Pseudoworte PW1 und PW2 werden hierbei — wie bei der reinen Fehlerkorrektur - als NW1 interpretiert, PW4 und PW5 als NW2. PW3 wird als Pseudowort aufgefaßt, da es von NW1 und NW2 gleichen Abstand besitzt. Der Empfänger fordert eine Wiederholung des gesendeten und gefälschten Nutzwortes an, sobald PW3 empfangen wird (vgl. B III/34).

B HI/34: gemischte Fehlerkorrektur und Fehlererkennung h = 6, k = 2, zusätzlich: e = 1

2.4.6. Erkennen von mehr als e Fehlern

Bisher haben wir stets von .sicher erkennbaren' Fehlern gesprochen. Darüber hinaus gibt es jedoch auch Fehler, die nicht mit Sicherheit, aber doch mit mehr oder weniger großen Wahrscheinlichkeit erkannt werden können.

170

Teil III. Logische Grundlagen

Beispiel: Code mit Hammingdistanz h = 3 Nutzworte: NW1, NW2, NW3 Stellendistanz: d = 3 von NW1 nach NW2 d = 4 von NW2 nach NW3 d nicht eingezeichnet: von NW1 nach NW3 Zahl der mit Sicherheit erkannten Fehler: e = h - 1 = 2

f =4 PW1 anderi Codev

-O

PW2

NW2

O

*

f =4

-o

PW3

y

o

PW4

o

PW5

«C

NW3

B 111/35: mit Wahrscheinlichkeit erkannte Fehler: f = 4

Aus B III/35 entnimmt man folgendes: Sendet man das Nutzwort NW1 und wird es durch f = 4 Fehler gestört, so empfängt man das Pseudowort PW3, d.h., f = 4 Fehler werden erkannt. Sendet man dagegen das Nutzwort NW3 und wird es auch nur durch f = 4 Fehler gestört, so empfängt man das Nutzv/ort NW2, d. h., der Empfänger erkennt in diesem Fall die 4 Fehler nicht. Bei diesem Code werden also maximal e = 2 Fehler sicher erkannt. Darüber hinaus können mehr Fehler eventuell erkannt werden. Das Verfahren der Fehlererkennung ist technisch leichter zu verwirklichen als die automatische Fehlerkorrektur und wird deshalb in der Praxis viel häufiger angewandt. Ein Nachteil ist natürlich dabei der Rückmeldekanal, der zusätzlich notwendig ist, um den Sender zur Wiederholung zu veranlassen, wenn ein Fehler erkannt worden ist. Bei einem Datenübertragungsverfahren mit Fehlerkorrektur kann dieser Rückmeldekanal entfallen. 2.4.7. Methode der Quersummenprüfung

2.4.7.1. Parity Check (Prüfbit) Bei Codes ohne Pseudoworte ist eine Fehlererkennung nicht möglich. Durch Zusatz nur eines bit pro Nutzwort kann aber die sichere Erkennung von e = 1 Fehler erreicht werden. Die Zusatzstelle wird so gewählt, daß die Quersumme

2. Codierung

171

des neuen Nutzwortes sich geradzahlig ergibt. Man spricht dann von ,even parity check'. (Es kann auch ungerade Quersumme vereinbart werden. Dann spricht man von ,odd parity check'.) Beispiel: ursprüngliches Nutzwort: neues Nutzwort mit: even parity check: (mit: odd parity check :

LOLL LOLL L LOLL 0 )

Durch diese Wahl der Prüfbits ergäben sich in dem Code von B 111/25 die neuen Nutzworte entsprechend BIII/36.

neues Alphabet 2 Alphabet i

ursprüngliches Alphabetj

even parity check

A

0

O

o

B

0

L

L

C

L

0

D

L

L

L o

B 111/36: Zuordnungsliste für Code mit Prüfbit

Durch den Zusatz der Prüfbits ergibt sich nun ein 3-stelliger Code mit der Hammingdistanz h = 2, die eine Erkennung von e = h - l = 2 - l = l Fehler ermöglicht. Der Empfänger .errechnet' sich aus den ersten beiden Binärstellen des empfangenen Nutzwortes das entsprechende Prüfbit und vergleicht es mit der dritten (empfangenen) Stelle. Bei Übereinstimmung war die Übertragung fehlerfrei, ansonsten wird eine Wiederholung verlangt. 2.4.7.2.

Blockcode

Wenn bei der Übertragung jeweils eine bestimmte Zahl mit Prüfbits versehener Nutzworte zu einem Block zusammengefaßt werden, so nennt man dies,BlockCode'. Neben der horizontalen Quersummenprüfung wird zusätzlich eine vertikale vorgenommen. Beispiel: Wir wollen der Einfachheit halber nur 3 Nutzwerte (D, A, B) in einem Block zusammenfassen. Dabei sollen 2 Fehler erkannt (oder 1 Fehler korrigiert) werden. Dazu bilden wir für jedes Nutzwort einzeln durch die horizontale Quersummenbildung das jeweilige Prüfbit. Anschließend bilden wir über alle Binärstellen die vertikale Quersumme mit Prüfbit.

172

Teil III. Logische Grundlagen horiz. Prüfbit

D

LL

0

A

OO

0

B

OL

L

LO

L

B 111/37: Block mit horizontalen und

vert. Prüfbits

vertikalen Prüfbits

Wie in 2.4.7.1. .errechnet' sich auch hier der Empfänger aus den empfangenen Bits:

LL

00 OL die horizontale und vertikale Quersumme und vergleicht die daraus ermittelten Prüfbits mit den empfangenen Prüfbits. Tritt z. B. in der 1. Stelle des 2. Nutzwortes ( B ) eine Störung auf, so empfängt er folgendes:

D

A

B

r

vertikale 7

-K)

Empfangslochstreifen

Übertragungskanal

O



O



0

• •

0

Prüfbits

• «Vi O / \horizon-

«

/

tale

Sendelochstreifen

B 111/38: Fehlersicheiung bei Block-Code

Der Empfänger wird sich aus den angelieferten Nachrichtenbits die dazu passenden vertikalen und horizontalen Prüfbits errechnen. Danach vergleicht er sie mit den empfangenen Prüfbits und stellt folgendes fest: das dritte horizontale und das erste vertikale Prüfbit stimmen nicht mit den empfangenen überein. Dann läßt sich (vgl. B 111/39) schließen, welches Nachrichtenbit gestört sein muß. Es ist dies das erste Bit des Codewortes für B. Die Korrektur des Fehlers ist damit möglich: das gestörte Bit wird einfach komplementiert.

D A B

£

empfangene und errechnete Prüfbits stimmen hier nicht überein, also ist das 1. Bit von ,B' gestört.

B 111/39: Fehlerkorrektur beim Block-Code

2. Codierung

173

Bei der Übertragung mit Blockcode führt man manchmal sogar diagonale Quersummenprüfung ein, u m die Zahl der erkennbaren bzw. korrigierbaren Fehler zu erhöhen. Mit dem Verfahren der Fehlererkennung bei Block-Codes sind zur Zeit schon Zeichenfehlerwahrscheinlichkeiten von ca. 10~8 bei der Datenübertragung auf gewöhnlichen Telefonleitungen möglich. Dies b e d e u t e t , d?fi bei der Übertragung von 10 8 = 100 Millionen bit nur 1 bit u n e r k a n n t verfälscht bleibt ( 1 0 0 Millionen bit entspricht etwa der I n f o r m a t i o n dreier Bände des großen Brockhaus-Lexikons). Mit anderen Worten: Bei einer 24-stündigen Übertragung mit 1000 Binärzeichen p r o Sekunde tritt im Durchschnitt nur ein falsches Zeichen auf. Wir werden in Teil IV noch auf die Datenübertragung z u r ü c k k o m m e n . AUFGABEN

zu III, 2.4.

1. Welche grundsätzlichen Arten der Übertragungssicherung kennt man in der Codierung bei der Datenübertragung? a) fehlererkennende Codes, fehlerkorrigierende Codes, störungsverhindernde Codes b) fehlererkennende Codes, fehlerkorrigierende Codes c) fehlererkennende Codes, störungsverhindernde Codes 2. Welche Bezeichnungen verwendet man für die O.L-Kombinationen eines Code ( A l p h a b e t 2 ) in dieser Reihenfolge: 1. alle 0 , L - K o m b i n a t i o n e n zusammen 2. alle 0 , L - K o m b i n a t i o n e n , denen in A l p h a b e t ] eine Nachricht zugeordnet ist 3. alle 0 , L - K o m b i n a t i o n e n , denen in A l p h a b e t ] keine Nachricht zugeordnet ist a) 1. 2. 3. b ) 1. 2. 3. c) 1. 2. 3.

Nutzworte Codeworte Pseudoworte Codeworte Nutzworte Pseudoworte Nutzworte Befehlsworte Datenworte

3. Wie groß ist die Hammingdistanz h eines Code mit den N u t z w o r t e n OOLL, LOOO, LLOL? a) h = 3 b) h = 2 c) h = (2 + 3 + 3)/3 = 2,7

174

Teil III. Logische Grundlagen

4. Wie groß ist die Zahl der mit Sicherheit erkennbaren Fehler im Code nach Aufgabe 3? a) e = h - 1 = 3 - 1 = 2 b ) e = h - l = 2- l = l c) e = (h -1)/2 = (2 -1)/2 = 0,5, d. h„ e = 0 5. Bei welchem Übertragungs-Code benötigt man neben dem eigentlichen Übertragungskanal noch einen Rückmeldekanal? a) bei fehlererkennenden Codes b) bei fehlerkorrigierenden Codes c) bei ungesicherten Codes (d. h. Redundanz = 0 ) 6. Man bilde zu den Nachrichten LLOLO LOLLO OLOLO die horizontalen und vertikalen Prüfbits zur ungeraden Quersumme (odd parity check) und gebe die so gebildeten Nutzworte des Blockcode an. a) LLOLO O b) LLOLO L c) LLOLO L LOLLO 0 LOLLO L LOLLO L OLOLO L OLOLO O OLOLO O LLOOL 0

OOLLO L

OOLLO -

7. Welche Stelle welcher Nachricht in Aufgabe 6 wurde bei der Übertragung gestört, wenn beim Empfänger das 2. horizontale und 3. vertikale Prüfbit mit dem vom Empfänger errechneten nicht übereinstimmt? a) 2. und 3. Bit der 2. und 3. Nachricht b) 2. Bit der 3. Nachricht c) 3. Bit der 2. Nachricht

3. Schaltalgebra 3.1. Boole'sche Algebra In der mathematischen Logik werden Aussagen und deren Verknüpfungen nach ihrem Wahrheitsgehalt hin untersucht. Dabei wird auf die spezifische, subjektive Bedeutung solcher Aussagen nicht eingegangen. Man gibt verschiedene Ausgangsaussagen mit jeweils eindeutig definiertem Wahrheitsgehalt vor. Dann gibt man Regeln und Gesetze an, nach denen diese Ursprungsaussagen miteinander verknüpft werden können. Auf Grund dieser Verknüpfungsregeln lassen sich dann die Wahrheitsgehalte der Ergebnis-Aussagen .errechnen'. Die Untersuchung solcher Gesetzmäßigkeiten nennt man ,mathematische Logik'. Sie geht auf den griechischen Philosophen Aristoteles (384—322 v. Chr.) zurück.

175

3. Schaltalgebra

Aristoteles hat bei seinem logischen Formalismus den heute noch üblichen zweiwertigen Aussagenkalkül eingeführt. Darin werden den Aussagen und den daraus (auf Grund bestimmter Gesetzmäßigkeiten) hervorgehenden Verknüpfungsaussagen nur zwei Wahrheitswerte zugeordnet. Die Aussagen sind entweder ,wahr' oder .falsch' - eine andere Möglichkeit wird hierbei nicht zugelassen und ist auch gar nicht definiert. Der Wahrheitswert einer Aussage ist demnach eine binäre Größe. Dies bedeutet keinesfalls eine Einschränkung der Aussagefähigkeit solcher Aussagen. In der mathematischen Logik lassen sich nämlich alle Aussagen auf die Elementar-Wahrheitswerte ,wahr' und ,falsch' zurückführen und demnach auch formal darstellen. Beispiel: Die keineswegs binäre Aussage, daß während einer Woche nur an 2 Tagen, nämlich Sa und So, nicht gearbeitet wird, läßt sich durch folgende sieben Aussagen mit binärem Charakter (nämlich ,wahr' oder,falsch') darstellen: Aussage: Mo wird Di wird Mi wird Do wird Fr wird Sa wird So wird

gearbeitet gearbeitet gearbeitet gearbeitet gearbeitet gearbeitet gearbeitet

(binärer) Wahrheitswert wahr wahr wahr wahr wahr falsch falsch

Um uns besser eine Vorstellung von den Verknüpfungsgesetzen verschiedener Aussagen machen zu können, wollen wir auf die uns von der Schule her geläufige, gewöhnliche Algebra etwas zurückgreifen. Bei der gewöhnlichen Algebra haben wir gewisse Variable (Größen) vorliegen, die beliebige Zahlenwerte annehmen dürfen. Ferner können wir solche Variable durch verschiedene Verknüpfungen miteinander verbinden, wodurch wir eine neue Größe erhalten. Diese nennen wir eine Funktion der ursprünglichen Variablen. Beispiel: Die drei Variablen x l t x 2 , X3 erzeugen über die Verknüpfungsgesetze der Multiplikation und Addition die Funktionsgröße y: y = x j + x2 • x3 Nehmen wir nun für die Variablen spezielle Zahlenwerte: x x = 2, x 2 = 7, x 3 = 5 an, so erhalten wir über die Funktion auch einen eindeutig bestimmten Zahlenwert für y: y=2+7 • 5 y = 37

176

Teil III. Logische Grundlagen

Denken wir in erster Linie an den ganzen Ausdruck y = x j + x 2 • x 3 , so sprechen wir von der Funktion y. Steht dagegen mehr der Zahlenwert für y im Vordergrund, so sprechen wir auch von der Ausgangsvariablen y. Wir wollen nun diese Tatsachen in analoger Weise auf die mathematische Logik anwenden. Den verschiedenen Variablen der gewöhnlichen Algebra entsprechen beim Aussagenkalkül der mathematischen Logik die verschiedenen Aussagen, die wir miteinander verknüpfen wollen. Ein wichtiger Unterschied besteht allerdings. Im Gegensatz zu den Variablen x ! , x 2 , x 3 der gewöhnlichen Algebra können die Aussagen (-variablen) nur einen von zwei Werten annehmen: entweder ,wahr' oder,falsch'. Solche Aussagenvariablen können wir nun miteinander verbinden, um daraus als Funktion eine neue Aussage zu gewinnen — ähnlich der Ergebnisgröße y in obigem Beispiel. Natürlich wird auch die gewonnene Ergebnisaussage binären Charakter haben. Ihr Wahrheitswert ist aber durch die Funktion eindeutig festgelegt.

Beispiel: Die Aussage ,es regnet' kann ebenso wie die Aussage ,es ist Sonntag' entweder ,wahr' oder,falsch' sein; m. a. W. wir haben zwei Aussagenvariable vorliegen. Verknüpfen wir diese Aussagenvariablen, so erhalten wir eine neue Aussage: ,Ich gehe ins Kino, wenn es regnet und wenn es Sonntag ist' Diese Aussage ist eine eindeutige Funktion der beiden ersten. Sie ist dann und nur dann ,wahr', wenn die beiden ersten Aussagen gleichzeitig erfüllt, d. h., ,wahr' sind. Also nur dann, wenn es sowohl regnet als auch Sonntag ist. In 3.2.2. werden wir sehen, daß dies eine AND-Verknüpfung ist. An diesem einfachen Beispiel sehen wir schon, daß die textmäßige Darstellungsweise solcher Aussagen und ihrer Verknüpfungen recht umständlich und auch leicht unübersichtlich werden kann. In der Mitte des vorigen Jahrhunderts hat George Boole einen eigenen Formalismus für die mathematische Behandlung derartiger Aussagenverknüpfungen geschaffen. Für die beiden Wahrheitswerte ,wahr' und ,falsch' der Aussage wird dabei das Binäralphabet verwandt: L = ,wahr' O = .falsch' Ebenso wie in der gewöhnlichen Algebra die Addition mit + formal abgekürzt wird, werden auch hier für eindeutig definierte Verknüpfungsarten Kurzzeichen eingeführt. In 3.3.1. kommen wir darauf zurück. Weiterhin geben Rechenregeln die Möglichkeiten der Operationen mit solchen Verknüpfungskürzeln an.

3. Schaltalgebra

177

Diesen von George Boole geschaffenen Formalismus nennt man Boole'sche Algebra (engl, boolean algebra), manchmal auch logische Algebra. Dementsprechend spricht man auch von Boole'schen Variablen und Boole'schen Funktionen. Wir werden gleich sehen, daß die Darstellungsverfahren der Boole'schen Algebra vorzüglich den Beschreibungserfordernissen der digitalen, elektronischen Schaltungstechnik entspricht. Die digitale Schaltungstechnik wurde vor allem bei der Konstruktion von DVA entwickelt. Sie wird heute aber auch in vielen anderen Zweigen der Elektrotechnik, wie Meß-, Regel- und Steuerungstechnik eingesetzt. Im Gegensatz zur konventionellen, analogen Schaltungstechnik arbeitet die digitale Schaltungstechnik mit diskreten, meist binären Ein- und Ausgangsspannungswerten. Denkt man hauptsächlich an diesen Anwendungsbereich der Boole'schen Algebra, so spricht man von ihr als von der Schaltalgebra (switching algebra). Im folgenden werden wir bevorzugt diesen Begriff gebrauchen. Wir wissen, daß wir innerhalb der DVA nur mit dem Binäralphabet 0 , L operieren. Alle Daten und Befehle liegen in irgendeiner Form — aber jedenfalls binär — codiert vor. Das bedeutet aber nichts anderes, als daß wir sie als Boole'sche Variable auffassen können. Weitergehend können wir sogar sagen: die Operationen, die wir — bewirkt durch die Befehle — an den Daten vornehmen wollen, können wir stets als Boole'sche Funktionen beschreiben. Vorerst wollen wir noch nicht auf die technische Realisierung solcher Boole'scher Funktionen eingehen. Wir werden später (IV) sehen, daß man dies mit den verschiedensten Bauelementen wie Relais, Dioden oder Transistoren einfach erreichen kann. Innerhalb des Kapitels Schaltalgebra' interessieren uns vor allem die formale Darstellungsweise, die Rechenregeln sowie Beispiele der Anwendung.

3.2. Grundfunktionen Als Starthilfe zu neuen Überlegungen wollen wir noch einmal zusammenfassen: Eine Boole'sche Größe hat binären Charakter. Eine Boole'sche Funktion liegt dann vor, wenn eine Boole'sche (Ergebnis-) Größe in einer eindeutig definierten Weise von der Erfüllung bzw. Nichterfüllung einer oder mehrerer^Bedingungen abhängt, d. h., aus festgelegten Verknüpfungen einer oder mehrerer Boole'scher Variabler entsteht. 3.2.1. Identität und Negation

Die elementarsten Boole'schen Funktionen sind die Identität und die Negation. In ihr ergibt sich die Boole'sche Ergebnisgröße als Funktion nur einer Boole'schen Variablen. 12

Dworatschek

178

Teil III. Logische Grundlagen

Identität Die Identität zwischen der Boole'schen Variablen und der Boole'schen Ergebnisgröße y ist folgendermaßen definiert: und

y =L y =0

wenn wenn

x=L x = 0

man kann demnach einfacher schreiben: Identität: y = x

Negation Die Negation zwischen der Variablen x und der Ergebnisgröße y ist folgendermaßen definiert: und

y =L y=O

wenn wenn

x = 0 x=L

Die Negation stellt also einfach die Umkehrung des Wahrheitswertes dar. Für die Negation schreibt man allgemein: Negation: y = x

(sprich: y ist gleich x nicht)

Wir sehen leicht ein, daß die Identität in der Schaltalgebra keine große Rolle spielen wird. Denn wozu sollte man eine neue Größe y einfuhren, wenn sie ohnehin mit einer vorhandenen Größe x identisch ist? Im Gegensatz zur Identität besitzt jedoch die Negation große Bedeutung sowohl für die Rechenregeln der Schaltalgebra als auch für deren praktische Verwirklichung in elektrischen Schaltkreisen. Für die Verknüpfung von mehreren Boole'schen Variablen sind die beiden Booleschen Funktionen AND und OR von großer Wichtigkeit. Es läßt sich nämlich zeigen, daß sich alle überhaupt möglichen logischen Funktionen auf die drei Elementarfunktionen: AND, OR und Negation zurückführen lassen. Zunächst wollen wir uns die in Worten gefaßte Definition der beiden Elementarfunktionen AND sowie OR anschauen. 3.2.2. AND-Funktion Definition:

AND-Funktion

Die Ergenisgröße y ist dann und nur dann ,wahr' (L), wenn alle Eingangsvariablen x j , x 2 , . . . . , x n gleichzeitig ,wahr' (L) sind. m. a. W.: ist diese Bedingung nicht erfüllt, d. h. ist wenigstens eine der Variablen x!,x2, x n .falsch'(0), so ist auch die Ergebnisgröße y ,falsch'(O).

3. Schaltalgebra

179

Die deutsche Bezeichnung für die AND-Funktion lautet natürlich UND-Funktion. Wir wollen jedoch bei der englischen Bezeichnungsweise bleiben, weil sie auch bei uns benützt wird. Die AND-Funktion bezeichnet man häufig auch als Konjunktion. Als Gedächtnisstütze für die Charakterisierung der AND-Funktion dient am besten der Ausdruck ,alle (Eingangsvariablen) gleichzeitig L'. Diese Definition der Boole'schen Funktion AND wollen wir uns an zwei praktischen Beispielen aus dem Alltag verdeutlichen. Der Übersichtlichkeit wegen wählen wir nur drei Eingangsvariable X!, x 2 , X3. Beispiel 1:

y

B 11/40: Beispiel zur AND-Funktion

Wir denken uns einen Wasserbehälter mit einem Abflußrohr. In dieses Ablußrohr seien drei Sperrschieber eingebracht. Wir verabreden, daß diese Schieber nur eine von zwei Positionen einnehmen können: entweder: ganz herausgezogen (entspricht ,wahr' bzw. L) oder : den Wasserfluß ganz sperrend (entspricht,falsch' bzw. 0 ) . Zwischenpositionen seien nicht zugelassen. Die Aussage: ,am Rohrausgang fließt Wasser' kürzen wir mit der Boole'schen Größe y ab. Damit ist: y = L, wenn tatsächlich Wasser fließt, y = 0 , wenn kein Wasser fließt. Aus B111/40 entnehmen wir, daß dann und nur dann am Rohrausgang Wasser fließen kann, wenn alle drei Schieber x l t x 2 , x 3 offen sind, d. h., auf ,wahr' (L) stehen, y = L ist also nur möglich, wenn x j = L, x 2 = L, x 3 = L — dies entspricht aber genau der Definition der AND-Funktion. Diese Wasserrohranordnung stellt also eine Verwirklichung der AND-Funktion dar. Die Konstellation der Schieber, wie sie in B HI/40 gezeichnet ist, ergibt y = O, da zwar X! = L und x 3 = L, aber x 2 = O angegeben ist. 2 *

180

Teil III. Logische Grundlagen

Beispiel 2: Kontakte

+

-

X

Lampe ( V )

Batterie

y

Leitung

B HI/41: Beispiel für die AND-Funktion

Schließen wir an eine Batterie über einen Leitungsdraht, in den drei Kontakte hintereinander eingebaut sind, eine Lampe, so haben wir eine weitere Realisierung der AND-Funktion vor uns. Für diese Schaltungsanordnung verabreden wir: für die Variablen x i , x 2 , x 3 gilt: ,Kontakt offen' entspricht O .Kontakt geschlossen' entspricht L für die Ergebnisgröße y gilt: ,Lampe aus' entspricht O ,Lampe brennt' entspricht L Aus B III/41 entnehmen wir, daß die Lampe dann und nur dann brennt, wenn alle drei Kontakte geschlossen sind. Mit Hilfe obiger Verabredungen können wir dann sagen: y = L kann nur auftreten, wenn gleichzeitig Xj = L, x 2 = L und x 3 = L. Die Schaltungsanordnung gibt also die AND-Funktion wieder. In B 111/41 ist y = 0 , da zwar x j = L und x 3 = L, aber x 2 = O. 3.2.3. OR-Funktion

Definition: OR-Funktion Die Ergebnisgröße y ist dann ,wahr' (L), wenn eine oder mehrere der Eingangsvariablen Xj, x 2 , • . • x n ,wahr'(L) sind. m. a. W.: die Ergebnisgröße y ist ,wahr' (L), wenn wenigstens eine Eingangsvariable ,wahr' (L) ist. oder: die Ergebnisgröße y ist dann und nur dann ,falsch' (0), wenn alle Eingangsvariablen x j , x 2 , . . . . x n .falsch' sind. Der deutsche Ausdruck für die englische Bezeichnung OR ist ODER-Funktion.

3. Schaltalgebra

181

An dieser Stelle sei auf einen häufig begangenen Fehler hingewiesen. Die ODERFunktion stimmt nicht ganz mit dem Sinn des Wortes ,oder' in der Umgangssprache überein. Dort wird das Wort ,oder' nämlich meist im Sinne von e n t weder — oder', d. h., als Alternativkennzeichnung, angewandt. Die ODER-Funktion ist dagegen auch dann ,wahr', wenn beide Eingangsvariablen ,wahr' sind. Der einfachste Merksatz lautet wohl für die OR-Funktion: .wenigstens eine (der Eingangsvariablen) ist L'. Diese Definition der Boole'schen Funktion OR wollen wir an ähnlichen zwei Beispielen wie bei der AND-Funktion verdeutlichen. Dabei wählen wir wieder der Einfachheit wegen nur drei Eingangsvariable Xj, x 2 , x 3 . Beispiel 1:

B 111/42: Beispiel für OR-Funktion

Wie in B HI/41, so nehmen wir auch hier wieder einen Wasserbehälter und ein Ablußrohr. Dazwischen schalten wir aber diesmal drei parallel arbeitende Rohre mit je einem Schieber zur Sperrung dieses Rohres. Wir stellen fest: durch das Ablußrohr fließt Wasser, wenn wenigstens einer der drei Schieber (in BIII/42 der Schieber 3) geöffnet ist. Der Fall y = 0 kann also nur dann auftreten, wenn alle drei Schieber geschlossen sind, d. h., wenn gleichzeitig Xj = 0 , x 2 = O, X3 = O. Dies entspricht genau der Definition der ORFunktion. Im Gegensatz zu B HI/41 schließen wir in diesem Fall die Lampe über drei parallele Drahtstücke mit je einem Kontakt an die Batterie. Die Verabredungen bzgl. x 1 ; x 2 , x 3 , y , gelten auch hier. Wir sehen, die Lampe brennt (y = L), wenn ein oder mehrere Kontakte geschlossen sind — jedenfalls, wenn wenigstens ein Kontakt geschlossen ist (in B III/43 ist es Kontakt 3). Die Lampe brennt nur dann nicht, wenn alle drei Kontakte offen sind. Die Schaltanordnung realisiert also die OR-Funktion.

182

Teil III. Logische Grundlagen

Beispiel 2: Kontakte x

i

^

Lampe

B III/43: Beispiel für OR-Funktion

3.3.

Darstellungsarten

In diesem Abschnitt wollen wir uns die verschiedenen Möglichkeiten ansehen, wie die einzelnen Boole'schen F u n k t i o n e n rein formal dargestellt werden können. Die verschiedenen Darstellungsarten sind nicht durchweg gleichwertig. Man m u ß von Fall zu Fall entscheiden, welche Darstellungsart gerade die anschaulichste oder aussagekräftigste ist. Prinzipiell lassen sich alle F u n k t i o n e n in allen 5 Darstellungsarten angeben. Wir wollen hier die 5 Möglichkeiten an Hand der beiden G r u n d f u n k t i o n e n AND und OR, deren Bedeutung wir schon an Beispielen verdeutlicht haben, einzeln behandeln. 3.3.1. Kurzzeichen Im Formalismus der gewöhnlichen Algebra verwendet man das Zeichen + für die V e r k n ü p f u n g s a r t , A d d i t i o n ' , das Zeichen : für die ,Division' etc. Ganz entsprechend geht man auch beim Formalismus der Boole'schen Algebra vor. Das Zeichen ~~ für die Negation y = x kennen wir schon. Wir führen nun auch Kurzzeichen für die S c h a l t f u n k t i o n e n , K o n j u n k t i o n ' und ,Disjunktion' ein.

Schaltfunktion

Negation Konjunktion (AND) Disjunktion (OR)

Zeichen

-

weitere Schreibweisen in der Literatur i

&

-i A

V

V

B 111/44: Kurzzeichen für die Elementarfunktionen

: i

-

i

+

i

3. Schaltalgebra

183

In der Literatur werden verschiedene Kurzzeichen verwandt. Wir halten uns durchweg an die erste Gruppe in B HI/44, nämlich: — & V . Wir wollen jetzt auf unsere früheren Beispiele zurückgreifen. Die Aussage, ob im Ausflußrohr von B HI/40 Wasser fließt oder nicht, würde demnach mit unseren Kurzzeichen folgendermaßen lauten (AND-Funktion!): y = Xj & x 2 & x 3 Für B 111/42 würde die Aussage dagegen lauten (OR-Funktion!): y= x,Vx2Vx3 allgemein:

Die Konjunktion y zwischen den n Eingangsvariablen x i , x 2 , . . .... x n lautet: & xn y = X! & x 2 & Die Disjunktion y zwischen den n Eingangsvariablen x 1 ; x 2 , . . . . . x n lautet: y=x,Vx2v Vxn

Die Darstellung einer logischen Funktion mit Kurzzeichen bezeichnet man meist kurz als Schaltfunktion. 3.3.2. Wertetafel

Eine andere, sehr übersichtliche und auch häufig angewandte Methode, Schaltfunktionen darzustellen, ist die Wertetafel. Für jede Eingangsvariable sowie für die Ausgangsvariable y wird je eine Spalte bereitgestellt. Nun werden alle möglichen Kombinationen der Eingangsvariablen für die zulässigen Werte O und L eingetragen. Laut Verknüpfungsregel ergibt sich dann dazu der eindeutige Wert (O oder L) der Ausgangsvariablen y. Für die Identität und die Negation ist die Wertetafel sehr einfach aufgebaut, weil nur eine Eingangsvariable x auftritt. Identität

Negation

X

y

X

y

0

0

O

L

L

L

L

0

B HI/45: Wertetafeln für Identität und Negation

184

Teil III. Logische Grundlagen

Bei der Konjunktion (AND) und Disjunktion (OR) für zwei Eingangsvariable Xj, x 2 besitzt die Wertetafel jeweils4 Zeilen, weil es genau 2 2 = 4 Kombinationen zwischen den Werten der beiden Eingangsvariablen gibt. Konjunktion (AND)

Disjunktion (OR)

X

x2

y

Xl

x2

y

0 0 L L

0 L 0 L

0 0 0 L

0 0 L L

0 L 0 L

0 L L L

1

B 111/46: Wertetafeln für A N D und OR

Als Beispiel wollen wir die 3. Zeile der Wertetafel für die Konjunktion interpretieren. Sie besagt: wenn x t = L und x 2 = O, dann ist die Ausgangsvariable y = 0. Wir werden noch feststellen, daß die Wertetafel gerade bei komplizierteren Verknüpfungen (mehrerer Eingangsvariabler) recht nützlich ist. 3.3.3. Kontaktskizze Die verschiedenen logischen Verknüpfungen können wir auch durch Kontaktskizzen darstellen. Der Kontakt hat aus seinem Aufbau heraus schon binären Charakter — er ist entweder geöffnet oder geschlossen. Die Darstellungsweise mit Kontakten wurde bei der Relaisschalttechnik entwikkelt. Dabei unterscheidet man prinzipiell zwei Grundtypen von Kontakten: den Arbeitskontakt und den Ruhekontakt. Beide Kontaktarten werden grundsätzlich in der Stellung in die Skizze eingezeichnet, in der das Relais unerregt ist. Der Arbeitskontakt schließt den Strompfad — wie der Name schon sagt — wenn das Relais,arbeitet', d. h., erregt wird. (Die Erregung des Relais geschieht einfach, indem man seine Erregerwicklungen an elektrische Spannung legt. Näheres über Relais s. IV, 1.1.) Der Ruhekontakt dagegen ist dann geschlossen, wenn das Relais ,in Ruhe', d. h., unerregt ist. Wir vereinbaren nun: für die Eingangsvariable (= Relaiserregung) x = L , wenn das Relais erregt ist x = O, wenn das Relais in Ruhe ist oder, was dasselbe bedeutet: x = L , wenn das Relais in Ruhe ist

185

3. Schaltalgebra

für die Ausgangsvariable (= geschlossener Strompfad) y = L, wenn der Strompfad über den Kontakt hinweg geschlossen ist y = O, wenn der Strompfad unterbrochen ist. An die Kontakte schreiben wir in der Kontaktskizze entweder x oder x , je nachdem, ob das Relais erregt sein muß oder nicht, um mit diesem Kontakt die Ausgangsvariable y zu L zu machen: Ruhekontakt

Aibeitskontakt

-»• y

B 111/47: Aibeitskontakt/Ruhekontakt eines Relais

Wir können nun auch einen Arbeitskontakt und einen Ruhekontakt zu einem sog. Umschaltekontakt kombinieren. Ein solcher Doppelkontakt läßt sich in der Relaistechnik leicht verwirklichen.

Aibeitskontakt Umschaltekontakt Ruhekontakt

B III/48: Aufbau eines Umschaltekontaktes

Diese kurze Einführung in das weite Gebiet der Relaiskontakte soll uns für das Verständnis der logischen Funktionsweise von Kontaktskizzen genügen. Mit der Kenntnis dieser einfachen Zusammenhänge sind wir nämlich schon in der Lage, Kontaktskizzen für kompliziertere Funktionen aufzustellen und gegebenenfalls zu vereinfachen, d. h., die Zahl der Kontakte zu verringern. Die Kontaktskizzen für die Grundfunktionen sind recht anschaulich (B 111/49). Die Negation wird durch einen Ruhekontakt, die Identität durch einen Arbeitskontakt realisiert.

186

Teil III. Logische Grundlagen

x

1

Identität

Negation

Konjunktion (AND)

Disjunktion (OR)

x

I

2 * / I

x

/

3y

l

k.

B HI/49: Kontaktskizzen für die Grundfunktionen

Der Kontaktskizze für die Disjunktion (OR) entnehmen wir sofort, daß der Strompfad schon geschlossen ist (y = L), wenn wenigstens eines der Relais 1, 2 oder 3 erregt, d. h., einer der Kontakte x 1 ; x 2 oder x 3 geschlossen ist. Bei der Konjunktion (AND) dagegen müssen alle drei geschlossen sein, wie es die Definition fordert.

3.3.4. Symboldarstellung

Eine weitere Darstellungsmöglichkeit logischer Funktionen finden wir in der Symboldarstellung. Sie arbeitet mit zeichnerischen Symbolen für die verschiedenen Grundfunktionen. Leider hat sich in der Literatur noch keine einheitliche Symboldarstellung durchgesetzt. Man gewinnt die Symboldarstellung aus der Darstellungsart der Funktion mit Kurzzeichen (vgl. 3.3.1). Sie ist schon ein Übergang zum reinen Schaltplan, der die elektrischen Bauelemente und ihre gegenseitige Gruppierung angibt. Sie wird deshalb vor allem beim logischen Entwurf von digitalen Baugruppen und größeren Teilen von DVA angewandt. In B III/50 sind für die Grundfunktionen ihre Symboldarstellung und die dazugehörige Kurzzeichendarstellung angegeben.

187

3. Schaltalgebra Symbol-

Grundfunktion

Identität

x

Negation

X

AND

Xl

Kurzzeichen-Darstellung

y =x

^ ^

p N

». y = X! & x 2 & . . . & x n

"2 xn

OR

y =x

l>

Xl x2

• y = Xj V x 2 V . . . V x n

xn

B 111/50: Symboldarstellung der Grundfunktionen

Wollen wir etwa bei einer Konjunktion y die Eingangsvariable x t nicht selbst, sondern deren Negation Xj verwenden, so können wir das auf zwei Arten mit den Symbolen ausschreiben: ausgeschriebene Form:

•y = X j & x 2 x2

BIII/51

188

Teil III. Logische Grundlagen

verkürzte Form:

• y = xx & x 2

BIII/52

Ly

Ein weiteres Beispiel für die Symboldarstellung einer Schaltfunktion sei noch angegeben:

y =*i

Vx2

B HI/53

d. h. die Eingangsvariable x 2 wird negiert und über die OR-Funktion mit der Eingangsvariablen Xj verknüpft. Die sich ergebende Ausgangsgröße wird negiert und führt zur endgültigen Ergebnisgröße y. 3.3.5. Gebietsdarstellung Aus der mathematischen Mengenlehre wurde eine Darstellungsart für logische Funktionen gewonnen, die vor allem bei geringer Zahl von Eingangsvariablen ( < 4) sehr anschauliche Ergebnisse liefert. Für unsere weiteren Erläuterungen wählen wir zwei Eingangsvariable X!, x 2 .

Man geht von einem Gebiet (Rechteck) aus, das alle zulässigen und möglichen Werte der Eingangsvariablen sowie deren Kombinationen beinhalten möge.

GesamtMenge

3. Schaltalgebra

189

Dann zeichnet man ein Gebiet (Kreis), innerhalb dessen Xx = L und außerhalb dessen X! = O = L) gÜt.

Nun zeichnen wir ein entsprechendes Gebiet (Kreis) für die zweite Eingangsvariable x 2 — und zwar so, daß sich die beiden Kreise überschneiden.

Wir sehen, daß wir nun das Rechteck, d. h. die Gesamtmenge, in 4 Flächen, d. h. Teilmengen, aufgeteilt haben.

B 111/54: Gebietsdarstellung für zwei Variable

Diese entsprechen den 4 Zeilen der Wertetafel für 2 Variable. In den folgenden Gebietsdarstellungen logischer Funktionen kennzeichnen wir stets die Flächen (Teilmengen) durch Schraffur, für die die Ausgangsvariable y = L wird. Die unschraffierten Flächen stellen also die Kombinationen der Wahrheitswerte der Eingangsvariablen dar, für die entsprechend die Aussage y = 0 (bzw., was dasselbe bedeutet, y = L) gilt.

Auf Grund dieser Vereinbarungen stellt also die Identität y = x gerade die Kreisfläche dar.

B III/55: Identität y = x

190

Teil III. Logische Grundlagen

Die Negation y = x ergibt sich ebenso einfach als ergänzender Teil zum Kreis.

B HI/56: Negation y = x

Die Definition der Konjunktion y der beiden Eingangsvariablen x j , x 2 besagt, daß y = L nur dann erfüllt ist, wenn gleichzeitig Xj = L und x 2 = L sind. Schraffiert muß demnach gerade die Überlappung der beiden Kreise für x j = L und x 2 = L werden.

BIII/57: AND: y =Xj & x 2

Die Definition der Disjunktion (OR) besagt, daß die Ausgangsvariable y = L ist, wenn entweder Xi = L oder x 2 = L oder beide L sind. Damit bedeutet y = L die von beiden Kreisen (x x = L und x 2 = L) umschlossene Fläche (Teilmenge).

B 111/58: OR: y = Xj V x 2

3. Schaltalgebra

191

Als weiteres Beispiel für die Gebietsdarstellung wollen wir uns die Funktion y = X! V x 2 , die wir in 3.3.4. in der Symbolschreibweise kennengelernt haben, hier ansehen.

B HI/59: Beispiel y = X! V x 2

3.4. Funktionen bei 2 Eingangsvariablen 3.4.1. Allgemeine Überlegungen Nehmen wir an, wir hätten n Eingangsvariable Xi, x 2 , . . . x n . Jede dieser n Eingangsvariablen kann einen der beiden Werte 0 , L annehmen. für n = 1 Eingangsvariable erhalten wir demnach: 2 = 21 = 2 Wertekombinationen, d. h., 2 1 Zeilen in der Wertetafel (vgl. Identität, Negation, B HI/45) für n = 2 Eingangsvariable erhalten wir: 2 • 2 = 2 2 = 4 Wertekombinationen, d. h., 2 2 Zeilen in der Wertetafel

a = 2- 2

2 = 2 " Wertekombinationen, d. h. a = 2" Zeilen in der Wertetafel

Für die Ausgangsvariable y hatten wir in der Wertetafel (vgl. B111/46) eine eigene Spalte freigelassen. Zur Definition einer bestimmten logischen Funktion werden wir nun jeder Wertekombination der Eingangsvariablen, d. h., jeder Zeile der Wertetafel, für y eine L oder eine O zuordnen. Die Wertetafel besteht aus a Zeilen. Damit setzt sich die y-Spalte aus a binären Werten (O oder L) zusammen (vgl. B HI/60). Demnach lassen sich: b = 2a mögliche, unterschiedliche y-Spalten angeben. Jede dieser y-Spalten gibt — zusammen mit den x-Spalten - die Wertetafel einer bestimmten Verknüpfungsregel für die Eingangsvariablen an.

192

Teil III. Logische Grundlagen

1. Zeüe

O oder L

2. Zeile

O oder L

(a-1). Zeüe

O oder L

a. Zeile

O oder L

B HI/60: mögliche Muster der y-Spalte

Mit b = 2 a und a = 2 n läßt sich der gesamte Sachverhalt folgendermaßen angeben: Für n Eingangsvariable x 1 , x 2 , . . . . x n lassen sich insgesamt b Boole'sche Funktionen, deren Ausgangsvariable jeweils mit y bezeichnet wird, definieren: n b=2 =2

-i

Die zugehörige Wertetafel besteht aus a = 2 n Zeilen. Von diesem allgemeinen Fall wollen wir wieder zu dem Fall mit 2 Eingangsvariablen x i , x 2 , zurückkehren. Die soeben gewonnenen Erkenntnisse können wir hier gleich verwerten. Bei n = 2 Eingangsvariablen erhalten wir: a = 2 2 = 4 Zeilen in der Wertetafel. Für die Spalte der Ausgangsvariablen y lassen sich dann b = 2 a = 2 4 = 16 Zuordnungsmuster angeben (vgl. B 111/61). Mit unseren 2 Eingangsvariablen können wir demnach insgesamt b = 16 logische Funktionen definieren. Bisher haben wir davon nur zwei kennengelernt, nämlich die Konjunktion (AND) und die Disjunktion (OR). Wir wollen uns nun noch die restlichen 14 Muster für die y-Spalte ansehen und untersuchen, welche logischen Funktionen sie definieren. X

1

x2

yi y-i y3 y4 ys ye y? ys

y? yio

y m yi2 y u

yi4 yis yie

0

0

0

0

0

o

o

0

0

0

L

L

L

L

L

L

L

L

0

L

0

o

0

0

L

L

L

L

O

0

O

0

L

L

L

L

L

0

0

0

L

L

0

0

L

L

0

O

L

L

0

0

L

L

L

L

0

L

0

L

O

L

0

L

0

L

0

L

0

L

0

L

AND

OR — ^ ^

Spiegelungsebene

B III/61: Die 16 möglichen Funktionen bei 2 Eingangsvariablen

3. Schaltalgebra

193

In B111/61 geben die ersten beiden Spalten in gewohnter Weise die Wertekombinationen der Eingangsvariablen X!,X2, an. Nehmen wir nun jedesmal eine der 16 folgenden y-Spalten hinzu und lassen die anderen unberücksichtigt, so haben wir eine Wertetafel für eine bestimmte logische Funktion. Die y-Spalten haben wir der einfacheren Beschreibung wegen von 1 bis 16 durchnumeriert. Nehmen wir zu den beiden x-Spalten beispielsweise die Spalte y 2 hinzu, so haben wir die uns schon bekannte Wertetafel für die Konjunktion (AND) vor uns. Die Spalte y 8 definiert die ebenfalls schon besprochene Disjunktion (OR). Wir wollen nun die einzelnen logischen Funktionen y! bis y i 6 auf ihre Brauchbarkeit hin untersuchen. Dabei fällt auf: yiö ist das Komplement von yis ist das Komplement von y 2 y9

ist das Komplement von y 8

Die logischen Funktionen y 1 6 bis y 9 entstehen also einfach durch Negation der Funktionen y j b i s y s - Damit genügt es, die ersten 8 Funktionen genauer zu betrachten — die übrigen 8 besitzen die entsprechenden Eigenschaften. Für die praktische Anwendung ist natürlich die Funktion y j uninteressant. Diese Funktion ergibt nämlich stets den Ausgangswert y j = 0 , völlig unabhängig von den Werten der beiden Eingangsvariablen x t und x 2 . Die logische Funktion y t liefert also überhaupt keine Information über den Wertezustand der Eingangsvariablen x t , x 2 und ist deshalb für logische Aussagen uninteressant. Weiterhin entnimmt man B HI/61, daß stets gilt: y 4 = X i . Die logische Funktion y 4 ist also völlig unabhängig von der Variablen x 2 , sie ist identisch mit der Variablen Xj. Damit entfällt auch die Funktion y 4 für den praktischen Gebrauch — es wäre ja sinnlos, eine neue Boole'sche Größe y 4 einzuführen, wenn sie mit einer ohnehin schon vorhandenen X! identisch ist. Dasselbe gilt auch für die logische Funktion y 6 . Es ist nämlich stets y 6 = x 2 , d.h., y 6 ist völlig unabhängig von xl. Von den 8 Funktionen y! bis y 8 entfallen also schon 3 als unbrauchbar. Unter Berücksichtigung der 8 gespiegelten' Funktionen y 9 bis y 1 6 stehen uns also für die technische Verwertung noch 2 • 5 = 10 logische Funktionen bei 2 Eingangsvariablen zur Verfügung. Die zwei wichtigsten darunter, nämlich die Grundfunktionen Konjunktion und Disjunktion, haben wir schon eingehend behandelt. Die weiteren werden wir im folgenden untersuchen. 13

Dworatschek

Teil III. Logische Grundlagen

194

3.4.2. NAND-Funktion Für die technische Realisierung mit Transistoren ist die NAND-Funktion von größter Bedeutung. Die NAND-Funktion entsteht einfach durch Negation der AND-Funktion. Daher kommt auch ihr Name: Negation von AND ergibt NAND. Die Wertetafel der negierten Form einer logischen Funktion erhalten wir aus B III/61 durch Spiegelung. Die Spalte y l s definiert also die NAND-Funktion. Die Schaltfunktion können wir direkt aus der Wertetafel heraus aufstellen oder aber wir gewinnen sie durch Negation der AND-Schaltfunktion: Die AND-Schaltfunktion war: y 2 = Xj & x 2 Die NAND-Schaltfunktion ergibt sich hieraus als Negation: y 1 5 = y 2 = X! & x 2 Die Symboldarstellung läßt sich damit leicht angeben:

yls

= x

i

&x

2

B 111/62: Symboldarstellung für NAND

Die Gebietsdarstellung finden wir auch recht einfach, indem wir das zur AND-Fläche komplementäre Gebiet schraffieren.

B III/63: NAND y l s =Xi & x 2

Mit Hilfe des später (vgl. 3.5.5) hergeleiteten Morgan'schen Theorems können wir für: y i S = X! & x 2 auch schreiben: y 1 5 = x 1 V x 2

195

3. Schaltalgebra

Damit ergibt sich die Kontaktskizze für die NAND-Funktion entsprechend BIII/64.

yis

B III/64: NAND

*2

3.4.3. NOR-Funktion

Die NOR-Funktion ergibt sich als Negation der OR-Funktion. Zusammen mit den beiden x-Spalten ergibt die Spalte y 9 die dazugehörige Wertetafel. Die NOR-Schaltfunktion erzeugen wir uns auch hier durch Negation aus der OR-Schaltfunktion: y9 =y8 = x i V x 2 Damit läßt sich auch die Symboldarstellung angeben:

y9 = x , V x 2

B111/65. Symboldarstellung für NOR

Das Gebiet für y 9 = L ist einfach das Komplement zur Fläche y 8 = L der OR-Funktion (B 111/66).

B 111/66: NOR y9 = x , V x 2 13 *

Teil III. Logische Grundlagen

196

Das erwähnte Morgan'sche Theorem liefert uns: y 9 = Xj V x 2 = Xj & x 2 Damit läßt sich sofort die Kontaktskizze für die NOR-Funktion angeben:

y9=x!&x2 B 111/67: NOR

3.4.4. Äquivalenz Die logische Funktion y 1 0 bezeichnet man als Äquivalenz. Ihre Definition entnehmen wir direkt der Wertetafel: Bei der Äquivalenz ist die Ausgangsvariable y 1 0 dann und nur dann L, wenn beide Eingangsvariable x 1 ; x 2 gleich (entweder O oder L) sind.

Daraus läßt sich auch sogleich die Schaltfunktion anschreiben: y10

=(xi &X2) V(X!

&X2)

Die Gebietsdarstellung läßt sich hieraus Schritt für Schritt entwickeln.

B 111/68: Äquivalenz y 1 0

Die Symboldarstellung gewinnt man direkt aus der Schaltfunktion als OR-Verknüpfung zweier AND-Schaltungen (B III/69).

197

3. Schaltalgebra

Xj & x2

y 10 =

&X2) V (X! & x 2 )

X! & X2

B HI/69: Symboldarstellung der Äquivalenz

Die Kontaktskizze für die Äquivalenz setzt sich aus zwei Umschaltekontakte derselben Stellung zusammen:

X yio B 111/70: Äquivalenz

x

3.4.5. Antivalenz

Die logische Funktion ,Antivalenz' ergibt sich als Negation der Äquivalenz. Der Wertetafel entnehmen wir die Definition:

Bei der Antivalenz ist die Ausgangsvariable y 7 dann und nur dann L, wenn die beiden Eingangsvariablen x 1 ; x 2 verschiedende Werte annehmen.

Daraus folgt die Schaltfunktion der Antivalenz: y7 = ( X l & x 2 ) V ( x i & x 2 )

198

Teil III. Logische Grundlagen

Die Gebietsdarstellung für die Antivalenz folgt als Komplementärfläche der Äquivalenz (B 111/71).

B III/71: Antivalenz y 7

Die Symboldarstellung entnimmt man auch hier direkt der Schaltfunktion.

B HI/72: Symboldarstellung der Antivalenz

Die Kontaktskizze der Antivalenz setzt sich aus zwei Umschaltekontakten entgegengesetzter Stellung zusammen.

x2 y7

B HI/73: Antivalenz

3. Schaltalgebra

199

3.4.6. Inhibition Die logische Funktion y 3 bezeichnet man als Inhibit-Funktion (Inhibition). Sie ist von großer Bedeutung für die praktische Schaltungsanwendung, da mit ihr alle anderen Funktionen dargestellt werden können. Die Schaltfunktion folgt wieder direkt aus der Wertetafel:

y 3 = Xi & x 2 bzw. y s = X! & x 2 Die Ausgangsvariable bei der Inhibit-Funktion ist dann. L, wenn eine der beiden Eingangsvariablen x l 5 x 2 den Wert L und die andere den Wert O hat.

Die Gebietsdarstellung folgt wieder einfach aus der Definition.

B III/74: Inhibit y3

=

X j & X2

Die Symboldarstellung der Inhibition zeigt eine AND-Schaltung, wobei der eine Eingang negiert ist.

>

y3 = x t & x2

B 111/75: Symboldaistellung der Inhibit-Funktion

200

Teil III. Logische Grundlagen

Die Kontaktskizze ergibt sich als Reihenschaltung eines Arbeits- und eines Ruhekontaktes: X

1

|

/

i

^ t

• y3

B HI/76: Inhibit-Funktion

Die logische Funktion y s in B 111/61 stellt ebenfalls die Inhibit-Funktion dar, wobei nur die beiden Eingangsvariablen Xj, x 2 miteinander vertauscht sind. Die negierte Eingangsvariable ist hier Xi: Ys = * i & x 2 3.4.7.

Implikation

Durch Negation der Inhibit-Funktion erhalten wir die sog. Implikation y 1 4 . Die Schaltfunktion hierfür ergibt sich also zu: y14 = y 3 = x j & x2

Die Gebietsdarstellung der Implikation folgt wieder als Komplementfläche der Inhibition.

B III/77: Implikation

yi4 Die Symboldarstellung zeigt eine NAND-Schaltung mit negiertem x 2 -Eingang:

v 1 = X

B III/78: Symboldarstellung der Implikation

t

&X

2

201

3. Schaltalgebra

Über das Morgan'sche Theorem erhalten wir: y14 =x, &x2 =*i Vx2 Mit diesem Ausdruck für die Implikation können wir auch die Kontaktskizze angeben: x

B 111/79: Implikation

i

x2

Die logische Funktion yl2 stellt ebenso wie yl4 die Implikation dar. Nur die Eingangsvariablen Xj und x 2 sind miteinander vertauscht. 3.4.8.

Zusammenfassung

Wir haben nun alle 2 • 5 = 10 technisch brauchbaren logischen Funktionen besprochen und in ihren verschiedenen Darstellungsmöglichkeiten verglichen. Zum besseren Vergleich fassen wir die gewonnenen Erkenntnisse in B 111/80 zusammen. Die 6 unbrauchbaren Funktionen lassen wir dabei gleich weg.

Eingangs-

X]

variable

0

0

0

L 0

L L L L

logische Funktionen Schaltfunktion

Bezeichnung

y2 = x, & x2

Konjunktion

L O U

y3 = X j & x 2 y5 = x, & x2

Inhibition

y7

0

L

L 0

y7 = ( x , & x 2 ) V (X| & X 2 )

ys

0

L

L

y8 = x ,

y9

L 0

negierte

yio

L O O L

y 1 0 = (x, & x 2 ) V (x, & x 2 )

Formen

yn

L 0

y,2 =xj &x2

Normalformen

y2

0

0

ys

0

O L 0

ys

u

yi4

L

yis

L L

0

L

O 0

L

L

L O L L 0

vx2

y9 = xt V x2

yi4 = xj & x 2 yis = x j & x 2

Abk. AND

Inhibition Antivalenz Disjunktion neg. Disjunktion

OR

NOR

Äquivalenz Implikation Implikation neg. Konjunktion

B 111/80: die 2 • 5 = 10 technisch brauchbaren logischen Funktionen von 2 Eingangsvariablen.

NAND

202

Teil III. Logische Grundlagen

AUFGABEN 1.

zu III, 3 . 1 . / 3 . 2 . / 3 . 3 . / 3 . 4 .

Wer war der Begründer der Schaltalgebra? a) Boole b) Aristoteles c) Morgan

2.

Welcher der beiden Begriffe ,Boolesche Algebra' und Schaltalgebra' ist der umfassendere? a) beide völlig gleichberechtigt b) Schaltalgebra c) Boole'sche Algebra

3.

Welches sind die drei Grundfunktionen, mit denen man alle anderen Booleschen Funktionen zweier Eingangsvariabler ausdrücken kann? a) Identität, Negation, AND b) Negation, AND, NAND c) Negation, AND, OR

4.

Wie lautet die Boole'sche Funktion der 5 Eingangsvariablen x j , x 2 , x 3 , x 4 , x s , deren Ausgangsvariable y nur dann O wird, wenn zugleich alle 5 Eingangsvariablen O sind? a) Disjunktion ( O R ) b) Konjunktion (AND) c) NOR-Funktion

5.

Was versteht man unter einem Arbeitskontakt in der Relaistechnik? a) Kontakt eines Relais, der öffnet, sobald das Relais erregt wird. b) Kontakt, der von einem Ausgangskontakt zu einem anderen umschaltet, sobald das Relais erregt wird. c) Kontakt, der schließt, sobald das Relais erregt wird.

6.

Wie wird die AND-Funktion von 2 Eingangsvariablen x 1 ; x 2 skizze dargestellt?

als Kontakt-

a) als Reihenschaltung von 2 Arbeitskontakten, die die 2 Eingangsvariablen x j , x 2 repräsentieren b) als Reihenschaltung von 4 Ruhekontakten, die die 2 Eingangsvariablen X j , x 2 repräsentieren c) als Parallelschaltung von 2 Arbeitskontakten, die die 2 Eingangsvariablen repräsentieren

203

3. Schaltalgebra

7.

Wie lautet die Schaltfunktion (noch nicht minimisiert), deren Symboldarstellung im folgenden angegeben ist?

a) y = ( x i V x 2 ) & X i & ( x j

Vx2)

b) y = (xi & x 2 ) V x 1 V ( x j & x 2 ) c) y = ( x , V x 2 ) & x j & (xi V x 2 )

8.

Wie lautet die Schaltfunktion, deren Gebietsdarstellung hier angegeben ist?

a) y = ( X l &X 2 )V_( X 1 & x 3 ) b) y = (x! & x 2 & x 3 ) V (X! & x 2 & x 3 ) c) y = ( X l V x 2 V x 3 ) & ( x j V x 2 V x 3 ) 9.

Wieviele Zeilen hat die Wertetafel einer Funktion von 5 Eingangsvariablen? a) 2 S = 32 b) 2 l S = 2 3 2 « 5 MUliarden c) 5 2 = 25

10.

Wieviele der überhaupt möglichen Boole'schen Funktionen von 2 Eingangsvariablen sind technisch verwertbar? a) 18 b) 2, nämlich AND und OR c) 10

204 11.

Teil III. Logische Grundlagen

Welche Boole'sche Funktion zweier Eingangsvariabler ist dann und nur dann O, wenn beide Eingangsvariablen gleich sind? a) Antivalenz b) Äquivalenz c) Implikation

12.

Welche Boole'sche Funktion zweier Eingangsvariabler geht aus der Negation der Implikation hervor? a) Antivalenz b) Inhibition c) Äquivalenz

3.5. Rechenregeln 3.5.1. Postulate Um die verschiedenen Rechenregeln der Schaltalgebra herzuleiten, gehen wir von einigen wenigen Grundbeziehungen, den sog. Postulaten, aus. Diese Postulate sind Definitionen und lassen sich als Axiome innerhalb der Schaltalgebra selbst nicht mehr beweisen. Jedoch lassen sich alle anderen Rechenregeln mit Hilfe dieser Postulate beweisen. Wir werden den entsprechenden Beweis natürlich nicht bei jeder hier angegebenen Regel vornehmen. Wir begnügen uns i. a. mit einer Veranschaulichung durch Kontaktskizzen oder bzw. und Gebietsdarstellungen.

Die Postulate lauten:

0 V0 =0 L &L =L

L = 0

(la)

Ö=L

(lb)

(2a) (2b)

L VL =L 0 & 0 = 0 Ii I i

-1 O

0 VL=LV 0 0 &L =L & 0

(3a) (3b)

(4a) (4b)

Das Postulat (1) bedeutet einfach die Negation. Da wir nämlich nur über die zwei Werte O und L verfügen, muß zwangsläufig der eine Wert durch Negation in den anderen übergehen. Die Postulate (2) und (3) sind in ihrer einfachen Aussage ohnehin plausibel. Das Postulat (4a) kann entsprechend der Kontaktdarstellung als die Parallelschaltung eines (stets) offenen und eines (stets) geschlossenen Kontaktes aufgefaßt werden. Der Strompfad ist also über den oberen Zweig (geschlossener Kontakt) stets durchgeschaltet. Dies bedeutet: der Ausgang y ist stets L.

205

3. Schaltalgebra

L * BIII/81: Postulat (4a)

y=L

O

Das Postulat (4b) kann dagegen als Reihenschaltung eines (stets) offenen und eines (stets) geschlossenen Kontaktes interpretiert werden. Der Strompfad bleibt hier natürlich stets unterbrochen. Dies bedeutet, daß die Ausgangsvariable stets y = 0. L B 111/82: Postulat (4b)

|



O •





• y=o

3.5.2. Theoreme Von großer Bedeutung für die praktische Anwendung der Schaltalgebra auf dem Gebiet digitaler Schaltnetzwerke ist die Möglichkeit der Vereinfachung der Schaltfunktionen. Eindeutige Kriterien für diese Vereinfachung (Minimisierung genannt) kann man allerdings in allgemeiner Form nicht angeben — sie hängen zu sehr von der jeweils gewählten Schaltkreistechnik ab. Häufig versucht man die Schaltfunktion so umzuformen, daß am Ende möglichst wenig Eingangsvariable auf die Ausgangsvariable einen Einfluß ausüben. Wir werden darauf noch genauer eingehen. Zunächst wollen wir uns verschiedene Rechenregeln und Beziehungen aus den Postulaten herleiten — wir werden sie für die Vereinfachung von Schaltfunktionen benützen können. Es ist wichtig, daß man sich eine gewisse Routine bei der Anwendung dieser Theoreme aneignet! Eine einfache und plausible Deutung der Theoreme findet sich, wenn die Disjunktion (V) durch eine Parallelschaltung und die Konjunktion (&) durch eine Reihenschaltung der entsprechenden Kontakte in der Kontaktskizze realisiert werden.

Theoreme: xV0 =x x V L =L

(la) (1b)

x&0 = 0 x&L =x

(2a) (2b)

xVx =x X & X = X

(3a) (3b)

x Vx =L x&x =0

(4a) (4b)

X = X

(5)

Teil III.'Logische Grundlagen

206

Als Methode zum Beweis dieser Theoreme aus den Postulaten heraus bietet sich das sog. Induktions-Verfahren an. Dabei geht man folgendermaßen vor: Die Variable x kann als Boole'sche Größe einen der beiden Werte 0 , L annehmen. Andere Werte für x sind nicht zugelassen. Wollen wir nun eines der angegebenen Theoreme beweisen, so brauchen wir deshalb nur zu zeigen, daß das Theorem sowohl für x = 0 als auch für x = L erfüllt ist. Beispiel: Das Theorem (4a) behauptet: x V x = L Beweis für x = O: linke Seite: OVO mit Postulat ( l b ) : = O V L mit Postulat (4a): = L = rechte Seite = L Beweis für x = L: linke Seite: LVL mit Postulat ( l a ) : = L V O mit Postulat (4a): = L = rechte Seite = L d. h.: das Theorem (4a) ist sowohl für x = O als auch für x = L erfüllt — also ist es allgemein erfüllt. Auf diese Weise lassen sich auch die übrigen Theoreme beweisen. Zur Veranschaulichung der Aussagen eines Theorems sind die Kontaktskizzen auch sehr nützlich: Beispiel: Theorem (2a) lautet: x & 0 = 0 Als Kontaktskizze wird diese Ausssage leicht verständlich: 1

l x



• O

• y=x&O= O B III/8 3

Die Konjunktion zwischen einer Boole'schen Größe x und dem Wert O ist stets O, da der Strompfad - unabhängig von x - stets unterbrochen bleibt. 3.5.3. Assoziatives Gesetz Aus der gewöhnlichen Algebra kennen wir das Assoziative Gesetz in folgender Form: für die Addition: (x! + x 2 ) + x 3 = X! + (x 2 + x 3 ) = Xj + x 2 + x 3 Multiplikation : ( x j • x 2 ) • x 3 = x j • (x 2 • x 3 ) = x x • x 2 • x 3 Dabei kennzeichnen die Klammern die zuerst auszuwertenden Ausdrücke.

3. Schaltalgebra

207

Das Assoziative Gesetz besagt also: Wird auf mehrere Variable nur ein Operationstyp angewandt, so ist es gleichgültig, welche Variablen wir zuerst zusammenfassen. Die Stellung der Klammern ist also gleichgültig - sie können deshalb ganz weggelassen werden. In dieser Form gilt das Assoziative Gesetz auch für die Operationen .Disjunktion' (V) und .Konjunktion' (&). Es gilt also: für die Disjunktion: ( x 1 V x 2 ) V x 3 = x , V ( x 2 V x 3 ) = X! V x 2 V x 3 für die Konjunktion: (x t & x 2 ) & X 3 = Xj & (x 2 & x 3 ) = Xj & x 2 & x 3 Die Gültigkeit des Assoziativen Gesetzes für die Konjunktion wollen wir uns über die Gebietsdarstellung verdeutlichen (B III/84). Über die beiden verschiedenen Zwischenergebnisse: yi =(*i & x 2 ) und y 2 = (x 2 & x 3 ) kommen wir auf dasselbe Endergebnis: x t & x 2 & x 3

208

Teil III. Logische Grundlagen

3.5.4. Distributives Gesetz Auch bei diesem Gesetz wollen wir auf die gewöhnliche Algebra zurückgreifen. Dort gilt: xi • ( x 2 + x 3 ) = (X! • x 2 ) + (X! • x 3 ) Hiervon ausgehend können wir für die Schaltalgebra in analoger Weise anschreiben: Distributives Gesetz 1. Art: X! & ( x 2 V x 3 ) = ( X l & x 2 ) V ( X l & x 3 ) In der gewöhnlichen Algebra gilt die 2. Form des Distributiven Gesetzes nicht; es ist nämlich: x i + (x 2 • x 3 ) ^ (X! + x 2 ) • (X! + x 3 ) Die rechte und linke Seite dieses Ausdrucks bedeuten etwas völlig Verschiedenes. Anders ist die Situation in der Schaltalgebra. Dort gilt: Distributives Gesetz 2. Art: Xl

V (x2 & x 3 ) = ( X l V x 2 ) & ( X l V x 3 )

In der Schaltalgebra sind also die Kurzzeichen & und V völlig gleichberechtigt. Mit dem Distributiven Gesetz 2. Art lassen sich ebenso häufig Vereinfachungen von Schaltfunktionen durchführen wie mit dem 1. Art. Zu Minimisierungs-Zwekken werden die beiden Distributiven Gesetze meist von rechts nach links eingesetzt. Den Beweis für die Gültigkeit der beiden Gesetze kann man auch hier wieder mit der Methode der Induktion durchführen. Dazu wählt man alle möglichen 0,LKombinationen der Variablen Xj, x 2 , x 3 (es sind insgesamt 2 3 = 8) und zeigt, daß beide Seiten obiger Rechenregeln jeweils denselben Wert ergeben.

3.5.5. Morgan'sches Theorem Eine sehr wichtige und praktische Umformregel finden wir in dem nach Morgan benannten Theorem. Es kennzeichnet recht deutlich den Dualismus zwischen der Konjunktion und der Disjunktion, der schon bei den Postulaten auffiel. Morgan'sches Theorem: x 1 V x 2 = x 1 & x2 und:

Xj & x 2 = x j V x 2

3. Schaltalgebra

209

Mit Hilfe dieses Theorems kann also eine Disjunktion zwischen Eingangsvariablen x 1 ; x 2 in eine Konjunktion zwischen ihren Negationen x j , x 2 umgewandelt werden. Ebenso ist die Zurückführung der Konjunktion auf die Disjunktion möglich. Der amerikanische Mathematiker Shannon, der viel zur derzeitigen praktischen Bedeutung der Schaltalgebra beigetragen hat, brachte obige Aussage in eine allgemeinere Form für beliebige viele Variable x ( xn: verallgemeinertes M organ'sches Theorem: y (x!,x2,

x n , & , V) = y ( x 1 ; x 2 , . . . x n , V,&)

Dieses Theorem besagt folgendes: Für eine beliebige logische Funktion y der Eingangsvariablen Xj, x 2 , . . . x n erhält man die Negation y dieser Funktion, indem man: jede Variable x durch deren Komplement x ersetzt und: die Konjunktionen & mit den Disjunktionen V vertauscht. Beispiel: es sei: y = x x V (x 2 & x 3 ) V (x 2 & x 3 ) dann erhält man nach obigem Theorem die Negation y zu: y = Xj V (x 2 & x 3 ) V ( x 2 & x 3 ) = X! & ( x 2 V x 3 ) & ( x 2 V x 3 ) Die Negation y kann also sehr einfach durch rein formale Umwandlung gewonnen werden. Durch Induktion wollen wir nun das Morgan'sche Theorem in seiner einfachen Form beweisen. Jeder der beiden Eingangsvariablen x 1 ; x 2 kann jeweils einen der beiden Werte O, L annehmen. Insgesamt erhalten wir also 4 mögliche Wertekombinationen, für die wir die Gleichheit der linken und rechten Seite des Morgan'schen Theorems zeigen müssen. Behauptung:

Xi V x 2 = Xj & x 2

Beweis: Xl

x2

xi V x 2

Xi V x 2

Xl

x2

X! & X2

0 0 L L

0 L 0 L

0 L L L

L 0 0 0

L L Ö 0

L 0 L 0

L 0 0 0

es ist also: Unke Seite damit ist die Behauptung stets erfüllt. 14

Dworatschek

=

rechte Seite

Teil III. Logische Grundlagen

210 3.5.6. Entwicklungstheorem

Die Anwendung des Entwicklungstheorems kann manchmal recht schnell zu Vereinfachungen der Schaltfunktion fuhren. Das Entwicklungstheorem lautet: Liegt eine logische Funktion y von den Eingangsvariablen Xj, x 2 . . . . x„ vor, so gelten die beiden Beziehungen: y (xj, x 2 , . . . x n ) = [xj & y (L,x 2 ,. . . x n )] V [Xj & y (0, x 2 , . . . x„)] y (x l 5 x 2 , . . . x n ) = [xj V y (0, x 2 , . . . x„)j & [xj V y ( L , x 2 , . . . x„)] Die Gültigkeit dieser beiden Beziehungen kann wieder leicht bewiesen werden, indem man für Xj einmal 0 und einmal L einsetzt. Wir wollen uns hier auf den Nachweis für X! = 0 und auf die erste Beziehung beschränken. y (0, x 2 . . . x n ) = [O & y ( L , x 2 , . . . x n )] V [Ö & V (0, x 2 , . . . x„)] O V [L & y (0, x 2 , . . . x n )] O V y (0, x 2 , . . . x n ) y (0, x 2 , . . . x n ) d. h., die linke und rechte sind gleich; die Beziehung ist also für xi = O gültig. Analog läuft der Beweis für Xj = L. 3.5.7. Beispiel

An einem Beispiel werden wir nun sehen, wie die verschiedenen Theoreme zur Vereinfachung einer Boole'schen Funktion dienen können. Bei den schrittweise durchgeführten Umwandlungen geben wir stets die Nummer des Theorems an, nach denen die jeweilige Umformung vorgenommen wird. Vorgegeben sei uns folgende Schaltfunktion: y = [(xi v x 2 ) & (x, V x 3 )] V ( X l & x 2 & x 3 ) Nun sei es beispielsweise aus technischen Überlegungen heraus wünschenswert, diese Schaltfunktion so stark wie möglich zu vereinfachen, um Bauteile zu sparen. Vereinfachungen werden wir einmal mit dem Entwicklungssatz und einmal direkt, über Gebietsdarstellung und Kontaktskizze, vornehmen. 3.5.7.1. Vereinfachung über den Entwicklungssatz Zunächst berechnen wir aus der gegebenen Schaltfunktion: y (x! = 0 ) = [(0 V x 2 ) & ( 0 V x 3 ) ] V ( 0 & x 2 & x 3 ) mit Theorem (la) und (2a) folgt: = [x 2 & x 3 ] V O mit Theorem (la) folgt: = x2 & x 3

3. Schaltalgebra

211

Nun bestimmen wir aus der Schaltfunktion noch: y ( X l = L) = [(L V x 2 ) & (L V x 3 )] V (L & x 2 & x 3 ) mit dem Distributiven Gesetz 2. Art folgt: = [L V (x 2 & x 3 )] V (L & x 2 & x 3 ) mit dem Assoziativen Gesetz gilt: = [LV(x2&x3)]V[L&(x2&x3)] mit Theorem ( l b ) und (2b) folgt: = LV(x, &x3) mit Theorem ( l b ) folgt schließlich: =L Mit den beiden Ausdrücken: y (*i = 0 ) = x 2 & x 3 y ( x , = L) = L können wir nun den Entwicklungssatz auswerten: y = [x,&y(x1=L)]V[x1&y(x1=0)] = [ X l & L] V [ Xj & ( x 2 & x 3 ) ] = Xj V [ X ! & ( x 2 & x 3 ) ] = (Xl V x , ) & [ x , V ( x 2 & x 3 ) ] = L & [ X l V(x2 &x3)] = Xj V (x 2 & x 3 ) Die ursprüngliche Form der Schaltfunktion wurde also auf die vereinfachte Form y = Xj V (x 2 & x 3 ) zurückgeführt.

3.5.7.2. direkte Vereinfachung Wir wollen nun ohne Entwicklungssatz, d. h. nur mit den übrigen Regeln, auskommen. Vorgegeben ist wieder die Schaltfunktion: y = t(xi V x 2 ) & ( X l V x 3 )] V ( X l & x 2 & x 3 ) mit dem Distributiven Gesetz 2. Art folgt: = [X! V (x 2 & x 3 )] V ( X l & x 2 & x 3 ) mit Theorem (2b) folgt: = [x t V ( L & X 2 & X 3 ) ] V ( X 1 & x 2 & x 3 ) Wir führen die Abkürzung z ein: z = x2 & x3 14 •

212

Teil III. Logische Grundlagen

Dann folgt: y = [xi V z] V (xj &z) Über das Assoziative Gesetz ergibt sich: = x j V[z V ( x i &z)] mit dem Distributiven Gesetz 2. Art folgt: = X l V [(z V x j ) & (z V z)] Theorem (3a) liefert: = X l V[z V x O & z ] nach dem Distributiven Gesetz 2. Art folgt: = [Xl V ( z V x , ) ] & ( x , Vz) das Assoziative Gesetz und Theorem (3a) ergeben: = [x, V z ] & ( x i V z ) die identischen Klammerandrücke ergeben nach Theorem (3b): y = Xi V z = xi V ( x 2 & x 3 ) Wir erhalten auch hier die vereinfachte Schaltfunktion: y = x j V(x2&x3). 3.5.7.3. Vereinfachung über die Gebietsdarstellung Die zu vereinfachende Schaltfunktion y können wir in zwei Terme y j und y 2 aufspalten, die wir getrennt als Fläche darstellen.

y=

[(Xi

v x 2 ) & ( X l V x 3 )] V ( X l & x 2 & x 3 ) yi V y 2

d. h. der 1. Term lautet: Yi =(xi V x 2 ) & ( x i V x 3 ) In B III/ 85 bilden wir die dazugehörige Gebietsdarstellung. Rückschließend aus der schraffierten Fläche ergibt sich, daß man auch schreiben kann: yi = x j V ( x 2 & x 3 )

B III/85: 1. Terra:

yi

3. Schaltalgebra

213

Der 2. Term der Schaltfunktion lautet: y 2 =Xi & x 2 & x 3 Die hierzugehörige Gebietsaufteilung sehen wir in B 111/86.

B III/86: 2. Term: y 2

Vergleichen wir nun B HI/86 und B HI/85, so stellen wir fest, daß die Fläche für y 2 schon in der Fläche für y ! enthalten ist. Da die beiden Terme y t und y 2 mit V verknüpft sind, besagt dies, daß der 2. Term völlig überflüssig ist. Es genügt also auch zu schreiben: y = yi = * i V ( x 2 & x 3 ) Dies aber ist die schon in 3.5.6.1 ./2. gefundene, vereinfachte Form für die Schaltfunktion y. 3.5.7.4.

Vereinfachung über die

Kontaktskizze

Die Kontaktskizze für die vorgegebene Schaltfunktion y ist in B III/87 angegeben. Zusätzlich sind die möglichen Stromwege eingezeichnet. Xj

xt

2. Term: y 2 B III/87: Kontaktskizze für y = [(x x V x 2 ) & (xj V x 3 ) ] V (xj & x 2 & x 3 )

214

Teil III. Logische Grundlagen

Der 1. Weg, der zu dem Wert y = L führt, ist schon brauchbar, wenn xl = L. Der 2. Weg schließt den Strompfad, sobald x 2 = L und x 3 = L. Der 3. Weg ist nur gangbar, wenn Xj = L, x 2 = L und x 3 = L. Dann ist aber der Strompfad ohnehin schon über den 1. und 2. Weg geschlossen. Den 3. Weg können wir also völlig weglassen. Den 1. und den 2. Weg können wir noch etwas .zusammenziehen' und erhalten als Ergebnis B 111/88.

y B m/88

Aus dieser Kontaktskizze können wir rückschließend sofort die uns schon bekannte Form der vereinfachten Schaltfunktion y ablesen:

y = Xj V(x 2 & x 3 )

3.6. Normalformen der Schaltfunktion Im vorhergehenden Abschnitt haben wir an einem Beispiel gesehen, daß ein und dieselbe Schaltfunktion umfangreicher oder aber vereinfacht angeschrieben werden kann. Dieselbe Schaltfunktion kann also in verschiedenen Schreibformen auftreten, wobei allerdings jede Form durch Umwandlung nach den angegebenen Rechenregeln in die andere Form gebracht werden kann. Im folgenden werden wir zwei .genormte' Formen der Schaltfunktion kennenlernen — also Formen mit klar definiertem Aufbau. Es sind dies die .Disjunktive Normalform' und die .Konjunktive Normalform'. 3.6.1. Disjunktive Normalform Wir wollen nun eine Methode kennenlernen, wie man aus der Wertetafel einer Boole'schen Funktion die Schaltfunktion selbst (d. h. die Schreibweise mit Kurzzeichen) aufbauen kann. Dazu verwenden wir die sog. Disjunktive Normalform. Aus 3.4. wissen wir, daß die Wertetafel irgendeiner Bool'schen Funktion bei n Eingangsvariablen X1(X2 x n gerade 2" Zeilen besitzt. Als Vollkonjunktionen bezeichnen wir nun den Boole'schen Ausdruck, der entsteht, indem

3. Schaltalgebra

215

wir alle Eingangsvariablen oder ihre Negationen konjunktiv (&) miteinander verknüpfen. Eine Möglichkeit wäre beispielsweise: Xj & x 2 & x 3

Xn.j & x„.

Ob die Eingangsvariable hierbei selbst oder ihre Negation verwendet wird, das legt die Wertetafel fest. Für jede Zeile der Wertetafel erhalten wir nämlich eine Vollkonjunktion — jede Zeile ist ja gerade eine 0,L-Kombination aller n Eingangsvariablen. Insgesamt treten also 2 n Vollkonjunktionen auf. Bei der Bildung der Vollkonjunktion für eine bestimmte Zeile wird die Eingangsvariable xj mit Xj eingesetzt, wenn sie in dieser Zeile der Wertetafel mit L markiert ist. Ist sie dort mit O markiert, so wird Xj in die Vollkonjunktion eingetragen. Eine Vollkonjunktion nennt man häufig auch Minterm. Verknüpft man nun all die Minterme, für welche die Ausgangsvariable y laut Wertetafel zu L wird, disjunktiv miteinander, so erhält man die Disjunktive Normalform (Abk.: DNF). Sie ist, wie schon erwähnt, eine der vielen möglichen Formen der Schaltfunktion. An einem konkreten Beispiel wollen wir uns nun die Aufstellung der DNF aus der vorgegebenen Wertetafel genauer ansehen. Zur Festlegung der Wertetafel geben wir vor: Es seien drei Eingangsvariable x 1 , x 2 , x 3 vorhanden, d. h., hier ist n = 3. Damit erhalten wir eine Wertetafel mit 2" = 2 3 = 8 Zeilen. Nun können wir noch die Spalte für die Ausgangsvariable y und damit die Eigenschaften der Funktion vorgegeben. Dazu schreiben wir beispielsweise vor: die Ausgangsvariable y sei nur L, wenn gilt: oder: oder: oder:

Xj X! Xj x|

=0 =O =L —L

x2 = 0 x2 = O x2 = L x2 = L

x3 = O x3 = L x3 = 0 x3 = L

In allen anderen Fällen soll die Ausgangsvariable y = O sein. Aus diesen Angaben und Bedingungen heraus können wir die Wertetafel aufstellen. Zunächst benötigen wir die Vollkonjunktionen (Minterme), für die die Ausgangsvariable y = L wird. Der y-Spalte in B III/89 entnehmen wir: es sind dies die Zeilen 1, 2, 7, 8 der Wertetafel. Die dazugehörigen Minterme ergeben sich zu: 1. Zeile 2. Zeile 7. Zeile 8. Zeile

Xj & x 2 x t & x2 Xj & x 2 x t & x2

&x3 & x3 & x3 & x3

216

Teil III. Logische Grundlagen

1. Zeile 2. Zeile

7. Zeile 8. Zeile

0 0 0 0 L L L L

x2

x3

y

O 0 L L 0 0 L L

o L 0 L O L 0 L

L < L 0 0 0 0 L * L
o an. Danach fällt sie wieder zur o-Stellung zurück. Die Zeitdauer T läßt sich über die entsprechende Veränderung von Bauelementen der Kippstufe (Widerstände, Kondensatoren) nach Wunsch einstellen. Monoflop werden aus diesem Grunde vor allem für zwei Zwecke eingesetzt:

247

2. Speicherarten

a) zur Erzeugung von Ausgangsimpulsen mit klar definierter Form aus verwaschenen' Eingangsimpulsen b) als Verzögerungsschaltung für Impulse Eingangsspannung Spannungsimpulse

-•Zeit t Ausgangsspannung

Vorzugsstellung

->- Zeit t T

T

T

B IV/13: Spannungsverlauf bei einer Monostabilen Kippstufe

Bistabile Kippstufe Die bistabile Kippstufe wird auch ,Eccles-Jordan-Schaltung' oder vor allem ,FlipFlop' genannt. Der aus dem Labor-Slang stammende Ausdruck ,Flip-Flop' (Abk.: FF) weist ebenso wie das Adjektiv: bistabil daraufhin, daß diese Kippstufe im Gegensatz zur monostabilen über zwei stabile Vorzugsstellungen verfügt. Nur durch einen Eingangsimpuls geht sie von einer Stellung in die andere über. Wird der aktuelle Zustand der Ausgangsspannung des Flip-Flop als 0 bzw. L interpretiert, so liegt im Flip-Flop ein Speicherelement für 1 Bit vor (B IV/14). Eingangsspannung

Zeit t Ausgangsspannung 2 Vorzugsstellungen Zeit t

B IV/14: Spannungsverlauf bei einer Bistabilen Kippstufe (Flip-Flop)

248

Teil IV. Technische Grundlagen

Astabile Kippstufe Wie der Name schon sagt, weist die astabile Kippstufe überhaupt keine stabile Vorzugsstellung auf. Die Ausgangsspannung pendelt — ohne Taktgabe vom Eingang her - stetig zwischen zwei Zuständen ( 0 und L) hin und her. Diese Eigenschaft wird vor allem bei Taktgeneratoren, bei denen eine hohe Taktfrequenz (bis herab zu Nanosekunden) gefordert wird, ausgenutzt. Ausgangsspannung

A

L —

Zeit t B IV/15 : Spannungsveilauf bei einer Astabilen Kippstufe

Schieberegister Das wichtigste Anwendungsbeispiel für Flip-Flop ist das Schieberegister. Es dient zur Aufnahme und (oft nur kurzzeitigen) Abspeicherung einer Folge von Binärzeichen (etwa ein Wort mit 48 Bits). Für jedes Binärzeichen ( 0 oder L) ist ein eigenes Flip-Flop vorgesehen. Jedes Flip-Flop ist mit dem vorhergehenden und dem nachfolgenden elektrisch verbunden. Die Binärfolge kann beispielsweise Bit für Bit in das Schieberegister eingeschrieben und taktweise hindurch geschoben werden. Die ganze Binärfolge kann aber auch parallel eingeschrieben werden, d. h., alle Bits werden gleichzeitig in die Flip-Flop übernommen. Ebenso ist ein Serien- oder ein Parallel-Auslesen möglich. Mit Hilfe einer derartigen Serien-Parallel-Umsetzung (vgl. B IV/16) kann etwa das von einem Kanal seriell eintreffende Wort parallel weitergegeben werden. Der umgekehrte Fall wäre die Parallel-Serien-Umsetzung (vgl. B IV/17). seriell empfangen: Schieberegister für 8 Bits, bestehend aus 8 Flip-Flop LLOOLLOL

L

L

i

1

L

L

O

1

0

0

L

L

I

i

1

0

parallel ausgegeben

B IV/16: Serien-Parallel-Umsetzung mit einem Schieberegister

L

L

0

L

l

1

0

L

2. Speicherarten

249

parallel empfangen: O

|

I 1J L

|

L

|

0

O

O r

'

1 I 11

L

0

[

L

|

0

|

L

seriell ausgegeben |

LLOOLLOL

Schieberegister für 8 Bits bestehend aus 8 Flip-Flop B 1V/17: Parallel-Serien-Umsetzung mit einem Schieberegister

2.2. Magnetkernspeicher 2.2.1. Physikalisches Prinzip Ein wichtiges Speicherelement der Digitaltechnik ist der Magnetkern, auch Ferritkern genannt. Das Material .Ferrit' entsteht aus Eisenoxyd und Metallzusatz (z. B.: Mn, Mg, Ni) über einen Sinterprozeß (= starkes Erhitzen unter Druck). Die üblichen Abmessungen eines Ferritkerns sind: Innendurchmesser : bis 1,5 mm Außendurchmesser: bis 2,5 mm Dicke : bis 0,5 mm Der Ferritkern hat eine charakteristische Magnetisierungskennlinie, die eine sog. Hysterese-Schleife bildet (vgl. B I V / 2 1 ) . Diese entsteht folgendermaßen: fließt in einem Draht, der durch einen Ferritkern gefädelt ist (vgl. B IV/18), ein Strom I m , so wird der Kern magnetisiert. Statt eine oder mehrere Schleifen um den Kern herum zu bilden, genügt es auch, den Draht nur einfach durch den Magnetkern zu fädeln (vgl. B I V / 1 9 ) . Dadurch wird derselbe Magnetisierungseffekt erzielt. Die Magnetisierung hält in praktisch unverminderter Intensität (+ B in B I V / 2 1 ) an, wenn der Strom wieder abgeschaltet wird. Schickt man nun durch den Draht einen Strom derselben Stärke in umgekehrter Richtung (also einen Strom - I m ) , so wird der Magnetkern in umgekehrter Richtung magnetisiert (- B). Auch dieser Magnetisierungszustand (- B) bleibt bei Abschalten des Stroms erhalten. Wird dagegen nur ein Strom + I m / 2 bzw. - 1 m / 2 verwandt, so kehrt der Kern stets in den zuvor eingenommenen Zustand zurück. Es liegt also-ein typisch binäres Speicherelement mit den beiden ausgezeichneten Magnetisierungszuständen + B und - B vor. Wir ordnen dem Zustand + B die Information L und dem Zustand - B die Information O zu. Damit vermag 1 Magnetkern gerade 1 Bit abzuspeichern. Das Einschreiben einer L, also der Übergang von - B zu + B, kann nur durch einen Strom + I m erfolgen. Das Einschreiben einer 0 , also der Übergang von + B zu - B erfolgt durch den Strom - I m .

250

Teü IV. Technische Grundlagen

Statt aber einen Strom (±) I m durch einen Draht (vgl. BIV/19) zu schicken, ist es auch möglich, jeweils einen Strom von (±) I m / 2 in 2 Drähten (vgl. BIV/20) fließen zu lassen. Das Lesen einer L, also der Übergang von + B zu - B, geschieht durch einen Strom - I m . Bei diesem Leseprozeß wird durch die Ummagnetisierung in einem gesondert durch den Kern geführten Lesedraht ein Spannungsimpuls u L erzeugt, der die vorliegende Information L kennzeichnet. Wäre nämlich der Zustand des Kerns - B, also O gewesen, so hätte der Lesestrom - I m keine Ummagnetisierung und damit auch keinen Leseimpuls erzeugt. Zusammenfassend kann festgehalten werden: a) Einschreiben geschieht ohne Benützung des Lesedrahtes, und zwar: 1. Einschreiben einer L: 2 Drähte mit + I m / 2 belasten 2. Einschreiben einer 0 : 2 Drähte mit - I m /2 belasten

Magneti-

sierungsintensität

+B =L

B IV/21: Magnetisierungskennlinie (Hystereseschleife)

Lesen:

- Im/2

B IV/22: Magnetkern mit: Zeilendraht Spaltendraht Lesedraht

2. Speicherarten

251

b) Lesen geschieht bei Benützung des Lesedrahtes mit zwei Strömen der jeweiligen Größe - I m / 2 : 1. war L abgespeichert, so wird: u l ^ O 2. war 0 abgespeichert, so wird: u L = 0 Nach dem Leseprozeß ist der Kernzustand stets - B (= O). War zuvor eine L abgespeichert, so muß sie jetzt wieder eingeschrieben werden.

X

1

x

2

X3

X4

Vi

Vi

Y3