Benutzer:Centic/Übersetzerbau

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Kurs Übersetzerbau[Bearbeiten | Quelltext bearbeiten]

Einleitung[Bearbeiten | Quelltext bearbeiten]

1 Einführung[Bearbeiten | Quelltext bearbeiten]

Ein Übersetzer (engl. Compiler) erzeugt aus einer Sprache A ein Zielprogramm in einer Sprache B. Die Syntax von A wird durch eine Grammatik definiert.


1.1 Anwendungsgebiete[Bearbeiten | Quelltext bearbeiten]

1.2 Übersetzungsphasen[Bearbeiten | Quelltext bearbeiten]

Quellprogramm -> Lexikalische Analyse -> Syntaxanalyse -> Semantische Analyse -> Erzeugen von Zwischencode -> Codeoptimierung -> Codeerzeugung -> Zielprogramm

1.3 Die Systemumgebung des Compilers[Bearbeiten | Quelltext bearbeiten]

Vorform des Quellprogramms -> Präprozessor -> Quellprogramm -> Compiler -> Zielprogramm in Assemblersprache -> Assembler -> Programm in verschiebbarem Maschinencode -> Lader/Binder (mithilfe anderer Programmteile, Programme aus Bibliotheken in verschiebbarem Maschinencode) -> Programm in absolutem Maschinencode

1.4 Compiler und Interpreter, reale und abstrakte Maschinen[Bearbeiten | Quelltext bearbeiten]

1.5 Werkzeuge[Bearbeiten | Quelltext bearbeiten]

1.6 Aufbau des Kurses[Bearbeiten | Quelltext bearbeiten]

2 Lexikalische Analyse[Bearbeiten | Quelltext bearbeiten]

2.1 Beschreibung von Token durch reguläre Ausdrücke[Bearbeiten | Quelltext bearbeiten]

2.2 Beschreibung von Token durch Zustandsdiagramme[Bearbeiten | Quelltext bearbeiten]

2.3 Direkte Implementierung eines Scanners[Bearbeiten | Quelltext bearbeiten]

2.4 Implementierung eines Scanners in Lex[Bearbeiten | Quelltext bearbeiten]

3 Syntaxanalyse[Bearbeiten | Quelltext bearbeiten]

3.1 Kontextfreie Grammatiken und Syntaxbäume[Bearbeiten | Quelltext bearbeiten]

3.2 Top-Down-Analyse[Bearbeiten | Quelltext bearbeiten]

3.3 Bottom-Up-Analyse[Bearbeiten | Quelltext bearbeiten]

4 Syntax-gesteuerte Übersetzung[Bearbeiten | Quelltext bearbeiten]

5 Übersetzung einer Dokument-Beschreibungssprache[Bearbeiten | Quelltext bearbeiten]

6 Übersetzung imperativer Programmiersprachen[Bearbeiten | Quelltext bearbeiten]

7 Übersetzung funktionaler Programmiersprachen[Bearbeiten | Quelltext bearbeiten]

8 Codeerzeugung und Optimierung[Bearbeiten | Quelltext bearbeiten]

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Güting, R.H., und M. Erwig, Übersetzerbau: Techniken, Werkzeuge, Anwendungen. Springer-Verlag, Berlin Heidelberg 1999. 398 S., ISBN 3-540-65389-9
  • Aho, A.V., R. Sethi und J.D. Ullman, Compilers. Principles, Techniques, and Tools. Addison-Wesley, Reading, 1986.
  • Parsons, T.W., Introduction to Compiler Construction. Computer Science Press, New York, 1992.
  • Wilhelm, R., und D. Maurer, Übersetzerbau. Theorie, Konstruktion, Generierung. 2. Aufl., Springer-Verlag, Berlin, 1997.
  • Waite, W.M. und G. Goos, Compiler Construction, Springer-Verlag, Berlin, 1984.
  • Sudkamp, T.A., Languages and Machines. Addison-Wesley, Reading, 1988.

Links[Bearbeiten | Quelltext bearbeiten]