Maurer | Übersetzerbau | Buch | 978-3-540-61692-4 | www.sack.de

Buch, Deutsch, 640 Seiten, Format (B × H): 155 mm x 235 mm, Gewicht: 984 g

Reihe: Springer-Lehrbuch

Maurer

Übersetzerbau

Theorie, Konstruktion, Generierung
2. Auflage 1997
ISBN: 978-3-540-61692-4
Verlag: Springer

Theorie, Konstruktion, Generierung

Buch, Deutsch, 640 Seiten, Format (B × H): 155 mm x 235 mm, Gewicht: 984 g

Reihe: Springer-Lehrbuch

ISBN: 978-3-540-61692-4
Verlag: Springer


Diese zweite, überarbeitete und erweiterte Auflage vermittelt Studenten der Informatik Fundament und Rüstzeug des Übersetzerbaus für imperative, funktionale, logische und - neu hinzugekommen - objektorientierte Programmiersprachen und moderne Zielarchitekturen: von den theoretischen Grundlagen bis zu konstruktiven und generativen Verfahren.
Die statische Analyse von Programmen, die für die Unterstützung des Softwareentwicklungsprozesses ebenso wichtig ist wie hier für die Erzeugung effizienter Zielprogramme, wird semantisch fundiert. Die erforderlichen Grundkenntnisse aus der Theorie der formalen Sprachen und Automaten werden passend bereitgestellt.
Das Buch enthält zahlreiche Übungsaufgaben und eignet sich zur Vorlesungsbegleitung ebenso wie zum Selbststudium.
Maurer Übersetzerbau jetzt bestellen!

Zielgruppe


Graduate


Autoren/Hrsg.


Weitere Infos & Material


1 Einleitung.- 1.1 Höhere Programmiersprachen.- 1.2 Implementierung von Programmiersprachen.- 2 Übersetzung imperativer Programmiersprachen.- 2.1 Sprachkonzepte und ihre Übersetzung.- 2.2 Die Architektur der P-Maschine.- 2.3 Wertzuweisungen und Ausdrücke.- 2.4 Bedingte und iterative Anweisungen, Anweisungsfolgen.- 2.5 Speicherbelegung für Variablen einfachen Typs.- 2.6 Speicherbelegung für Felder.- 2.7 Speicherbelegung für Verbunde.- 2.8 Zeiger und dynamische Speicherbelegung.- 2.9 Prozeduren.- 2.10 Hauptprogramm.- 2.11 Übungen.- 2.12 Literaturhinweise.- 3 Übersetzung funktionaler Programmiersprachen.- 3.1 Sprachtyp und einleitendes Beispiel.- 3.2 LaMa, eine einfache funktionale Programmiersprache.- 3.3 Einführung in die Übersetzung von LaMa.- 3.4 Umgebungen und Bindungen.- 3.5 Die Architektur der MaMa.- 3.6 Kellerverwaltung und Adressierung.- 3.7 Befehlsvorrat und Übersetzung.- 3.8 Implementierung von Listen.- 3.9 Übungen.- 3.10 Literaturhinweise.- 4 Übersetzung logischer Programmiersprachen.- 4.1 Logische Programmiersprachen.- 4.2 Prädikatenlogische Grundlagen.- 4.3 Unifikation.- 4.4 Ausführung von logischen Programmen.- 4.5 Prolog.- 4.6 Prolog: Abstrakte Maschine und Übersetzung.- 4.7 Übersetzung von Prolog.- 4.8 Effizienzverbesserungen.- 4.9 Übungen.- 4.10 Literaturhinweise.- 5 Übersetzung objektorientierter Sprachen.- 5.1 Konzepte objektorientierter Sprachen.- 5.2 Die Übersetzung von Methoden.- 5.3 Schemata zur Übersetzung von Vererbung.- 5.4 Generizität.- 5.5 Übungen.- 5.6 Literaturhinweise.- 6 Struktur von Übersetzern.- 6.1 Übersetzerteilaufgaben.- 6.2 Die lexikalische Analyse.- 6.3 Der Sieber.- 6.4 Die syntaktische Analyse.- 6.5 Die semantische Analyse.- 6.6 Die maschinenunabhängige Optimierung.- 6.7 Die Adreßzuordnung.- 6.8 DieErzeugung des Zielprogramms.- 6.9 Die maschinenabhängige Codeverbesserung.- 6.10 Reale Übersetzerstrukturen.- 6.11 Formale Spezifikation und Generierung von Übersetzermoduln.- 6.12 Literaturhinweise.- 7 Lexikalische Analyse.- 7.1 Die Aufgabe der lexikalischen Analyse.- 7.2 Theoretische Grundlagen.- 7.3 Sprache zur Spezifikation der lex. Analyse.- 7.4 Die Generierung eines Scanners.- 7.5 Der Sieber.- 7.6 Flex, ein Scanner-Generator unter UNIX.- 7.7 Übungen.- 7.8 Literaturhinweise.- 8 Syntaktische Analyse.- 8.1 Die Aufgabe der syntaktischen Analyse.- 8.2 Theoretische Grundlagen.- 8.3 Top-down-Syntaxanalyse.- 8.4 Bottom-up-Syntaxanalyse.- 8.5 Bison, ein LALR(1)-Parsergenerator.- 8.6 Übungen.- 8.7 Literaturhinweise.- 9 Semantische Analyse.- 9.1 Aufgabe der semantischen Analyse.- 9.2 Attributgrammatiken.- 9.3 Einige Attributgrammatiken.- 9.4 Die Generierung von Attributauswertern.- 9.5 Übungen.- 9.6 Literaturhinweise.- 10 Abstrakte Interpretation.- 10.1 Einführung.- 10.2 Abstrakte Interpretation (denotationelle Semantik).- 10.3 Abstrakte Interpretation (operationelle Semantik).- 10.4 Literaturhinweise.- 11 Bäume: Mustererkennung und Analyse.- 11.1 Programmtransformationen.- 11.2 Codeselektion.- 11.3 Das Mustererkennungsproblem.- 11.4 Das Baumanalyseproblem.- 11.5 Endliche Baumautomaten.- 11.6 Generierung von Mustererkennern.- 11.7 Die Generierung von Baumanalysatoren.- 11.8 Baumautomaten mit Kosten.- 11.9 Implementierung.- 11.10 Übungen.- 11.11 Literaturhinweise.- 12 Codeerzeugung.- 12.1 Abstrakte und reale Maschinen.- 12.2 Klassifikation von Architekturen.- 12.3 Programmdarstellungen.- 12.4 Codeerzeugung, integrierte Verfahren.- 12.5 Registerzuteilung durch Graphfärbung.- 12.6 Instruktionsanordnung.- 12.7 Übungen.- 12.8 Literaturhinweise.- Literatur.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.