Inhalt

[ 521SYSTCOBV22 ] VL Compilerbau

Versionsauswahl
Workload Ausbildungslevel Studienfachbereich VerantwortlicheR Semesterstunden Anbietende Uni
3 ECTS B3 - Bachelor 3. Jahr Informatik Hanspeter Mössenböck 2 SSt Johannes Kepler Universität Linz
Detailinformationen
Quellcurriculum Bachelorstudium Informatik 2025W
Lernergebnisse
Kompetenzen
Die Studierenden verstehen den Aufbau und die Funktionsweise von Compilern. Sie beherrschen die gängigen Methoden des Compilerbaus und sind in der Lage, einfache Compiler zu implementieren. Sie können ferner Compilerbau-Kenntnisse im allgemeinen Software Engineering einsetzen und beherrschen dazu die Beschreibung von Übersetzungsprozessen mittels attributierter Grammatiken.
Fertigkeiten Kenntnisse
Studierende können

  • Syntaktisch strukturierte Datenströme durch (attributierte) Grammatiken beschreiben (K6)
  • Grammatiken umformen, um LL(1)-Konflikte und Linksrekursion zu beseitigen (K6)
  • Einen Scanner für eine als reguläre Grammatik gegebene Menge von Terminalsymbolen entwickeln (K6)
  • Einen Parser im rekursiven Abstieg samt Fehlerbehandlung für eine als kontextfreie Grammatik gegebene Sprache entwickeln (K6)
  • LALR(1)-Parsertabellen für eine als BNF-Grammatik gegebene Sprache erstellen (K6)
  • Namen, Typen und Scopes eines Programms in einer Symbolliste verwalten (K6)
  • Aus einem Java-ähnlichen Quellprogramm Code für eine Stackmaschine erzeugen (k6)
  • die wesentlichen Merkmale virtueller Maschinen und ihre Unterschiede zu physischen Maschinen erklären (K2, K5)
  • einen Compilergenerator (z.B. Coco/R) einsetzen, um aus einer Compilerbeschreibung die Kernteile eines Compilers zu erzeugen (K6)
  • Grundlagen der formalen Sprachen (reguläre und kontextfreie Grammatiken, BNF, EBNF, endliche Automaten, Kellerautomaten)
  • Lexikalische Analyse
  • Syntaxanalyse (rekursiver Abstieg, LR(1), LALR(1))
  • Attributierte Grammatiken
  • Symbollistenverwaltung
  • Codeerzeugung
  • Virtuelle Maschinen
  • Compilergeneratoren
Beurteilungskriterien Schriftliche Klausur am Semesterende.
Lehrmethoden Folienvortrag mit Beispielen an der Tafel.
Abhaltungssprache Deutsch
Literatur Siehe http://ssw.jku.at/Teaching/Lectures/CB/VL/
Lehrinhalte wechselnd? Nein
Sonstige Informationen Diese Vorlesung bildet mit der dazugehörigen Übung eine untrennbare didaktische Einheit. Die hier dargestellten Lernergebnisse werden im Zusammenwirken der beiden Lehrveranstaltungen erreicht.

Für nähere Informationen siehe http://ssw.jku.at/Teaching/Lectures/CB/VL/

Äquivalenzen INBVBVOUEBB: VO Übersetzerbau (3 ECTS)
Frühere Varianten Decken ebenfalls die Anforderungen des Curriculums ab (von - bis)
INBIPVOUEBB: VO Übersetzerbau (2007W-2022S)
Präsenzlehrveranstaltung
Teilungsziffer -
Zuteilungsverfahren Direktzuteilung