Cantitate/Preț
Produs

Übersetzerbau: Theorie, Konstruktion, Generierung: Springer-Lehrbuch

Autor Dieter Maurer
de Limba Germană Paperback – 13 mar 1997
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.
Citește tot Restrânge

Din seria Springer-Lehrbuch

Preț: 44671 lei

Preț vechi: 55839 lei
-20% Nou

Puncte Express: 670

Preț estimativ în valută:
8549 9019$ 7125£

Carte tipărită la comandă

Livrare economică 03-17 ianuarie 25

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9783540616924
ISBN-10: 3540616926
Pagini: 660
Ilustrații: XVI, 640 S. 14 Abb.
Dimensiuni: 155 x 235 x 34 mm
Greutate: 0.91 kg
Ediția:2., überarb. u. erw. Aufl.
Editura: Springer Berlin, Heidelberg
Colecția Springer
Seria Springer-Lehrbuch

Locul publicării:Berlin, Heidelberg, Germany

Public țintă

Graduate

Cuprins

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.

Textul de pe ultima copertă

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.