Kurs Übersetzerbau
BearbeitenEinleitung
Bearbeiten1 Einführung
BearbeitenEin Ü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
Bearbeiten1.2 Übersetzungsphasen
BearbeitenQuellprogramm -> Lexikalische Analyse -> Syntaxanalyse -> Semantische Analyse -> Erzeugen von Zwischencode -> Codeoptimierung -> Codeerzeugung -> Zielprogramm
1.3 Die Systemumgebung des Compilers
BearbeitenVorform 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
Bearbeiten1.5 Werkzeuge
Bearbeiten1.6 Aufbau des Kurses
Bearbeiten2 Lexikalische Analyse
Bearbeiten2.1 Beschreibung von Token durch reguläre Ausdrücke
Bearbeiten2.2 Beschreibung von Token durch Zustandsdiagramme
Bearbeiten2.3 Direkte Implementierung eines Scanners
Bearbeiten2.4 Implementierung eines Scanners in Lex
Bearbeiten3 Syntaxanalyse
Bearbeiten3.1 Kontextfreie Grammatiken und Syntaxbäume
Bearbeiten3.2 Top-Down-Analyse
Bearbeiten3.3 Bottom-Up-Analyse
Bearbeiten4 Syntax-gesteuerte Übersetzung
Bearbeiten5 Übersetzung einer Dokument-Beschreibungssprache
Bearbeiten6 Übersetzung imperativer Programmiersprachen
Bearbeiten7 Übersetzung funktionaler Programmiersprachen
Bearbeiten8 Codeerzeugung und Optimierung
BearbeitenLiteratur
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- Compiler, Scanner, Parser, lex (Informatik), Flex, yacc, Compilerbau, formale Grammatik(Grammatik), Formale Sprache, Syntax, Semantik, kontextfreie Grammatik, lexikalische Analyse, Lexikalischer Scanner, Quellcode, Imperative Programmierung, Funktionale Programmierung, Abstrakte Maschine, Regulärer Ausdruck, Zustandsdiagramm, Token, Syntaxdiagramm, Syntaxbaum, Top-Down- und Bottom-Up-Design, Top-down und Bottom-up