Table Of ContentInformatik fur Maschinenbauer
Peter Kopacek
Robert Probst
Martin Zauner
SpringerW ienN ewYork
Univ.-Prof. Dipl.-Ing. Dr. techno Peter Kopacek
Univ.-Ass. Dipl.-Ing. Dr. techno Robert Probst
Institut fUr Handhabungsgerate und Robotertechnik
Technische Universitlit Wien
Wien, Osterreich
Dipl.-Ing. Dr. techno Martin Zauner
Abteilung fUr System-und Automatisierungstechnik
Wissenschaftliche Landesakademie fUr Niederosterreich
Krems, Osterreich
Das Werk ist urheberrechtlich geschUtzt.
Die dadurch begrundeten Rechte, insbesondere die der Ubersetzung, des Nachdruckes, der Entnahme
von Abbildungen, der Funksendung, der Wiedergabe auf photomechanischem oder lihnlichem Wege und
der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vor
behalten.
© 1995 Springer-Verlag/Wien
Reproduktionsfertige Vorlage von den Autoren
Gedruckt auf sliurefreiem, chlorfrei gebleichtem Papier - TCF
Mit 126 Abbildungen
Die Deutsche Bibliothek - CIP-Einheitsaufnahme
Kopacek, Peter:
Inforrnatik fUr Maschinenbauer / P. Kopacek, R. Probst und
M. Zauner. - Wien; New York: Springer, 1995
ISBN-13: 978-3-211-82755-0 e-ISBN-13: 978-3-7091-9444-7
DOl: 10.1007/978-3-7091-9444-7
NE: Probst, Robert:; Zauner, Martin:
Vorwort
Dieses Bueh entstand aus der Pfliehtvorlesung "EDV fUr Masehinenbauer" an
der Teehnisehen Universitat Wien. Zweek dieser Lehrveranstaltung und im weiteren
dieses Buehes ist es, den Anwendern und Entwicklern teehniseher Systeme die
Anwendungsmogliehkeiten von Reehnern und hier insbesonders von PCs naher zu
bringen. Der Teehniker muB in erster Linie in der Lage sein, kommerziell
verfiigbare Programme zu nutzen und Einsatzmogliehkeiten fUr PCs fUr gegebene
Aufgabenstellungen absehatzen zu konnen. Die eigentliehe Erstellung von
Programmen geMrt erst in zweiter Linie zu seinen Aufgaben.
Das Bueh behandelt aIle Grundlagenbereiehe der anwendungsorientierten
Informatik, die Kapitel Betriebssysteme und Programmierung werden anhand von
Beispielen aus dem Masehinenbau exemplariseh behandelt. Es ist sieher nieht
moglich, in dem zur Verfiigung stehenden Umfang ein komplexes C
Programmsystem einer vernetzten teehnisehen Anwendung zu erstellen. Zur
Vertiefung einzelner Kapitel wird die Lektiire der einsehlagigen Faehliteratur
empfohlen.
Da die "PC-Welt" sowohl von der Hard- als aueh von der Softwareseite einer
stiirmisehen Entwicklung unterliegt, konnen Teile des Buehes bei seinem Erseheinen
nieht mehr ganz aktuell sein. Dies gilt besonders fUr die im Kapitel
Anwenderprogramme angefUhrten Programme und Programmversionen sowie fUr
die Anwendungen im Masehinenbau.
Die Autoren hoffe n, sowohl den in der Praxis stehenden Teehnikern, den
Studierenden teehniseher Studienrichtungen und insbesondere Masehinenbauern,
eine praxisorientierte Einfiihrung in die Informatikwelt in die Hand zu geben. Unser
Dank gilt zunaehst unseren Studenten, welche uns auf viele neue Ideen bei der
Abfassung gebraeht haben. Unseren Mitarbeitern am Institut sowie an der Abteilung
System- und Automatisierungsteehnik an der Wissensehaftliehen Landesakademie
danken wir fUr das Anfertigen von Zeichnungen, fUr Sehreibarbeiten sowie fUr die
Formatierungsarbeiten. Dem Springer-Verlag und hier insbesonders Frau
Sehilgerius danken wir fUr die Gcduld -das Bueh ist doeh noeh fertig geworden.
Wien, im August 1995
M. Zauner R. Probst P. Kopaeek
InhaItsverzeichnis
1 GRUNDLAGEN DER INFORMATIK 1
1.1 Geschichte der Informatik 1
1.2 Teilgebiete der Informatik und Anwendungsbeispiele 8
1.3 Informationstechnik 10
1.3.1 Bits und Bytes 10
1.3.2 Zahlensysteme 11
1.3.3 Kodes und Kodierungstheorie 12
1.4 Grundlagen der Schaltalgebra 15
1.4.1 UND-Funktion (Konjunktion) 16
1.4.2 ODER-Funktion (Disjunktion) 16
1.4.3 NICHT-Funktion 16
1.4.4 Grundfunktionen 18
1.4.5 Speicher 19
2 DIE HARDWAREARCHITEKTUR 23
2.1 Die Zentraleinheit -Central Processing Unit -CPU 25
2.2 Die Speicher 27
2.2.1 Read Only Memory -ROM 28
2.2.2 Random Access Memory -RAM 28
2.3 Bussysteme 28
2.4 Ein-/Ausgabeeinheiten (I/O-Interfaces) 29
2.4.1 Schnittstellen und Schnittstellenkarten 29
2.4.2 Graphikkarte 30
2.4.3 Nctzwerkskarten 31
2.4.4 Festpiattencontroller 31
2.4.5 Signalwandler 31
2.5 Peripherie 33
2.5.1 Eingabegeriite 33
2.5.2 Ausgabegerate 35
2.6 Gerate zur Datenspeicherung 36
2.6.1 Magnetplatte (Festplatte -Diskette) 36
2.6.2 Optische Speicher -Laserplatte (CD-ROM) 38
2.7 Standardkonfiguration von PCs 39
VIII Inhaltsverzeichnis
3 DAS BETRIEBSSYSTEM 41
3.1 Einfiihrung 41
3.2 Das Betriebss),stem MS-DOS 44
3.2.1 Dateiverwaltung unter MS-DOS 46
3.2.2 Befehle 50
3.2.3 Stapel-Dateien (BATCH-FILES) 55
3.2.4 Laden von Programmen 57
3.2.5 Konfiguration mit CONFIG.SYS und AUTOEXEC.BAT 57
3.2.6 Entwicklungstendenzen von MS-DOS 59
3.3 Das Betriebssystem UNIX 60
3.3.1 Einfuhrung 60
3.3.2 Eigenschaften von UNIX 60
3.3.3 Anwendungsbcreiche von UNIX 63
3.3.4 Das Filesystem und rclevante Befchle 64
3.3.5 Kommandos, Programme, Prozesse 66
3.3.6 Wichtige Befehle in UNIX 73
3.3.7 Zunkunftsaspekte fur den Einsatz von UNIX 76
4 GRUNDLAGEN DES SOFTWAREENGINEERING 77
4.1 Phasen der Softwareentwicklung 78
4.2 Problem analyse 81
4.2.1 Problembeschreibung, Problemabgrenzung und Randbedingungen 81
4.3 Losungsanslitze 85
4.3.1 Losungsalgorithmus 86
4.3.2 Schrittweise Verfeinerung von Algorithmen 90
4.4 Strukturierte Programmierung 90
4.5 Objektorientierte Programmierung 91
4.5.1 Kapselung 92
4.5.2 Vererbung 93
4.5.3 Polymorphie 94
4.6 Programmierung 94
4.6.1 Algorithmen 95
4.6.2 Datenstrukturen und Datentypen 98
4.6.3 Dateien 102
5 PROGRAMMIERSPRACHEN 105
5.1 Ubersicht und Vergleich 105
5.1.1 FORTRAN 108
5.1.2 BASIC 108
5.1.3 PASCAL und MODULA 2 109
InhaItsverzeichnis IX
5.l.4 C 110
5.2 PASCAL 111
5.2.1 Der erste Start III
5.2.2 Ausgabe 113
5.2.3 Bezeichner 114
5.2.4 Datent)'Pen und Strukturen 114
5.2.5 Operatoren 120
5.2.6 Eingabe 122
5.2.7 M6glichkeiten zur Kontrolle der Programmabarbeitung 123
5.2.8 Dateioperationen 128
5.2.9 Beispiel: Eine komplette PASCAL-Entwicklung, Game of Life 131
5.3 C 145
5.3.1 Der erste Start 145
5.3.2 Operatoren und Ausdruckauswertung 149
5.3.3 Funktionen und Parameter 150
5.3.4 Moglichkeitcn zur Steuerung der Programmabarbeitung 153
5.3.5 Zeiger und Arrays 158
5.3.6 Ein-und Ausgabe 163
5.3.7 Strukturen 166
5.3.8 Beispiel: Eine komplette C-Entwicklung,
'SCAS!' (SCAra SImulation) 168
6DATENBANKEN 183
6.1 Einleitung 183
6.l.1 Konzepte zur Architektur von Datenbanksystemen 184
6.1.2 Die Architektur nach ANSI/SPARC 184
6.2 Daten 186
6.2.1 Datensatze und Objckte 186
6.2.2 Beziehungen 187
6.3 Das Wesen von Datenbanken 187
6.3.1 Das hierarchische Datenmodell 188
6.3.2 Relationale Datcnbanken 189
6.3.3 Netzwerkdatenbanken 190
6.3.4 Pseudo-relationale Datenbanken 191
6.3.5 Vorteile von Datenbanken 192
6.4 Die Komlwnenten einer Datenbank 193
6.4.1 Datenbank (DB) 194
6.4.2 Datenbankmanagementsystem (DBMS) 194
6.5 Normalisierung relationaler Datenbanken 195
6.5.1 Ziel des Normalisierungsprozesses 196
6.5.2 Normalformen 197
6.5.3 Normalisierungsvorgange in der Praxis 202
X Inhaltsverzeichnis
6.6 Die AbfrageSI)rache SQL -Structured Query Language 203
6.6.1 Beispiele fur einfache SQL-Abfragen 204
6.7 SQL -Abfragen in mehreren Tabellen 206
6.8 Zusammenfassung 207
7 MENSCH-MASCHINE-KOMMUNIKATION 209
7.1 Einlcitung 209
7.2 Informationseingabe durch den Menschen 211
7.3 Informationsdarstellung fijr den Menschen 213
7.4 Dialog im Mensch-Maschine-Kommunikationssystem 214
7.5 Benutzeroberllachen 215
7.6 Die Benutzeroberllache WINDOWS 218
7.6.1 Grundelemente von WINDOWS 219
7.6.2 WINDOWS-Dienstprogramme 222
7.7 Zusammenfassung 223
8 ANWENDERPROGRAMME 225
8.1 Einleitung 225
8.2 Textverarbeitung 225
8.3 Das Textverarbeitungsprogramm MS-WORD fijr WINDOWS 228
8.4 Tabellenkalkulation 229
8.5 Das Tabellenkalkulationsprogramm MS-EXCEL 230
8.6 Datenbanken 233
8.7 Grafikprogramme 233
8.8 Das Grafikl)rogramm COREL DRAW 234
8.9 Tools-oder Utilityprogramme 235
9 LOKALE NETZE 237
9.1 Aufbau und Eigenschaften lokaler Netze 237
9.2 Schnittstellen -Ankopplung von Gediten an LANs 239
9.3 Ubertragungsmedien in lokalen Netzen 240
Inhaltsverzeichnis XI
9.4 Ubertragungsvenahren in lokalen Netzen 140
9.5 UbertragungslJrotokolle 141
9.6 NetzwerkstolJologien 144
9.7 Zugriffsvenahren auf lokale Netze 147
9.8 Klassen von Rechnernetzwerken 150
9.9 Netzwerkbetrieb 150
9.10 Internet 151
9.11 Zusammenfassung 153
10 RECHNER 1M MASCHINENBAU 255
10.1 Kiinstliche Intelligenz und Expertensysteme im Maschinenbau 155
10.1 ComlJUtergralJhik 258
10.2.1 Definition und Arbeitsprinzipien 258
10.2.2 Ein-und Ausgabegerate 259
10.2.1 Softwareprobleme 262
10.3 Rechnergestiitzte Produktion (CIM) 263
10.3.1 Komponenten von CIM 264
10.3.2 CIM-Konzepte 266
10.3.3 RechnergestUtzterEntwurf 268
10.3.4 Kiinstliche Intelligenz in CIM-Systemen 275
10.4 Robotik 279
10.5 Digitalrechner in der Automatisierungstcchnik 283
10.5.1 Digitalrechner zur Proze6automatisierung 283
10.5.2 Entwicklungstendenzen 285
10.6 Simulationstcchnik 288
10.6.1 Grundlagen 288
10.6.2 Simulationsverfahren und ihr Einsatz 290
10.7 Neuronale Netzc 294
10.8 Mikro-und Nanosysteme 297
LlTERATUR 301
SACHVERZEICHNIS 303
1 Grundlagen der Informatik
Das Wort Informatik ist ein Kunstwort, gebildet aus den Begriffen Information
und Mathematik. Der Begriff ist eng mit dem elektronischen Rechner verknfipft und
wurde in Deutschland und Frankreich (Informatique) gepragt. 1m angelsachsischen
Sprachraum hat das Wort "Informatics" kaum Eingang gefunden und man spricht
von Computer Science.
Den Kern der Informatik bilden automatisiert ausfuhrbare Rechenverfahren.
Man nennt solche Verfahren Algorithmen nach dem persischen Mathematiker AI
Chowarizmi, der etwa urn 800 n. Chr. ein grundlegendes Buch fiber Algebra schrieb.
Algorithmen begegnen uns nicht nur in der Mathematik, sondern in mannigfaltiger
Gestalt im taglichen Leben. Jede Form einer Anleitung, zum Beispiel eine
Bedienungsanleitung fUr einen Fernsprecher, ist ein Algorithmus, der einen oft
komplizierten Vorgang in einfache Einzelschritte zerlegt.
Anleitung in der Telefonzelle:
1. FernMrer abheben
2. Geld einwerfen
3. Wahlen, nach Meldung des gewfinschten Teilnehmers -sofort
4. Zahlknopf drOcken
5. Wenn erstes Gesprach nicht zustande kommt -bei "Besetzt", "Nichtmelden"
oder "Melden eines falschen Teilnehmers" -FernMrer einhangen - Vorgang
ab Punkt I wiederholen.
6. Werden nach Beendigung des ersten Gespraches weitere Gesprache
gewOnscht, nur den Zahlknopf drOcken, wahlen und sprechen.
Auch im Bereich der Mathematik konnen bestimmte Rechenvorgange wie etwa
die vier Grundrechnungsarten, das Quadrieren oder die Zerlegung einer Zahl in ihre
Primfaktoren durch einen Algorithmus beschrieben werden. Diese Anleitung zeigt
einige grundsatzliche Eigenschaften von Algorithmen. Sie bestehen aus
Einzelschritten, die in der angegebenen Reihenfolge auszufiihren sind. Es ware zorn
Beispiel falsch, zuerst das Geld einzuwerfen und dann den FernMrer abzuheben.
Einzelne Schritte hangen von einer Bedingung abo Falls beispielsweise das erste
Gesprach nicht zustande kommt, dann soli der FernMrer eingehangt werden. Selbst
Wiederholungen gewisser Einzelschritte sind zulassig. Es wurde daher relativ frOh
erkannt, dafi es sich bei Algorithmen urn monoton abzuarbeitende Rechen
vorschriften handelt und dafi diese automatisierbar sind. Dies fUhrt zu einer
wesentlichen Entlastung des Menschen von immer wiederkehrenden, monotonen
Tatigkeiten.
1.1 Geschichte der Informatik
Die altesten bekannten Rechenhilfen sind der urn ca. 2500 v. Chr. in China
erfundene Abakus (Rechenbrett) (Tabelle 1.1). Auch heute noch benutzen