Compilerbau
Winter
(engl. Compiler Construction )
Modulnummer: FIN-INF-100382 |
|
Kürzel CB |
CP 5 |
Semester Winter |
Fachsem. ab 3. |
Dauer 1 Semester |
Sprache deutsch |
Niveau Bachelor |
| Link zum LSF: | LSF |
| Zugang beschränkt: | false |
| Verantwortung: | Prof. Dr. Michael Kuhn |
| Dozent:in: | Prof. Dr. Michael Kuhn |
| Lehrveranstaltungen: |
|
| Verwendbarkeit: | - B.Sc. INF: Informatik - Wahlpflicht - B.Sc. INF: Informatik Wahlpflicht (SPO 2027) - B.Sc. CV: Informatik - Wahlpflicht - B.Sc. CV: Computervisualistik Wahlpflicht (SPO 2027) - B.Sc. INGINF: Informatik - Wahlpflicht - B.Sc. INGINF: Informatik Wahlpflicht (SPO 2027) - B.Sc. WIF: Gestalten und Anwenden - Wahlpflicht - B.Sc. WIF: Informatik Wahlpflicht (SPO 2027) - B.Sc. INF (bilingual): Informatik - Wahlpflicht - B.Sc. INF (bilingual): Informatik Wahlpflicht (SPO 2027) |
Angestrebte Lernergebnisse:
Die Teilnehmenden...
- verstehen theoretische Grundlagen von formalen Sprachen
- wenden Algorithmen zur Optimierung von regulären Ausdrücken, Grammatiken und Code-Repräsentationen an
- verstehen wichtige Konzepte von Compilern
- erstellen Komponenten eines Compilers in kleineren Teams
- präsentieren Lösungsansätze und Ergebnisse anderen Teilnehmenden
Inhalt:
Compiler übersetzen Programme aus einer Ausgangssprache in eine Zielsprache, üblicherweise aus einer höheren Programmiersprache in eine Maschinensprache. Dies erlaubt es unter anderem, die gleiche Anwendung mit relativ geringem Aufwand für unterschiedliche Prozessorarchitekturen zu übersetzen und darauf auszuführen. Ein tiefergehendes Verständnis von Compilern hilft dabei, effizientere und sicherere Programme zu schreiben.
Die zu übersetzenden Programme werden außerdem durch Compiler überprüft und verbessert. Wie viele Fehler dabei gefunden werden können, hängt von der Striktheit der Sprache ab. Einige Sprachen, wie z. B. Rust, machen es schwieriger, Programme ohne Fehler zu schreiben, bieten dafür aber gewisse Korrektheitsgarantien. Darüber hinaus führen Compiler eine Vielzahl an Optimierungen durch, um die gegebene Rechnerarchitektur möglichst effizient zu nutzen.
Die Vorlesung findet nach dem Prinzip des Flipped Classroom statt. Dabei sollen selbstständig die entsprechenden Kapitel des Buches „Introduction to Compilers and Language Design“ gelesen werden, die dann in der Vorlesung vertieft besprochen werden.
In der Vorlesung werden die Konzepte vermittelt, die Übungen dienen der praktischen Anwendung und Umsetzung der erworbenen Kenntnisse.
Arbeitsaufwand:
- 56h Präsenz
- 94h selbstständiges Arbeiten
| Prüfungsvorleistungen: | Studien-/Prüfungsleistungen: | Lehrform / SWS: |
|
Mündliche Prüfung
|
|
| Voraussetzungen nach Prüfungsordnung: | Empfohlene Voraussetzungen: |
|
keine
|
|
| Medienformen: | Literatur: |
|
|
|
Hinweise: