Grundlagen der Informatik: praktisch, technisch, theoretisch
Gespeichert in:
Hauptverfasser: | , , |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
München [u.a.]
Pearson Studium
2006
|
Schriftenreihe: | I - Informatik
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis Klappentext |
Beschreibung: | 778 S. Ill., zahlr. graph. Darst. 1 CD-ROM (12 cm) |
ISBN: | 382737216X 9783827372161 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV021651635 | ||
003 | DE-604 | ||
005 | 20230904 | ||
007 | t | ||
008 | 060711s2006 ad|| |||| 00||| ger d | ||
016 | 7 | |a 980211867 |2 DE-101 | |
020 | |a 382737216X |c Pp. : EUR 49.95 (DE), EUR 51.40 (AT) |9 3-8273-7216-X | ||
020 | |a 9783827372161 |9 978-3-8273-7216-1 | ||
035 | |a (OCoLC)162333554 | ||
035 | |a (DE-599)BVBBV021651635 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a ger | |
049 | |a DE-1046 |a DE-91G |a DE-12 |a DE-Di1 |a DE-M347 |a DE-703 |a DE-1051 |a DE-Aug4 |a DE-898 |a DE-355 |a DE-863 |a DE-859 |a DE-91 |a DE-526 |a DE-634 |a DE-83 |a DE-11 |a DE-188 | ||
082 | 0 | |a 004 |2 22/ger | |
084 | |a ST 110 |0 (DE-625)143583: |2 rvk | ||
084 | |a ST 120 |0 (DE-625)143585: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
084 | |a DAT 001f |2 stub | ||
100 | 1 | |a Herold, Helmut |d 1956- |e Verfasser |0 (DE-588)122454340 |4 aut | |
245 | 1 | 0 | |a Grundlagen der Informatik |b praktisch, technisch, theoretisch |c Helmut Herold ; Bruno Lurz ; Jürgen Wohlrab |
264 | 1 | |a München [u.a.] |b Pearson Studium |c 2006 | |
300 | |a 778 S. |b Ill., zahlr. graph. Darst. |e 1 CD-ROM (12 cm) | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a I - Informatik | |
650 | 0 | 7 | |a Informatik |0 (DE-588)4026894-9 |2 gnd |9 rswk-swf |
655 | 7 | |8 1\p |0 (DE-588)4123623-3 |a Lehrbuch |2 gnd-content | |
689 | 0 | 0 | |a Informatik |0 (DE-588)4026894-9 |D s |
689 | 0 | |8 2\p |5 DE-604 | |
700 | 1 | |a Lurz, Bruno |e Verfasser |0 (DE-588)131864653 |4 aut | |
700 | 1 | |a Wohlrab, Jürgen |d 1966- |e Verfasser |0 (DE-588)122403290 |4 aut | |
856 | 4 | 2 | |m Digitalisierung UB Regensburg |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000005&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
856 | 4 | 2 | |m Digitalisierung UB Regensburg |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000006&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |3 Klappentext |
999 | |a oai:aleph.bib-bvb.de:BVB01-014866283 | ||
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
883 | 1 | |8 2\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk |
Datensatz im Suchindex
DE-BY-863_location | 1000 |
---|---|
DE-BY-FWS_call_number | 1000/ST 110 H561st 1000/ST 110 H561 |
DE-BY-FWS_katkey | 273334 |
DE-BY-FWS_media_number | 083100952466 083100952455 |
_version_ | 1806174390016016384 |
adam_text | Inhaltsverzeichnis
Kapitel 1 Einleitung 17
1.1 Idee dieses Buches........................................................ 18
1.2 Beispiele, Übungen und Rätsel............................................ 19
1.3 Begleitmaterial zu diesem Buch........................................... 20
1.4 Benutzung der mitgelieferten CD......................................... 21
1.5 Danksagung............................................................... 21
1.6 Hinweis in eigener Sache................................................. 22
Teil
Kapitel 2 Die Historie und die Teilgebiete der Informatik 25
2.1 Rätsel: Streichholzprobleme.............................................. 26
2.2 Der Begriff Informatik..................................................... 26
2.3 Historische Entwicklung der Informatik.................................. 26
2.3.1 Der
2.3.2 Der Begriff Algorithmus und Ibn
2.3.3 Wichtige Stationen von 1500 bis 1930............................ 30
2.3.4 Konrad Zuse und der erste funktionstüchtige Computer......... 32
2.3.5 Howard H. Aiken und die Mark
2.3.6 John von Neumann............................................... 34
2.3.7 Generationen der elektronischen Datenverarbeitung............. 35
2.4 Einordnung und Einteilung der Informatik............................... 39
2.4.1 Verschiedene Einsatzgebiete von Computern (Informatik)........ 39
2.4.2 Die Teilgebiete der Informatik.................................... 40
2.4.3 Die Informatik und unsere Abhängigkeit von ihr................. 43
Kapitel 3 Speicherung und Interpretation von Information 45
3.1 Rätsel: Umfüllprobleme................................................... 46
3.2 Unterschiedliche Zahlensysteme......................................... 46
3.2.1 Das römische Zahlensystem...................................... 46
3.2.2 Positionssysteme................................................. 47
3.2.3 Positionssysteme bei natürlichen Zahlen......................... 48
3.2.4 Positionssysteme bei gebrochenen Zahlen....................... 53
3.3 Dual-, Oktal- und Hexadezimalsystem.................................... 54
3.3.1 Das Dualsystem und das Bit im Rechner......................... 54
3.3.2 Konvertieren zwischen Dual- und Oktalsystem.................. 55
3.3.3 Konvertieren zwischen Dual- und Hexadezimalsystem.......... 55
3.4 Konvertierungsalgorithmen............................................... 57
3.4.1 Konvertieren von anderen Systemen in das Dezimalsystem...... 57
3.4.2 Konvertieren vom Dezimalsystem in andere Positionssysteme ... 57
3.4.3 Konvertieren echt gebrochener Zahlen........................... 58
3.4.4 Konvertieren unecht gebrochener Zahlen........................ 60
3.5 Rechenoperationen im Dualsystem....................................... 60
3.5.1 Addition.......................................................... 60
3.5.2 Subtraktion und Darstellung negativer Zahlen................... 61
3.5.3 Multiplikation und Division...................................... 65
3.5.4 Konvertieren durch sukzessive Multiplikation und Addition___ 65
3.6 Reelle Zahlen............................................................. 66
3.6.1 Festpunktzahlen.................................................. 66
3.6.2 Gleitpunktzahlen und das IEEE-Format.......................... 66
3.7 Codes zur Darstellung von Zeichen....................................... 69
3.7.1 ASCII-Code....................................................... 69
3.7.2 Unicode.......................................................... 72
3.8 Weitere Codes für Zahlen und Zeichen................................... 73
3.8.1
3.8.2 Gray-Code........................................................ 74
3.8.3 Barcode........................................................... 74
3.9 Duale Größenangaben..................................................... 75
3.10 Die Grunddatentypen in der Programmiersprache C/C++................ 75
Kapitel 4 Boolesche Algebra 79
4.1 Analytische Rätsel (1)..................................................... 80
4.2 George
4.3 Operatoren................................................................ 81
4.4 Boolesche Schaltungen................................................... 83
4.5 Axiome................................................................... 83
4.6 Funktionen................................................................ 85
Kapitel 5 Hardware-Komponenten eines Computers 89
5.1 Analytische Rätsel (2)..................................................... 90
5.2 Aufbau von Computersystemen........................................... 90
5.2.1 Zentraleinheit und Peripheriegeräte.............................. 90
5.2.2 EVA und das von-Neumann sche-Rechnermodell................ 91
5.3 Die heutigen Personal Computer (PCs).................................... 93
5.4 Die Zentraleinheit......................................................... 93
5.4.1 Der Prozessor..................................................... 95
5.4.2 Der Arbeitsspeicher.............................................. 105
5.4.3
5.4.4 Das BIOS......................................................... 109
5.4.5 Busse und Schnittstellen (Anschlüsse)........................... 110
5.5 Die Peripherie............................................................. 115
5.5.1 Massenspeicher.................................................. 115
5.5.2 Eingabegeräte..................................................... 120
5.5.3 Ausgabegeräte.................................................... 122
5.6
5.7 Alternative Rechnerarchitekturen (Neuronale Netze).................... 130
Kapitel 6 Vom Programm zum Maschinenprogramm
6.1 Analytische Rätsel (3)..................................................... 132
6.2 Entwicklung eines Programms............................................ 132
6.3 Programmierwerkzeuge................................................... 133
6.3.1 Unterschiedliche Arten der Übersetzung......................... 133
6.3.2 Der Compiler..................................................... 134
6.3.3 Der Linker........................................................ 135
6.3.4 Der Lader (und
6.3.5 Der Debugger..................................................... 138
Teil
Kapitel 7 Programmiersprachen 143
7.1 Analytische Rätsel (4)..................................................... 144
7.2 Höhere Programmiersprachen............................................ 144
7.3 Grundlagen der Programmierung......................................... 147
7.3.1 Spezifikation einer Aufgabenstellung............................ 147
7.3.2 Der Begriff Algorithmus.......................................... 148
7.3.3 Formulierung und Darstellung eines Algorithmus............... 148
7.3.4 Programm = Daten + Algorithmus................................ 150
7.4 Datentypen und Operatoren in C/C++ und Java........................... 156
7.4.1 Datentypen und Konstanten...................................... 156
7.4.2 Bezeichner....................................................... 158
7.4.3 Grundlegende Operatoren........................................ 158
7.4.4 Die logischen Operatoren &&, | [ und !............................ 159
7.4.5 Die Shift-Operatoren « und ».................................. 159
7.4.6 Die Postfix- und Präfixoperatoren ++ und —................... 160
7.4.7 Die Bit-Operatoren &, |,
7.4.8 Prioritäten und Assoziativitäten der Operatoren................. 162
7.5 Formulierung von Algorithmen in C/C++ und Java....................... 164
7.5.1 Sequenz.......................................................... 164
7.5.2 Verzweigungen mit
7.5.3 Verzweigungen mit
7.5.4 for-Schleife (Schleife mit der Abfrage am Anfang)............... 171
7.5.5 while-Schleife (Schleife mit der Abfrage am Anfang)............ 178
7.5.6
7.5.7 Abbruch von Schleifen mit
7.5.8 Abbruch eines einzelnen Schleifendurchlaufs mit
7.5.9 Abbruch mehrerer geschachtelter Schleifen mit goto............. 184
7.5.10 Programmabbruch mit
7.5.11 Allgemeines zu Funktionen bzw. Methoden...................... 185
7.5.12 Rekursive Funktionen bzw. rekursive Methoden................. 195
7.5.13
7.5.14
7.5.15 Zufallszahlen..................................................... 212
7.5.16 Argumente auf der Kommandozeile.............................. 214
7.5.17 Ausnahmen
7.5.18 Dateien........................................................... 216
7.5.19 Strukturen in C/C++.............................................. 225
7.6 Objektorientierte Programmierung mit Java............................... 227
7.6.1 Meilensteine in der Softwareentwicklung........................ 227
7.6.2 Einführung in die Objektorientierung............................ 235
7.6.3 Klassen und Objekte.............................................. 242
7.6.4 Konstruktoren.................................................... 248
7.6.5 Vererbung und Polymorphismus................................. 249
7.6.6 GUI-Programmierung in Java..................................... 258
Kapitel 8 Datenstrukturen und Algorithmen 271
8.1 Analytische Rätsel (5)..................................................... 272
8.2 Grundlegende Datenstrukturen........................................... 273
8.2.1 Allgemeine Eigenschaften von Daten............................. 273
8.2.2 Basis-Datentypen................................................. 273
8.2.3 Datenstruktur = Daten + Operationen............................ 273
8.2.4 Verkettete Listen.................................................. 274
8.2.5 Stack (StapelJ..................................................... 287
8.2.6 Queue (Warteschlange)........................................... 295
8.3 Bäume.................................................................... 300
8.3.1 Grundlegendes zu Bäumen....................................... 300
8.3.2 Binäre Bäume.................................................... 302
8.3.3 Baumrekursion bei Bäumen mit mehr als zwei Zweigen......... 317
8.4 Komplexität von Algorithmen und O-Notation........................... 328
8.4.1 Zeitaufwand...................................................... 328
8.4.2 Speicherplatzbedarf.............................................. 331
8.4.3 Klassifikation von Algorithmen.................................. 332
8.4.4 Die O-Notation................................................... 334
8.4.5 Wahl eines Algorithmus.......................................... 340
8.4.6 Einfache Optimierungen bei der Implementierung............... 341
8.5 Elementare Sortieralgorithmen............................................ 344
8.5.1 Grundsätzliches zu Sortieralgorithmen........................... 344
8.5.2
8.5.3
8.5.4
8.5.5 Zeitmessungen für
8.5.6 Distribution
8.6
8.7
8.8
8.8.1 Rekursiver
8.8.2 Nicht-rekursiver Mergesort für
8.8.3 Analyse des Mergesort........................................... 360
8.8.4 Mischen von zwei sortierten
8.9
8.9.1 Finden in einem Labyrinth....................................... 361
8.9.2 Das Achtdamen-Problem......................................... 363
8.9.3 Rekursives Füllen von Figuren................................... 365
8.9.4 Sudoku........................................................... 365
8.9.5 Branch-and-Bound-Verfahren.................................... 366
Kapitel 9 Betriebssysteme 367
9.1 Rätsel: Überquerung einer Hängebrücke.................................. 368
9.2 Der Begriff Betriebssystem................................................ 368
9.3 Die Geschichte von Betriebssystemen..................................... 368
9.4 Grundaufgaben von Betriebssystemen.................................... 371
9.5 Aufbau und Dienste von Betriebssystemen............................... 372
9.5.1 Schichtenaufbau................................................. 373
9.5.2 Prozesse,
9.5.3 Synchronisations-Mechanismen................................. 377
9.5.4 Zeitdienste (Timer)............................................... 380
9.5.5 Speicherverwaltung.............................................. 382
9.5.6 Dateiverwaltung und Dateisysteme............................... 383
9.5.7 Geräteverwaltung und Treiber.................................... 386
9.5.8 Benutzerschnittstelle (Kommandozeile bzw. GUI)................ 388
9.5.9 Programmierschnittstelle (API)................................... 390
9.6 Besonderheiten bei
Kapitel 10 Rechnernetze und das Internet 397
10.1 Synthetische Rätsel (1).................................................... 398
10.2 Grundlagen der Vernetzung von Rechnern................................ 398
10.3 Das ISO/OSI-Modell und Internet-Protokolle............................. 399
10.4 Internet-Protokolle in Rechnernetzen..................................... 401
10.4.1 Grundbegriffe zu TCP/IP-Netzen................................. 401
10.4.2 TCP/IP-Protokolle................................................ 404
10.5 Hubs, Switches, Router und Gateways.................................... 409
10.6 Grundlagen der Socket-Programmierung.................................. 409
10.7 Verteilte Anwendungen................................................... 409
10.8 Das World Wide Web (WWW)............................................. 411
10.8.1 Wichtige Komponenten und Konzepte des WWW............... 411
10.8.2 Kurze Einführung in HTML...................................... 413
10.8.3
10.8.4 Eine kurze Einführung in XML................................... 428
10.8.5
10.8.6 Web-Programmierung............................................ 431
Kapitel 11 Datenbanksysteme 439
11.1 Synthetische Rätsel (2).................................................... 440
11.2 Grundlegendes zu Datenbanksystemen................................... 440
11.2.1 Aufgaben einer Datenbank....................................... 440
11.2.2 Vorteile von Datenbanken........................................ 441
11.2.3 Datenunabhängigkeit............................................. 442
11.3 Datenmodelle............................................................. 443
11.3.1 Das Entity-Relationship-Modell.................................. 443
11.3.2 Das relationale Datenmodell..................................... 444
11.3.3 Die relationale Algebra........................................... 446
11.4 Die Datenbanksprache SQL............................................... 447
11.4.1
11.4.2 Einfügen, Ändern und Löschen von Datensätzen................. 449
11.4.3 Anfragen mit
Kapitel 12 Software Engineering 453
12.1 Synthetische Rätsel (3).................................................... 454
12.2 Die Software-Krise........................................................ 454
12.3 Eine geeignete Software-Architektur...................................... 456
12.4 UML-Diagramme für die Modellierung................................... 456
12.4.1 Statische Modellierung in UML.................................. 457
12.4.2 Dynamische Modellierung in UML............................... 459
12.5 Modellierungsmöglichkeiten für die Software............................ 461
12.6 Notwendigkeit von Prozessen............................................. 461
12.7 Der wichtige Prozess
12.7.1 Das UML-Anwendungsfalldiagramm
12.7.2 Das UML-Aktivitätsdiagramm.................................... 464
12.7.3 Genaue Klärung der Kundenanforderungen...................... 466
12.8 Prozessmodelle........................................................... 467
12.8.1 Schwer- und leichtgewichtige Prozessmodelle................... 467
12.8.2 Das Wasserfall-Modell............................................ 467
12.8.3 Das V-Modell..................................................... 469
12.8.4 Inkrementelle und iterative Prozessmodelle...................... 470
12.8.5 Agiles Vorgehen mit eXtreme Programming (XP)................. 472
12.9 Qualität eines Software-Produktes aus Kundensicht...................... 474
Teil
Kapitel 13 Transistoren, Chips und logische Bausteine 479
13.1 Synthetische Rätsel (4).................................................... 480
13.2 Transistoren............................................................... 480
13.2.1 Funktionsweise und Aufbau von Transistoren................... 480
13.2.2 Realisierung boolescher Funktionen mit Transistoren............ 482
13.3
13.3.1
13.3.2 Herstellungsprozess.............................................. 484
13.4 Logische Bausteine........................................................ 485
13.4.1 Gatter............................................................. 485
13.4.2 Decoder.......................................................... 486
13.4.3 Encoder.......................................................... 487
13.4.4
13.4.5
Kapitel 14 Schaltnetze 493
14.1 Ein dialektisches Rätsel................................................... 494
14.2 Normalformen von Schaltfunktionen..................................... 494
14.2.1 Disjunktive Normalform (DNF)................................... 494
14.2.2 Konjunktive Normalform (KNF).................................. 495
14.2.3 Allgemeines Verfahren beim Erstellen einer Schaltung........... 496
14.2.4 Schaltkreisrealisierung durch PLAs.............................. 497
14.3 Entwurf von Schaltnetzen................................................. 500
14.4 Minimierung logischer Ausdrücke........................................ 501
14.4.1
14.4.2
14.4.3 Quine-McCluskey-Verfahren..................................... 508
14.5 Addiernetze............................................................... 514
14.5.1 Paralleladdierer.................................................. 514
14.5.2 Paralleladdierer und -subtrahierer................................ 516
14.5.3 Carry-Select-Addiernetze......................................... 517
14.5.4 Carry-Save-Addiernetze.......................................... 519
14.5.5 Multiplizierer.................................................... 520
14.6 Prinzipieller Aufbau einer ALU........................................... 522
Kapitel 15 Schaltwerke 525
15.1 Rätsel: Waldlauf, Schnapsgläser und mehr................................ 526
15.2 Synchrone und asynchrone Schaltwerke................................. 527
15.3 Schaltungen mit
15.3.1 4-Bit-Ringzähler als synchrones Schaltwerk...................... 528
15.3.2
15.3.3 Realisierung von
15.4 Zähler und Frequenzteiler................................................ 539
15.4.1 Synchroner 4-Bit-Ringzähler mit JK-Flipflops.................... 539
15.4.2 Asynchroner 4-Bit-Ringzähler mit T-Flipflops.................... 541
15.4.3 Synchroner BCD-Zähler (Mod-10) mit T-Flipflops................ 542
15.4.4 Asynchroner BCD-Zähler (Mod-10) mit JK-Flipflops............. 542
15.5 Schieberegister............................................................ 543
15.6 Entwurf synchroner Schaltwerke mittels Automaten..................... 545
15.6.1 Kurze Einführung in die
15.6.2 Entwurf von Schaltwerken mit Moore- und Mealy-Automaten... 548
Kapitel16
16.1 Rätsel: Hautfarbe, Fahrstuhl, Bienen und Ketten.......................... 560
16.2 Komponenten und Phasen eines Prozessors.............................. 560
16.3 Grunddaten zum Mikroprozessor MikroOne.............................. 562
16.4 Die Datenregister des Mikroprozessors MikroOne........................ 562
16.5 Die ALU des Mikroprozessors MikroOne................................. 565
16.6 Die Spezialregister des Mikroprozessors MikroOne....................... 565
16.7 Der Mikroprozessor MikroOne als Gesamtsystem......................... 567
16.8 Die Maschinenbefehle von MikroOne..................................... 568
16.8.1 Initialisierung von MikroOne.................................... 568
16.8.2 Die Befehlsstruktur des MikroOne............................... 568
16.8.3 Der Befehlssatz von MikroOne................................... 569
16.9 Arten der Adressierung................................................... 584
16.10 Das Steuerwerk........................................................... 586
Kapitel 17 Prozessorarchitekturen, Speicher und Caches 591
17.1 Rätsel: Schachbrett-Quadrate, Flickenmuster, Kreuzformfirma........... 592
17.2 CISC und RISC............................................................ 593
17.3
17.3.1 Unterschiedliche Phasen beim
17.3.2 Geschwindigkeitsgewinn beim
17.3.3
17.4 Speicher für Prozessoren.................................................. 602
17.5 Caches.................................................................... 605
17.5.1 Das Lokalitätsprinzip und der Cache-Controller.................. 606
17.5.2 Der Lesezugriff................................................... 607
17.5.3 Vollassoziative und direktabgebildete Caches.................... 609
17.5.4 Der Schreibzugriff................................................ 612
17.6 Virtueller Speicher........................................................ 614
17.6.1
17.6.2 Segmentierung................................................... 617
Teil
Kapitel 18 Automatentheorie und formale Sprachen 621
18.1 Rätsel: Weg durch ein Labyrinth und um die Ecke gedacht............... 622
18.2 Lexikalische und syntaktische Analyse................................... 622
18.3 Reguläre Sprachen und endliche Automaten............................. 624
18.3.1 Alphabet, Wort und Sprache..................................... 624
18.3.2 Reguläre Ausdrücke.............................................. 625
18.3.3 Endliche Automaten und reguläre Sprachen..................... 627
18.3.4 Realisierung endlicher Automaten............................... 629
18.3.5
18.4 Kontextfreie Sprachen und Kellerautomaten.............................. 634
18.4.1 Kontextfreie Grammatiken....................................... 634
18.4.2 Kellerautomaten.................................................. 637
18.4.3
18.4.4
18.4.5 Rekursion bei der Syntaxanalyse................................. 645
18.5 Die unterschiedlichen Phasen eines Compilers........................... 645
Kapitel 19 Berechenbarkeitstheorie 649
19.1 Rätsel: Kneipen, Ei, stehen gebliebene Uhr und Alter..................... 650
19.2 Berechenbare Funktionen................................................. 651
19.3 Nicht berechenbare Funktionen........................................... 652
19.3.1 Das Diagonalverfahren von
19.3.2 Nicht durch einen Algorithmus berechenbare Funktionen....... 653
19.3.3 Die Church sche Algorithmus-Definition......................... 653
19.4 Berechenbarkeitskonzepte................................................ 654
19.4.1 Turingmaschinen................................................. 654
19.4.2 Turing-berechenbare Funktionen................................. 657
19.4.3 Registermaschinen............................................... 657
19.4.4 GOTO- und WHILE-Programme.................................. 658
19.4.5 LOOP-Programme (FOR-Programme)............................. 660
19.4.6 Primitive Rekursion.............................................. 661
19.4.7
19.4.8 Die Ackermann-Funktion........................................ 665
19.4.9 Die Church sche These und die Chomsky-Hierarchie............ 667
19.5 Prinzipiell unlösbare Probleme........................................... 668
19.5.1 Entscheidbare Mengen........................................... 668
19.5.2 Semi-entscheidbare Mengen (Game
19.5.3 Unberechenbarkeit (Fleißiger Biber).............................. 673
Kapitel 20 Komplexitätstheorie 677
20.1 Rätsel: Falsche Uhrzeit, Kalenderrechnen und mehr...................... 678
20.2 Die Klasse
20.3 Nichtdeterminismus und die Klasse NP.................................. 679
20.3.1 Das SAT-Problem als erstes NP-Problem.......................... 679
20.3.2 Reduzierung auf ja/nein-Probleme mit zugehörigen Sprachen ... 680
20.3.3 Nichtdeterminismus.............................................. 680
20.3.4 Die Klasse NP.................................................... 681
20.4 Der Satz von Cook und NP-Vollständigkeit............................... 683
20.4.1 Das Dreifarbenproblem als
20.4.2 NP-Vollständigkeit............................................... 684
20.4.3
20.4.4 Das
20.4.5 Das Cliquenproblem.............................................. 686
20.4.6 Das Rucksack- und Teilsummen-Problem........................ 688
20.4.7 Das
20.4.8 Das Problem des Handlungsreisenden............................ 693
20.4.9 Hierarchie der NP-vollstän
20.5 Approximationsalgorithmen.............................................. 696
Teil
Kapitel 21 Fehlertolerante Codes 703
21.1 Rätsel: Auf der Demo mit Bruder und Schwester......................... 704
21.2 Motivation für fehlertolerante Codes...................................... 704
21.3 „k aus n ^Codes........................................................... 704
21.4 Der Hammingabstand eines Codes........................................ 705
21.5 Eindimensionale Parity-Prüfung.......................................... 707
21.6 Zweidimensionale Parity-Prüfung........................................ 708
21.7
21.8 CRC-Kodierung........................................................... 715
Kapitel 22 Datenkompression 719
22.1 Rätsel: Tierseuche......................................................... 720
22.2 Verlustbehaftete und verlustlose Kompression............................ 720
22.3 Codes mit variabel langen Codewörtern.................................. 720
22.4 Fano-Bedingung für Dekodierbarkeit eines Codes......................... 721
22.5 Lauflängenkodierung
22.6 Shannon-Fano-Kodierung................................................. 723
22.7 Huffman-Kodierung....................................................... 723
22.8 Arithmetische Kodierung................................................. 727
22.9 Lempel-Ziv-Kodierungen................................................. 730
22.9.1 Der LZ77-Algorithmus........................................... 732
22.9.2 Der LZSS-Algorithmus........................................... 733
22.9.3 Der LZ/e-Algorithmus........................................... 734
22.9.4 Der LZW-Algorithmus............................................ 735
22.9.5 Varianten der Lempel-Ziv-Kodierung............................ 739
Kapitel 23
23.1 Rätsel: Weinflasche und Erben von Weinfässern.......................... 742
23.2 Allgemeines zu
23.3 Einfache Verschlüsselungsmethoden..................................... 742
23.3.1 Cäsar-Chiffre..................................................... 742
23.3.2 Chiffre mit eigener Zuordnungstabelle........................... 743
23.4
23.5 Verschlüsselung mittels Zufallsfolgen.................................... 744
23.6 Kryptosysteme mit öffentlichen Schlüsseln............................... 746
23.6.1 Eigenschaften von Public-Key-Systemen......................... 746
23.6.2 Der Satz von Euler................................................ 747
23.6.3 Schlüsselerzeugung beim RSA-Algorithmus..................... 747
23.6.4
23.7 Quantenkryptografie...................................................... 752
Weiterführende Literatur 755
Sachregister 761
Demonstrationsprogramme und
Simulationsprogramme 777
Alle wichtigen Gebiete der Praktischen. Technischen
wie sie Bestandteil von Grundlagenvorlesungen in Diplom- und Bacheiorstudien-
gangen
verständlicher Form vorgestern und erklart Darüber hinaus ermöglichen Übungsauf¬
gaben dem Leser
fordern
auch die Losungen zur Verfugung Die beigefügte CD-ROM erweitert den Rahmen
dieser Möglichkeiten durch eine Vielzahl an
Simulationsprogrammen, mit denen sich der erlernte Stoff vertiefen und erweitern
lässt Dieses Lehrwerk bietet somit ein komplettes Lernpaket zur Einfuhrung in die
Informatik und fußt auf langjährigen Lehr- und Industrieerfahrungen des Autorenteams
Aus dem Inhalt:
- Speicherung und Interpretation von Information
- Hardware-Komponenten und Maschinenprogramm
- Programmiersprachen, Datenstrukturen und Algorithmen
- Betriebssysteme, Rechnernetze und Internet
- Datenbanken und Software Engineering
- Logische Bausteine, Schaltnetze und Schaltwerke
- Realisierung eines einfachen Mikroprozessors
- Prozessorarchitekturen, Speicher und Caches
- Automaten·, Berechenbarkeits- und Komplexitätstheorie
- Codes, Kompression und
HELMUT HEROLD ist Professor an der FH Nürnberg und lehrt Software
Engineering. Zahlreiche Bücher zu Linux/UNIX sowie zur Programmierung
in
BRUNO LURZ lehrt als Professor an der FH Nürnberg Informatik-Grundlagen,
Programmierung und Konzeption von Echtzeitsystemen.
JÜRGEN WOHLRAB ist Professor an der FH Nürnberg, wo er Elektrotechnik-
Grundlagen, Mikrocomputertechnik, Software Engineering und bildgebende
Systeme in der medizinischen Technik unterrichtet.
|
adam_txt |
Inhaltsverzeichnis
Kapitel 1 Einleitung 17
1.1 Idee dieses Buches. 18
1.2 Beispiele, Übungen und Rätsel. 19
1.3 Begleitmaterial zu diesem Buch. 20
1.4 Benutzung der mitgelieferten CD. 21
1.5 Danksagung. 21
1.6 Hinweis in eigener Sache. 22
Teil
Kapitel 2 Die Historie und die Teilgebiete der Informatik 25
2.1 Rätsel: Streichholzprobleme. 26
2.2 Der Begriff Informatik. 26
2.3 Historische Entwicklung der Informatik. 26
2.3.1 Der
2.3.2 Der Begriff Algorithmus und Ibn
2.3.3 Wichtige Stationen von 1500 bis 1930. 30
2.3.4 Konrad Zuse und der erste funktionstüchtige Computer. 32
2.3.5 Howard H. Aiken und die Mark
2.3.6 John von Neumann. 34
2.3.7 Generationen der elektronischen Datenverarbeitung. 35
2.4 Einordnung und Einteilung der Informatik. 39
2.4.1 Verschiedene Einsatzgebiete von Computern (Informatik). 39
2.4.2 Die Teilgebiete der Informatik. 40
2.4.3 Die Informatik und unsere Abhängigkeit von ihr. 43
Kapitel 3 Speicherung und Interpretation von Information 45
3.1 Rätsel: Umfüllprobleme. 46
3.2 Unterschiedliche Zahlensysteme. 46
3.2.1 Das römische Zahlensystem. 46
3.2.2 Positionssysteme. 47
3.2.3 Positionssysteme bei natürlichen Zahlen. 48
3.2.4 Positionssysteme bei gebrochenen Zahlen. 53
3.3 Dual-, Oktal- und Hexadezimalsystem. 54
3.3.1 Das Dualsystem und das Bit im Rechner. 54
3.3.2 Konvertieren zwischen Dual- und Oktalsystem. 55
3.3.3 Konvertieren zwischen Dual- und Hexadezimalsystem. 55
3.4 Konvertierungsalgorithmen. 57
3.4.1 Konvertieren von anderen Systemen in das Dezimalsystem. 57
3.4.2 Konvertieren vom Dezimalsystem in andere Positionssysteme . 57
3.4.3 Konvertieren echt gebrochener Zahlen. 58
3.4.4 Konvertieren unecht gebrochener Zahlen. 60
3.5 Rechenoperationen im Dualsystem. 60
3.5.1 Addition. 60
3.5.2 Subtraktion und Darstellung negativer Zahlen. 61
3.5.3 Multiplikation und Division. 65
3.5.4 Konvertieren durch sukzessive Multiplikation und Addition_ 65
3.6 Reelle Zahlen. 66
3.6.1 Festpunktzahlen. 66
3.6.2 Gleitpunktzahlen und das IEEE-Format. 66
3.7 Codes zur Darstellung von Zeichen. 69
3.7.1 ASCII-Code. 69
3.7.2 Unicode. 72
3.8 Weitere Codes für Zahlen und Zeichen. 73
3.8.1
3.8.2 Gray-Code. 74
3.8.3 Barcode. 74
3.9 Duale Größenangaben. 75
3.10 Die Grunddatentypen in der Programmiersprache C/C++. 75
Kapitel 4 Boolesche Algebra 79
4.1 Analytische Rätsel (1). 80
4.2 George
4.3 Operatoren. 81
4.4 Boolesche Schaltungen. 83
4.5 Axiome. 83
4.6 Funktionen. 85
Kapitel 5 Hardware-Komponenten eines Computers 89
5.1 Analytische Rätsel (2). 90
5.2 Aufbau von Computersystemen. 90
5.2.1 Zentraleinheit und Peripheriegeräte. 90
5.2.2 EVA und das von-Neumann'sche-Rechnermodell. 91
5.3 Die heutigen Personal Computer (PCs). 93
5.4 Die Zentraleinheit. 93
5.4.1 Der Prozessor. 95
5.4.2 Der Arbeitsspeicher. 105
5.4.3
5.4.4 Das BIOS. 109
5.4.5 Busse und Schnittstellen (Anschlüsse). 110
5.5 Die Peripherie. 115
5.5.1 Massenspeicher. 115
5.5.2 Eingabegeräte. 120
5.5.3 Ausgabegeräte. 122
5.6
5.7 Alternative Rechnerarchitekturen (Neuronale Netze). 130
Kapitel 6 Vom Programm zum Maschinenprogramm
6.1 Analytische Rätsel (3). 132
6.2 Entwicklung eines Programms. 132
6.3 Programmierwerkzeuge. 133
6.3.1 Unterschiedliche Arten der Übersetzung. 133
6.3.2 Der Compiler. 134
6.3.3 Der Linker. 135
6.3.4 Der Lader (und
6.3.5 Der Debugger. 138
Teil
Kapitel 7 Programmiersprachen 143
7.1 Analytische Rätsel (4). 144
7.2 Höhere Programmiersprachen. 144
7.3 Grundlagen der Programmierung. 147
7.3.1 Spezifikation einer Aufgabenstellung. 147
7.3.2 Der Begriff Algorithmus. 148
7.3.3 Formulierung und Darstellung eines Algorithmus. 148
7.3.4 Programm = Daten + Algorithmus. 150
7.4 Datentypen und Operatoren in C/C++ und Java. 156
7.4.1 Datentypen und Konstanten. 156
7.4.2 Bezeichner. 158
7.4.3 Grundlegende Operatoren. 158
7.4.4 Die logischen Operatoren &&, | [ und !. 159
7.4.5 Die Shift-Operatoren « und ». 159
7.4.6 Die Postfix- und Präfixoperatoren ++ und —. 160
7.4.7 Die Bit-Operatoren &, |,
7.4.8 Prioritäten und Assoziativitäten der Operatoren. 162
7.5 Formulierung von Algorithmen in C/C++ und Java. 164
7.5.1 Sequenz. 164
7.5.2 Verzweigungen mit
7.5.3 Verzweigungen mit
7.5.4 for-Schleife (Schleife mit der Abfrage am Anfang). 171
7.5.5 while-Schleife (Schleife mit der Abfrage am Anfang). 178
7.5.6
7.5.7 Abbruch von Schleifen mit
7.5.8 Abbruch eines einzelnen Schleifendurchlaufs mit
7.5.9 Abbruch mehrerer geschachtelter Schleifen mit goto. 184
7.5.10 Programmabbruch mit
7.5.11 Allgemeines zu Funktionen bzw. Methoden. 185
7.5.12 Rekursive Funktionen bzw. rekursive Methoden. 195
7.5.13
7.5.14
7.5.15 Zufallszahlen. 212
7.5.16 Argumente auf der Kommandozeile. 214
7.5.17 Ausnahmen
7.5.18 Dateien. 216
7.5.19 Strukturen in C/C++. 225
7.6 Objektorientierte Programmierung mit Java. 227
7.6.1 Meilensteine in der Softwareentwicklung. 227
7.6.2 Einführung in die Objektorientierung. 235
7.6.3 Klassen und Objekte. 242
7.6.4 Konstruktoren. 248
7.6.5 Vererbung und Polymorphismus. 249
7.6.6 GUI-Programmierung in Java. 258
Kapitel 8 Datenstrukturen und Algorithmen 271
8.1 Analytische Rätsel (5). 272
8.2 Grundlegende Datenstrukturen. 273
8.2.1 Allgemeine Eigenschaften von Daten. 273
8.2.2 Basis-Datentypen. 273
8.2.3 Datenstruktur = Daten + Operationen. 273
8.2.4 Verkettete Listen. 274
8.2.5 Stack (StapelJ. 287
8.2.6 Queue (Warteschlange). 295
8.3 Bäume. 300
8.3.1 Grundlegendes zu Bäumen. 300
8.3.2 Binäre Bäume. 302
8.3.3 Baumrekursion bei Bäumen mit mehr als zwei Zweigen. 317
8.4 Komplexität von Algorithmen und O-Notation. 328
8.4.1 Zeitaufwand. 328
8.4.2 Speicherplatzbedarf. 331
8.4.3 Klassifikation von Algorithmen. 332
8.4.4 Die O-Notation. 334
8.4.5 Wahl eines Algorithmus. 340
8.4.6 Einfache Optimierungen bei der Implementierung. 341
8.5 Elementare Sortieralgorithmen. 344
8.5.1 Grundsätzliches zu Sortieralgorithmen. 344
8.5.2
8.5.3
8.5.4
8.5.5 Zeitmessungen für
8.5.6 Distribution
8.6
8.7
8.8
8.8.1 Rekursiver
8.8.2 Nicht-rekursiver Mergesort für
8.8.3 Analyse des Mergesort. 360
8.8.4 Mischen von zwei sortierten
8.9
8.9.1 Finden in einem Labyrinth. 361
8.9.2 Das Achtdamen-Problem. 363
8.9.3 Rekursives Füllen von Figuren. 365
8.9.4 Sudoku. 365
8.9.5 Branch-and-Bound-Verfahren. 366
Kapitel 9 Betriebssysteme 367
9.1 Rätsel: Überquerung einer Hängebrücke. 368
9.2 Der Begriff Betriebssystem. 368
9.3 Die Geschichte von Betriebssystemen. 368
9.4 Grundaufgaben von Betriebssystemen. 371
9.5 Aufbau und Dienste von Betriebssystemen. 372
9.5.1 Schichtenaufbau. 373
9.5.2 Prozesse,
9.5.3 Synchronisations-Mechanismen. 377
9.5.4 Zeitdienste (Timer). 380
9.5.5 Speicherverwaltung. 382
9.5.6 Dateiverwaltung und Dateisysteme. 383
9.5.7 Geräteverwaltung und Treiber. 386
9.5.8 Benutzerschnittstelle (Kommandozeile bzw. GUI). 388
9.5.9 Programmierschnittstelle (API). 390
9.6 Besonderheiten bei
Kapitel 10 Rechnernetze und das Internet 397
10.1 Synthetische Rätsel (1). 398
10.2 Grundlagen der Vernetzung von Rechnern. 398
10.3 Das ISO/OSI-Modell und Internet-Protokolle. 399
10.4 Internet-Protokolle in Rechnernetzen. 401
10.4.1 Grundbegriffe zu TCP/IP-Netzen. 401
10.4.2 TCP/IP-Protokolle. 404
10.5 Hubs, Switches, Router und Gateways. 409
10.6 Grundlagen der Socket-Programmierung. 409
10.7 Verteilte Anwendungen. 409
10.8 Das World Wide Web (WWW). 411
10.8.1 Wichtige Komponenten und Konzepte des WWW. 411
10.8.2 Kurze Einführung in HTML. 413
10.8.3
10.8.4 Eine kurze Einführung in XML. 428
10.8.5
10.8.6 Web-Programmierung. 431
Kapitel 11 Datenbanksysteme 439
11.1 Synthetische Rätsel (2). 440
11.2 Grundlegendes zu Datenbanksystemen. 440
11.2.1 Aufgaben einer Datenbank. 440
11.2.2 Vorteile von Datenbanken. 441
11.2.3 Datenunabhängigkeit. 442
11.3 Datenmodelle. 443
11.3.1 Das Entity-Relationship-Modell. 443
11.3.2 Das relationale Datenmodell. 444
11.3.3 Die relationale Algebra. 446
11.4 Die Datenbanksprache SQL. 447
11.4.1
11.4.2 Einfügen, Ändern und Löschen von Datensätzen. 449
11.4.3 Anfragen mit
Kapitel 12 Software Engineering 453
12.1 Synthetische Rätsel (3). 454
12.2 Die Software-Krise. 454
12.3 Eine geeignete Software-Architektur. 456
12.4 UML-Diagramme für die Modellierung. 456
12.4.1 Statische Modellierung in UML. 457
12.4.2 Dynamische Modellierung in UML. 459
12.5 Modellierungsmöglichkeiten für die Software. 461
12.6 Notwendigkeit von Prozessen. 461
12.7 Der wichtige Prozess
12.7.1 Das UML-Anwendungsfalldiagramm
12.7.2 Das UML-Aktivitätsdiagramm. 464
12.7.3 Genaue Klärung der Kundenanforderungen. 466
12.8 Prozessmodelle. 467
12.8.1 Schwer- und leichtgewichtige Prozessmodelle. 467
12.8.2 Das Wasserfall-Modell. 467
12.8.3 Das V-Modell. 469
12.8.4 Inkrementelle und iterative Prozessmodelle. 470
12.8.5 Agiles Vorgehen mit eXtreme Programming (XP). 472
12.9 Qualität eines Software-Produktes aus Kundensicht. 474
Teil
Kapitel 13 Transistoren, Chips und logische Bausteine 479
13.1 Synthetische Rätsel (4). 480
13.2 Transistoren. 480
13.2.1 Funktionsweise und Aufbau von Transistoren. 480
13.2.2 Realisierung boolescher Funktionen mit Transistoren. 482
13.3
13.3.1
13.3.2 Herstellungsprozess. 484
13.4 Logische Bausteine. 485
13.4.1 Gatter. 485
13.4.2 Decoder. 486
13.4.3 Encoder. 487
13.4.4
13.4.5
Kapitel 14 Schaltnetze 493
14.1 Ein dialektisches Rätsel. 494
14.2 Normalformen von Schaltfunktionen. 494
14.2.1 Disjunktive Normalform (DNF). 494
14.2.2 Konjunktive Normalform (KNF). 495
14.2.3 Allgemeines Verfahren beim Erstellen einer Schaltung. 496
14.2.4 Schaltkreisrealisierung durch PLAs. 497
14.3 Entwurf von Schaltnetzen. 500
14.4 Minimierung logischer Ausdrücke. 501
14.4.1
14.4.2
14.4.3 Quine-McCluskey-Verfahren. 508
14.5 Addiernetze. 514
14.5.1 Paralleladdierer. 514
14.5.2 Paralleladdierer und -subtrahierer. 516
14.5.3 Carry-Select-Addiernetze. 517
14.5.4 Carry-Save-Addiernetze. 519
14.5.5 Multiplizierer. 520
14.6 Prinzipieller Aufbau einer ALU. 522
Kapitel 15 Schaltwerke 525
15.1 Rätsel: Waldlauf, Schnapsgläser und mehr. 526
15.2 Synchrone und asynchrone Schaltwerke. 527
15.3 Schaltungen mit
15.3.1 4-Bit-Ringzähler als synchrones Schaltwerk. 528
15.3.2
15.3.3 Realisierung von
15.4 Zähler und Frequenzteiler. 539
15.4.1 Synchroner 4-Bit-Ringzähler mit JK-Flipflops. 539
15.4.2 Asynchroner 4-Bit-Ringzähler mit T-Flipflops. 541
15.4.3 Synchroner BCD-Zähler (Mod-10) mit T-Flipflops. 542
15.4.4 Asynchroner BCD-Zähler (Mod-10) mit JK-Flipflops. 542
15.5 Schieberegister. 543
15.6 Entwurf synchroner Schaltwerke mittels Automaten. 545
15.6.1 Kurze Einführung in die
15.6.2 Entwurf von Schaltwerken mit Moore- und Mealy-Automaten. 548
Kapitel16
16.1 Rätsel: Hautfarbe, Fahrstuhl, Bienen und Ketten. 560
16.2 Komponenten und Phasen eines Prozessors. 560
16.3 Grunddaten zum Mikroprozessor MikroOne. 562
16.4 Die Datenregister des Mikroprozessors MikroOne. 562
16.5 Die ALU des Mikroprozessors MikroOne. 565
16.6 Die Spezialregister des Mikroprozessors MikroOne. 565
16.7 Der Mikroprozessor MikroOne als Gesamtsystem. 567
16.8 Die Maschinenbefehle von MikroOne. 568
16.8.1 Initialisierung von MikroOne. 568
16.8.2 Die Befehlsstruktur des MikroOne. 568
16.8.3 Der Befehlssatz von MikroOne. 569
16.9 Arten der Adressierung. 584
16.10 Das Steuerwerk. 586
Kapitel 17 Prozessorarchitekturen, Speicher und Caches 591
17.1 Rätsel: Schachbrett-Quadrate, Flickenmuster, Kreuzformfirma. 592
17.2 CISC und RISC. 593
17.3
17.3.1 Unterschiedliche Phasen beim
17.3.2 Geschwindigkeitsgewinn beim
17.3.3
17.4 Speicher für Prozessoren. 602
17.5 Caches. 605
17.5.1 Das Lokalitätsprinzip und der Cache-Controller. 606
17.5.2 Der Lesezugriff. 607
17.5.3 Vollassoziative und direktabgebildete Caches. 609
17.5.4 Der Schreibzugriff. 612
17.6 Virtueller Speicher. 614
17.6.1
17.6.2 Segmentierung. 617
Teil
Kapitel 18 Automatentheorie und formale Sprachen 621
18.1 Rätsel: Weg durch ein Labyrinth und um die Ecke gedacht. 622
18.2 Lexikalische und syntaktische Analyse. 622
18.3 Reguläre Sprachen und endliche Automaten. 624
18.3.1 Alphabet, Wort und Sprache. 624
18.3.2 Reguläre Ausdrücke. 625
18.3.3 Endliche Automaten und reguläre Sprachen. 627
18.3.4 Realisierung endlicher Automaten. 629
18.3.5
18.4 Kontextfreie Sprachen und Kellerautomaten. 634
18.4.1 Kontextfreie Grammatiken. 634
18.4.2 Kellerautomaten. 637
18.4.3
18.4.4
18.4.5 Rekursion bei der Syntaxanalyse. 645
18.5 Die unterschiedlichen Phasen eines Compilers. 645
Kapitel 19 Berechenbarkeitstheorie 649
19.1 Rätsel: Kneipen, Ei, stehen gebliebene Uhr und Alter. 650
19.2 Berechenbare Funktionen. 651
19.3 Nicht berechenbare Funktionen. 652
19.3.1 Das Diagonalverfahren von
19.3.2 Nicht durch einen Algorithmus berechenbare Funktionen. 653
19.3.3 Die Church'sche Algorithmus-Definition. 653
19.4 Berechenbarkeitskonzepte. 654
19.4.1 Turingmaschinen. 654
19.4.2 Turing-berechenbare Funktionen. 657
19.4.3 Registermaschinen. 657
19.4.4 GOTO- und WHILE-Programme. 658
19.4.5 LOOP-Programme (FOR-Programme). 660
19.4.6 Primitive Rekursion. 661
19.4.7
19.4.8 Die Ackermann-Funktion. 665
19.4.9 Die Church'sche These und die Chomsky-Hierarchie. 667
19.5 Prinzipiell unlösbare Probleme. 668
19.5.1 Entscheidbare Mengen. 668
19.5.2 Semi-entscheidbare Mengen (Game
19.5.3 Unberechenbarkeit (Fleißiger Biber). 673
Kapitel 20 Komplexitätstheorie 677
20.1 Rätsel: Falsche Uhrzeit, Kalenderrechnen und mehr. 678
20.2 Die Klasse
20.3 Nichtdeterminismus und die Klasse NP. 679
20.3.1 Das SAT-Problem als erstes NP-Problem. 679
20.3.2 Reduzierung auf ja/nein-Probleme mit zugehörigen Sprachen . 680
20.3.3 Nichtdeterminismus. 680
20.3.4 Die Klasse NP. 681
20.4 Der Satz von Cook und NP-Vollständigkeit. 683
20.4.1 Das Dreifarbenproblem als
20.4.2 NP-Vollständigkeit. 684
20.4.3
20.4.4 Das
20.4.5 Das Cliquenproblem. 686
20.4.6 Das Rucksack- und Teilsummen-Problem. 688
20.4.7 Das
20.4.8 Das Problem des Handlungsreisenden. 693
20.4.9 Hierarchie der NP-vollstän
20.5 Approximationsalgorithmen. 696
Teil
Kapitel 21 Fehlertolerante Codes 703
21.1 Rätsel: Auf der Demo mit Bruder und Schwester. 704
21.2 Motivation für fehlertolerante Codes. 704
21.3 „k aus n'^Codes. 704
21.4 Der Hammingabstand eines Codes. 705
21.5 Eindimensionale Parity-Prüfung. 707
21.6 Zweidimensionale Parity-Prüfung. 708
21.7
21.8 CRC-Kodierung. 715
Kapitel 22 Datenkompression 719
22.1 Rätsel: Tierseuche. 720
22.2 Verlustbehaftete und verlustlose Kompression. 720
22.3 Codes mit variabel langen Codewörtern. 720
22.4 Fano-Bedingung für Dekodierbarkeit eines Codes. 721
22.5 Lauflängenkodierung
22.6 Shannon-Fano-Kodierung. 723
22.7 Huffman-Kodierung. 723
22.8 Arithmetische Kodierung. 727
22.9 Lempel-Ziv-Kodierungen. 730
22.9.1 Der LZ77-Algorithmus. 732
22.9.2 Der LZSS-Algorithmus. 733
22.9.3 Der LZ/e-Algorithmus. 734
22.9.4 Der LZW-Algorithmus. 735
22.9.5 Varianten der Lempel-Ziv-Kodierung. 739
Kapitel 23
23.1 Rätsel: Weinflasche und Erben von Weinfässern. 742
23.2 Allgemeines zu
23.3 Einfache Verschlüsselungsmethoden. 742
23.3.1 Cäsar-Chiffre. 742
23.3.2 Chiffre mit eigener Zuordnungstabelle. 743
23.4
23.5 Verschlüsselung mittels Zufallsfolgen. 744
23.6 Kryptosysteme mit öffentlichen Schlüsseln. 746
23.6.1 Eigenschaften von Public-Key-Systemen. 746
23.6.2 Der Satz von Euler. 747
23.6.3 Schlüsselerzeugung beim RSA-Algorithmus. 747
23.6.4
23.7 Quantenkryptografie. 752
Weiterführende Literatur 755
Sachregister 761
Demonstrationsprogramme und
Simulationsprogramme 777
Alle wichtigen Gebiete der Praktischen. Technischen
wie sie Bestandteil von Grundlagenvorlesungen in Diplom- und Bacheiorstudien-
gangen
verständlicher Form vorgestern und erklart Darüber hinaus ermöglichen Übungsauf¬
gaben dem Leser
fordern
auch die Losungen zur Verfugung Die beigefügte CD-ROM erweitert den Rahmen
dieser Möglichkeiten durch eine Vielzahl an
Simulationsprogrammen, mit denen sich der erlernte Stoff vertiefen und erweitern
lässt Dieses Lehrwerk bietet somit ein komplettes Lernpaket zur Einfuhrung in die
Informatik und fußt auf langjährigen Lehr- und Industrieerfahrungen des Autorenteams
Aus dem Inhalt:
- Speicherung und Interpretation von Information
- Hardware-Komponenten und Maschinenprogramm
- Programmiersprachen, Datenstrukturen und Algorithmen
- Betriebssysteme, Rechnernetze und Internet
- Datenbanken und Software Engineering
- Logische Bausteine, Schaltnetze und Schaltwerke
- Realisierung eines einfachen Mikroprozessors
- Prozessorarchitekturen, Speicher und Caches
- Automaten·, Berechenbarkeits- und Komplexitätstheorie
- Codes, Kompression und
HELMUT HEROLD ist Professor an der FH Nürnberg und lehrt Software
Engineering. Zahlreiche Bücher zu Linux/UNIX sowie zur Programmierung
in
BRUNO LURZ lehrt als Professor an der FH Nürnberg Informatik-Grundlagen,
Programmierung und Konzeption von Echtzeitsystemen.
JÜRGEN WOHLRAB ist Professor an der FH Nürnberg, wo er Elektrotechnik-
Grundlagen, Mikrocomputertechnik, Software Engineering und bildgebende
Systeme in der medizinischen Technik unterrichtet. |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Herold, Helmut 1956- Lurz, Bruno Wohlrab, Jürgen 1966- |
author_GND | (DE-588)122454340 (DE-588)131864653 (DE-588)122403290 |
author_facet | Herold, Helmut 1956- Lurz, Bruno Wohlrab, Jürgen 1966- |
author_role | aut aut aut |
author_sort | Herold, Helmut 1956- |
author_variant | h h hh b l bl j w jw |
building | Verbundindex |
bvnumber | BV021651635 |
classification_rvk | ST 110 ST 120 |
classification_tum | DAT 001f |
ctrlnum | (OCoLC)162333554 (DE-599)BVBBV021651635 |
dewey-full | 004 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 004 - Computer science |
dewey-raw | 004 |
dewey-search | 004 |
dewey-sort | 14 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
discipline_str_mv | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02299nam a2200469 c 4500</leader><controlfield tag="001">BV021651635</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20230904 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">060711s2006 ad|| |||| 00||| ger d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">980211867</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">382737216X</subfield><subfield code="c">Pp. : EUR 49.95 (DE), EUR 51.40 (AT)</subfield><subfield code="9">3-8273-7216-X</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783827372161</subfield><subfield code="9">978-3-8273-7216-1</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)162333554</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV021651635</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-1046</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-12</subfield><subfield code="a">DE-Di1</subfield><subfield code="a">DE-M347</subfield><subfield code="a">DE-703</subfield><subfield code="a">DE-1051</subfield><subfield code="a">DE-Aug4</subfield><subfield code="a">DE-898</subfield><subfield code="a">DE-355</subfield><subfield code="a">DE-863</subfield><subfield code="a">DE-859</subfield><subfield code="a">DE-91</subfield><subfield code="a">DE-526</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-83</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-188</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">004</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 110</subfield><subfield code="0">(DE-625)143583:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 120</subfield><subfield code="0">(DE-625)143585:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 001f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Herold, Helmut</subfield><subfield code="d">1956-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)122454340</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Grundlagen der Informatik</subfield><subfield code="b">praktisch, technisch, theoretisch</subfield><subfield code="c">Helmut Herold ; Bruno Lurz ; Jürgen Wohlrab</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">München [u.a.]</subfield><subfield code="b">Pearson Studium</subfield><subfield code="c">2006</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">778 S.</subfield><subfield code="b">Ill., zahlr. graph. Darst.</subfield><subfield code="e">1 CD-ROM (12 cm)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">I - Informatik</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Informatik</subfield><subfield code="0">(DE-588)4026894-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="655" ind1=" " ind2="7"><subfield code="8">1\p</subfield><subfield code="0">(DE-588)4123623-3</subfield><subfield code="a">Lehrbuch</subfield><subfield code="2">gnd-content</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Informatik</subfield><subfield code="0">(DE-588)4026894-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="8">2\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Lurz, Bruno</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)131864653</subfield><subfield code="4">aut</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Wohlrab, Jürgen</subfield><subfield code="d">1966-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)122403290</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Regensburg</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000005&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Regensburg</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000006&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Klappentext</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-014866283</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">2\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield></record></collection> |
genre | 1\p (DE-588)4123623-3 Lehrbuch gnd-content |
genre_facet | Lehrbuch |
id | DE-604.BV021651635 |
illustrated | Illustrated |
index_date | 2024-07-02T15:03:13Z |
indexdate | 2024-08-01T10:48:46Z |
institution | BVB |
isbn | 382737216X 9783827372161 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-014866283 |
oclc_num | 162333554 |
open_access_boolean | |
owner | DE-1046 DE-91G DE-BY-TUM DE-12 DE-Di1 DE-M347 DE-703 DE-1051 DE-Aug4 DE-898 DE-BY-UBR DE-355 DE-BY-UBR DE-863 DE-BY-FWS DE-859 DE-91 DE-BY-TUM DE-526 DE-634 DE-83 DE-11 DE-188 |
owner_facet | DE-1046 DE-91G DE-BY-TUM DE-12 DE-Di1 DE-M347 DE-703 DE-1051 DE-Aug4 DE-898 DE-BY-UBR DE-355 DE-BY-UBR DE-863 DE-BY-FWS DE-859 DE-91 DE-BY-TUM DE-526 DE-634 DE-83 DE-11 DE-188 |
physical | 778 S. Ill., zahlr. graph. Darst. 1 CD-ROM (12 cm) |
publishDate | 2006 |
publishDateSearch | 2006 |
publishDateSort | 2006 |
publisher | Pearson Studium |
record_format | marc |
series2 | I - Informatik |
spellingShingle | Herold, Helmut 1956- Lurz, Bruno Wohlrab, Jürgen 1966- Grundlagen der Informatik praktisch, technisch, theoretisch Informatik (DE-588)4026894-9 gnd |
subject_GND | (DE-588)4026894-9 (DE-588)4123623-3 |
title | Grundlagen der Informatik praktisch, technisch, theoretisch |
title_auth | Grundlagen der Informatik praktisch, technisch, theoretisch |
title_exact_search | Grundlagen der Informatik praktisch, technisch, theoretisch |
title_exact_search_txtP | Grundlagen der Informatik praktisch, technisch, theoretisch |
title_full | Grundlagen der Informatik praktisch, technisch, theoretisch Helmut Herold ; Bruno Lurz ; Jürgen Wohlrab |
title_fullStr | Grundlagen der Informatik praktisch, technisch, theoretisch Helmut Herold ; Bruno Lurz ; Jürgen Wohlrab |
title_full_unstemmed | Grundlagen der Informatik praktisch, technisch, theoretisch Helmut Herold ; Bruno Lurz ; Jürgen Wohlrab |
title_short | Grundlagen der Informatik |
title_sort | grundlagen der informatik praktisch technisch theoretisch |
title_sub | praktisch, technisch, theoretisch |
topic | Informatik (DE-588)4026894-9 gnd |
topic_facet | Informatik Lehrbuch |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000005&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014866283&sequence=000006&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT heroldhelmut grundlagenderinformatikpraktischtechnischtheoretisch AT lurzbruno grundlagenderinformatikpraktischtechnischtheoretisch AT wohlrabjurgen grundlagenderinformatikpraktischtechnischtheoretisch |
Inhaltsverzeichnis
Würzburg Zentralbibliothek Lesesaal
Signatur: |
1000 ST 110 H561 1000 ST 110 H561st |
---|---|
Exemplar 1 | ausleihbar Verfügbar Bestellen |
Exemplar 2 | ausleihbar Verfügbar Bestellen |