Vorlesungsankündigung

(Sommersemester 2004) Mittwochs 13:15-14:45 Uhr in 02.07.014

Prof. Dr. Helmut Seidl:

Abstrakte Maschinen

Prof. Dr. Helmut Seidl - Übersetzerbau - Informatik

Inhalt:

Will man für eine Programmiersprache wie Prolog Code erzeugen, wird man schnell feststellen, dass man bei der Übersetzung gerne Befehle verwenden würde, die so von einer konkreten Maschine nicht bereit gestellt werden. Andererseits ändern sich die Instruktionssätze moderner Rechner so schnell, dass es auch gar nicht sinnvoll erscheint, den Compiler zu sehr auf zufälligerweise bereitgestellte Operationen festzulegen. Eine solche Festlegung könnte nämlich bedeuten, dass man sich nach wenigen Jahren bereits gemüßigt fühlen müsste, den Compiler gänzlich neu zuschreiben.
Bereits bei der Implementierung des ersten Pascal Compilers kam man darum auf die Idee, zuerst Code für eine leicht idealisierte Maschine zu erzeugen, deren Befehle dann jeweils nur noch auf den verschiedenen konkreten Zielrechnern zu implementieren waren. Auch die Übersetzung moderner Programmiersprachen wie Prolog, Haskell oder Java basieren auf diesem Prinzip. Einerseits erleichtert dieses Vorgehen die Portierbarkeit des Compilers. Andererseits vereinfacht dies auch die Übersetzung selbst, da man den Befehlssatz entsprechend der jeweiligen zu übersetzenden Programmiersprache geeignet wählen kann.
In der Vorlesung stellen wir solche abstrakte Maschinen für imperative, funktionale, logische und nebenläufige Programmiersprachen vor. Insbesondere sind wir dabei natürlich an den Übersetzungsschemata interessiert, wie man für die jeweiligen konkreten Programmkonstrukte der Programmiersprache die zugehörigen abstrakten Maschinenbefehlsfolgen konstruiert. Zumindest rudimentäre Kennntnis verschiedener Programmiersprachen könnte sich als nützlich erweisen :-)


Termine:

Vorlesung: Mittwoch 13:15-14:45 Uhr, 02.07.014

Achtung:

Der erste Teil, der sich mit der Übersetzung von C-Programmen beschäftigt, findet gemeinsam mit der Übersichtsvorlesung Compilerbau statt.

Übung: Donnerstag 14:15-15:45 Uhr, 02.07.014


Aufzeichnungen:

TTT-Archiv

Folien:


Übungen:

Abgabe der Lösungen jeweils mittwochs bis 12 Uhr per e-mail oder im Raum 02.07.41

Tools:

VAM: Visualisierungstool für Abstrakten Maschinen