- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
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…mehr
Andere Kunden interessierten sich auch für
- Klaus KilberthJSP54,99 €
- Reinhard WilhelmÜbersetzerbau32,99 €
- Reinhard WilhelmÜbersetzerbau29,99 €
- Robert BraunEinführung in die Programmierung34,99 €
- N. E. FuchsKurs in Logischer Programmierung54,99 €
- William F. ClocksinProgramming in Prolog57,99 €
- I.V. Ramakrishnan (ed.)Practical Aspects of Declarative Languages42,99 €
-
-
-
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.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
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.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Springer-Lehrbuch
- Verlag: Springer / Springer Berlin Heidelberg / Springer, Berlin
- Artikelnr. des Verlages: 978-3-540-61692-4
- 2. Aufl.
- Seitenzahl: 660
- Erscheinungstermin: 13. März 1997
- Deutsch
- Abmessung: 235mm x 155mm x 36mm
- Gewicht: 984g
- ISBN-13: 9783540616924
- ISBN-10: 3540616926
- Artikelnr.: 04686155
- Springer-Lehrbuch
- Verlag: Springer / Springer Berlin Heidelberg / Springer, Berlin
- Artikelnr. des Verlages: 978-3-540-61692-4
- 2. Aufl.
- Seitenzahl: 660
- Erscheinungstermin: 13. März 1997
- Deutsch
- Abmessung: 235mm x 155mm x 36mm
- Gewicht: 984g
- ISBN-13: 9783540616924
- ISBN-10: 3540616926
- Artikelnr.: 04686155
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.
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.