621.401 (10S) Übersetzerbau
Überblick
- Lehrende/r
- LV-Titel englisch Compiler Construcion
- LV-Art Praktikum (prüfungsimmanente LV )
- Semesterstunde/n 2.0
- ECTS-Anrechnungspunkte 4.0
- Anmeldungen 24 (30 max.)
- Organisationseinheit
- Unterrichtssprache Englisch
- LV-Beginn 01.03.2010
- Anmerkungen Die Unterrichtssprache kann mit Einverständnis aller TeilnehmerInnen auf deutsch umgestellt werden.
Zeit und Ort
Liste der Termine wird geladen...
LV-Beschreibung
Lehrmethodik inkl. Einsatz von eLearning-Tools
Angeleitete Durchführung eines Programmierprojekts; Bearbeiten und Präsentieren von Übungsaufgaben.Inhalt/e
Einführung in die Grundlagen des ÜbersetzerbausThemen
- Implementierung eines Compilers
- Lexikalische Analyse, endliche Automaten
- Kontextfreie Grammatiken, Kellerautomaten
- Syntaktische Analyse (top-down parsing)
- Syntaktische Analyse (bottom-up parsing)
- Attributierte Grammatiken
- Semantische Analyse
- Laufzeitumgebung
- Zwischencodeerzeugung
- Codeerzeugung
Lehrziel
Die Studierenden sollen: * selbst einen Compiler für eine prozedurale Programmiersprache in Java entwickeln; * die Inhalte der Vorlesung "Übersetzerbau" in Übungsaufgaben bearbeiten.Erwartete Vorkenntnisse
Gute Java-Kenntnisse Rechnerorganisation, insbesondere Assembler-Programmierung Einführung in die Theoretische InformatikLiteratur
* Aho - Lam - Sethi - Ullmann: Compilers, 2nd edition, Addison-Wesley, 2007. * Grune - Bal - Jacobs - Langendoen: Modern Compiler Design, Wiley, 2000. * Wirth: Compilerbau, 4th edition, Teubner, 1986. * Appel: Modern Compiler Implementation in Java, Cambridge University Press, 1998. * Hopcroft – Motwani – Ullmann: Introduction to Automata Theory, Languages, and Computation, 2nd edition, Addison-Wesley, 2001.Lehrmethodik inkl. Einsatz von eLearning-Tools
Supervised development of a programming project; presentation of solutions to exercises.Inhalt/e
An Introduction to Compiler ConstructionThemen
- Implementing a compiler
- Lexical analysis, finite automata
- Context-free grammars, push-down automata
- Syntactical analysis (top-down parsing)
- Syntactical analysis (bottom-up parsing)
- Syntax-directed translation, attribute grammars
- Static correctness checking
- Run-time environments
- Intermediate code generation
- Code generation
Lehrziel
Students should: * develop a compiler for a procedural programming language using Java; * work on exercises referring to the topics presented in the lecture on "Compiler Construction".Erwartete Vorkenntnisse
Programming in Java Computer organization, in particular assembler programming Introduction to theoretical computer scienceLiteratur
* Aho - Lam - Sethi - Ullmann: Compilers, 2nd edition, Addison-Wesley, 2007. * Grune - Bal - Jacobs - Langendoen: Modern Compiler Design, Wiley, 2000. * Wirth: Compilerbau, 4th edition, Teubner, 1986. * Appel: Modern Compiler Implementation in Java, Cambridge University Press, 1998. * Hopcroft – Motwani – Ullmann: Introduction to Automata Theory, Languages, and Computation, 2nd edition, Addison-Wesley, 2001.Prüfungsinformationen
Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.
Beurteilungskriterien/-maßstäbe
* 4 Pflichtabgaben und mündliche Prüfung über den selbstimplementierten Compiler. * Kreuzelliste für Übungsaufgaben zur Vorlesung.
Beurteilungskriterien/-maßstäbe
* 4 mandatory code submissions and an oral exam about the developed compiler. * Check list ("Kreuzelliste") for exercises.Beurteilungsschema
Note BenotungsschemaPosition im Curriculum
- Diplom-Lehramtsstudium Unterrichtsfach Informatik und Informatikmanagement
(SKZ: 884, Version: 04W.7)
-
2.Abschnitt
-
Fach: Praktische und Technische Informatik (LI 2.2)
(Pflichtfach)
-
Übersetzerbau (
2.0h PR / 3.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 3.0 ECTS)
-
Fach: Praktische und Technische Informatik (LI 2.2)
(Pflichtfach)
-
2.Abschnitt
- Bachelorstudium Informatik
(SKZ: 521, Version: 09W.3)
-
Fach: Übersetzerbau
(Wahlfach)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
-
Fach: Übersetzerbau
(Wahlfach)
- Bachelorstudium Informatik
(SKZ: 521, Version: 03W.1)
-
Fach: Übersetzerbau
(Pflichtfach)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
-
Fach: Übersetzerbau
(Pflichtfach)
- Masterstudium Informatik
(SKZ: 921, Version: 09W.1)
-
Fach: Übersetzerbau
(Wahlfach)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
-
Fach: Übersetzerbau
(Wahlfach)
- Masterstudium Informatik
(SKZ: 921, Version: 03W.1)
-
Fach: Übersetzerbau
(Wahlfach)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
-
Fach: Übersetzerbau
(Wahlfach)
- Diplomstudium Informatik
(SKZ: 880, Version: 02W)
-
2.Abschnitt
-
Fach: Softwareentwicklung
(Pflichtfach)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 4.0 ECTS)
-
Fach: Softwareentwicklung
(Pflichtfach)
-
2.Abschnitt
- Bachelorstudium Informationstechnik
(SKZ: 289, Version: 06W.1)
-
Fach: Informatik und Softwareentwicklung
(Wahlfach)
-
Modul: Übersetzerbau
-
Kurs (Übersetzerbau) (
2.0h KU / 3.0 ECTS)
- 621.401 Übersetzerbau (2.0h PR / 3.0 ECTS)
-
Kurs (Übersetzerbau) (
2.0h KU / 3.0 ECTS)
-
Modul: Übersetzerbau
-
Fach: Informatik und Softwareentwicklung
(Wahlfach)