E-Book, Deutsch, Band 1, 315 Seiten, eBook
Tei 1: Werkzuge
E-Book, Deutsch, Band 1, 315 Seiten, eBook
Reihe: XLeitfäden der angewandten Informatik
ISBN: 978-3-663-01416-4
Verlag: Vieweg & Teubner
Format: PDF
Kopierschutz: 1 - PDF Watermark
Zielgruppe
Graduate
Autoren/Hrsg.
Weitere Infos & Material
1 Rechnerarchitekturen.- 1.1 Architektur im Großen.- 1.2 Architektur im Kleinen.- 1.3 Typische Maschinen.- 1.3.1 0-Adreß-Maschine.- 1.3.2 1-Adreß-Maschine.- 1.3.3 2-Adreß-Maschine.- 1.3.4 Registermaschine.- 1.3.5 3-Adreß-Maschine.- 1.4 Adressierung.- 1.4.1 Direkte Adressen.- 1.4.2 Indirekte Adressen.- 1.4.3 Indexadressen.- 1.4.4 Relative Adressen.- 1.4.5 Stack-Adressen.- 1.5 Sprungbefehle.- 1.6 Werkzeuge zur Programmierung.- 2 Assembler-Programmierung.- 2.1 Aufgaben eines Assemblers.- 2.2 Euklid’s Algorithmus.- 2.3 Quellformat.- 2.4 Assembler-Anweisungen.- 2.5 Algebraische Formeln.- 2.6 Vektorrechnung.- 2.7 Kontrollstrukturen.- 2.7.1 Sprungbefehle und Condition Codes.- 2.7.2 Einfache Kontrollstrukturen.- 2.7.3 Kompliziertere Bedingungen.- 2.8 Unterprogramme.- 2.9 Funktionsweise eines Assemblers.- 2.10 Ausblick.- 3 Programmierung mit Makros.- 3.1 Begriffe und Einsatzgebiete.- 3.2 Definition von Konstanten.- 3.3 Funktionsweise eines Makroprozessors.- 3.4 Standards und Makrobüchereien.- 3.5 Ersatz von Befehlen.- 3.6 Schnittstellen.- 3.7 Makros als Variablen.- 3.8 Spracherweiterungen.- 3.9 Kontrollstrukturen.- 3.9.1 Definition.- 3.9.2 Anwendungsbeispiel.- 3.9.3 Implementierung.- 3.10 Ausblick.- 4 Die Programmiersprache C.- 4.1 Entwicklungsgeschichte.- 4.2 Das Prinzip der L-Werte.- 4.3 Ein erstes Beispiel.- 4.4 Übersetzuna und Ausführuna.- 4.5 Quellformat.- 4.6 Programmstruktur.- 4.6.1 Vereinbarungen.- 4.6.2 Funktinnen.- 4.6.3 Der gute Ton.- 4.7 Ein- und Ausgabe.- 4.7.1 Ausgabe — ”printf”.- 4.7.2 Eingabe ” ”scanf”.- 4.8 Parameterübergabe.- 4.9 Euklid’s Alaorithmus.- 4.9.1 Skalare ”int” Variablen.- 4.9.2 Steuerzeichen.- 4.9.3 Einfache Anweisungen.- 4.9.4 Einfache Kontrollstrukturen.- 4.10 Operatoren.- 4.11 Funktionen.- 4.12 Maximum einer Liste von Zahlen.- 4.12.1 Vektoren, konventionell betrachtet.- 4.12.2 Der C Preprozessor.- 4.12.3 Die ”for” Schleife.- 4.12.4 Ein Vektor als Parameter.- 4.12.5 Initialisierung von Variablen.- 4.12.6 Inkrement- und Dekrementoperatoren.- 4.13 Ausblick.- 5 Vektoren, Zeichenketten und Zeiger.- 5.1 Begriffe.- 5.2 Deklaratoren.- 5.3 Ein primitiver Textspeicher.- 5.4 Der Datentyp ”char”.- 5.5 Die Speicherklassen ”register” und ”auto”.- 5.6 7eicheneinaabe.- 5.7 Zeichen sind Integer-Werte.- 5.8 Das Resultat einer Zuweisung.- 5.9 Logische Verknüpfungen.- 5.10 Zeigerwerte und Zeichenketten.- 5.11 Einfache Zeigeroperationen.- 5.12 Zeichenfunktionen.- 5.13 Zeiger als Parameter.- 5.14 Arithmetik mit Zeigern.- 5.15 Operationen mit Zeichenketten.- 5.16 Parameter im Hauptprogramm.- 5.16.1 Das Kommando ”echo”.- 5.16.2 Die Verarbeitung von Optionen.- 5.16.3 Beliebig viele Optionen.- 5.16.4 Ein Makro mit Parameter.- 5.16.5 Optionen und Texte gemischt.- 5.17 Umwandlungen : Zeiger sind keine Integer.- 5.18 Mehrdimensionale Vektoren.- 6 Modulare Programmierung.- 6.1 Problemstellung.- 6.2 Das Hauptprogramm.- 6.3 Externe Vereinbarungen.- 6.4 Sortieralgorithmen.- 6.4.1 Der ”bubble sort” Algorithmus.- 6.4.2 Der ”quick sort” Algorithmus.- 6.5 EinDatenmodul für Zahlen.- 6.5.1 Eigene Datentypen — ”typedef”.- 6.5.2 Die Speicherklasse ”static”.- 6.5.3 Restliche Überlegungen.- 6.5.4 Gleitkommaoperationen.- 6.5.5 Bedingte Übersetzung.- 6.6 Ein Datenmodul für Worte.- 6.7 Dynamische Speicherverwaltung.- 6.8 Programmanagement.- 6.8.1 Quellen verwalten — ”make”.- 6.8.2 Der Büchereimanager ”ar”.- 6.8.3 ”make” für Fortgeschrittene.- 6.8.4 ”make” und Büchereien.- 7 Strukturen, Varianten und Bit-Felder.- 7.1 Begriff und Zweck.- 7.2 Sprachliche Konzepte.- 7.2.1 Strukturen.- 7.2.2 Operationen mit Strukturen.- 7.2.3 Bit-Felder.- 7.2.4 Varianten.- 7.3 Datenerfassung mit Masken.- 7.3.1 Terminal-Operationen — ”mask/crt.c”.- 7.3.2 Problemstellung — ”mask/mask.h”.- 7.3.3 Initialisierung — ”mask/schirm.c”.- 7.3.4 Traversierung zur Ausgabe — ”mask/put.c”.- 7.3.5 Traversierung zur Eingabe — ”mask/get.c”.- 7.4 Verarbeitung von Formeln.- 7.4.1 Problemstellung.- 7.4.2 Definitionen — ”calc/calc.h”.- 7.4.3 Hauptprogramm — ”calc/calc.c”.- 7.4.4 Eingabe — ”calc/getsym.c”.- 7.4.5 Syntaxanalyse — ”calc/ausdruck.c”.- 7.4.6 Ausgabe — ”calc/infix.c”.- 7.4.7 Bewertung — ”calc/eval.c”.- 7.5 Ausblick.- Anhang A Computer-Arithmetik.- A.1 Übersicht.- A.2 Natürliche Zahlen.- A.2.1 Addition.- A.2.2 Basisumwandlungen.- A.3 Zahlen mit Vorzeichen.- A.4 Komplementdarstellungen.- A.5 Basis-1-Komplement.- A.5.1 Umwandlunaen und Umkehr des Vorzeichens.- A.5.2 Addition.- A.6 Basiskomplement.- A.6.1 Addition.- A.6.2 Umkehr des Vorzeichens und Umwandlungen.- A.6.3 Beispiele.- A.7 Andere Darstellungen.- A.7.1 Basiskomplement mit umgekehrtem Vorzeichen.- A.7.2 Dezimal codierte Darstellung.- Anhang B Details zum ”nad” Prozessor.- B.1 Übersicht.- B.2 Aufruf des ”nad” Systems.- B.3 Quellformat.- B.4 Assembler-Anweisungen.- B.5 Allgemein verfügbare Befehle.- B.6 0-Adreß-Maschine.- B.7 1-Adreß-Maschine.- B.8 2-Adreß-Maschine.- B.9 3-Adreß-Maschine.- B.10 Reaistermaschine.- B.11 Adressen.- B.12 Arithmetische Ausdrücke.- Anhang C Details zum ”tec” Prozessor.- C.1 Übersicht.- C.2 Sprachdefinitionen.- C.2.1 Allgemeine Regeln.- C.2.2 Regeln zur Traversierung.- C.2.3 Bäume.- C.3 Aufruf des ”tec” Systems.- C.4 Beispiele.- Anhang D Details zum ”m4” Prozessor.- D.1 Übersicht.- D.2 Strings, Makros und Argumente.- D.3 Makrodefinitionen.- D.4 Bedingungen.- D.5 Arithmetische Operationen.- D.6 String-Operationen.- D.7 Dateioperationen.- D.8 Zusammenfassung.- Anhang E C Sprachbeschreibung.- E.1 Quellformat.- E.1.1 Zeilen, Worte und Kommentare.- E.1.2 Reservierte Worte.- E.1.3 Namen.- E.2 Preprozessor.- E.2.1 Textersatz.- E.2.2 Einfügen von Dateien.- E.2.3 Bedingte Ubersetzung.- E.2.4 Zeilennumerierung.- E.3 Skalare Datentypen und Konstanten.- E.3.1 Ganzzahlige Werte — ”int”, ”short” und ”Iong”.- E.3.2 Werte ohne Vorzeichen — ”unsianed”.- E.3.3 Zeichen — ”char”.- E.3.4 Gleitkommawerte — ”float” und ”double”.- E.3.5 Aufzählungen — ”enum”.- E.3.6 Prozeduren — ”void”.- E.3.7 Zeiger.- E.4 Umwandlungen.- E.4.1 Integer-Werte.- E.4.2 Werte ohne Vorzeichen.- E.4.3 Gleitkommawerte.- E.4.4 Zeiger.- E.4.5 Parameterübergabe.- E.5 Datenstrukturen.- E.5.1 Vektoren.- E.5.2 Zeichenketten und Konstanten.- E.5.3 Strukturen — ”struct”.- E.5.4 Bit-Felder.- E.5.5 Varianten — ”union”.- E.6 Ausdrücke.- E.6.1 Objekt und L-Wert.- E.6.2 Operanden.- E.6.3 Unitäre Operatoren.- E.6.4 Binäre Operatoren.- E.6.5 Auswahl.- E.6.6 Zuweisungen.- E.6.7 Liste.- E.6.8 Konstante Ausdrücke.- E.7 Anweisungen.- E.7.1 Einfache Anweisungen.- E.7.2 Selektionen.- E.7.3 Schleifen.- E.8 Vereinbarungen.- E.8.1 Deklaration und Definition.- E.8.2 Speicherklassen und Lebensdauer.- E.8.3 Daten.- E.8.4 Typen.- E.8.5 Funktionen.- E.8.6 Geltungsbereich.- E.8.7 Deklaratoren.- E.8.8 Typangaben.- E.8.9 Initialisierung.- E.9 Implementierungsunterschiede.- E.9.1 Skalare Datentypen.- E.9.2 Externe Namen.- E.9.3 Reihenfolge von Definitionen.- E.9.4 Reihenfolge von Bewertungen.- E.9.5 Portabilität.- E.10 Syntax in Kürze.- E.11 Querverweise.- Bemerkungen zur Literatur.- 1. Assembler-Programmierung.- 2. Makroprozessoren.- 3. C Lehrbücher.- 4. C Sprachbeschreibungen.- 5. UNIX.- Quellen.