Art: Vorlesung V3

Credits: 6 CP

Prüfer / Betreuer

Bereich: Robotik, Computational and Computer Engineering

Fachrichtung: Technische Informatik, Elektrotechnik/Datentechnik

Voraussetzungen: Grundkenntnisse Compilerbau (aus Compiler 1/Einführung Compilerbau), Algorithmen und Datenstrukturen, Java, Rechnerarchitektur (erworben z.B. durch Technische Grundlagen der Informatik)

Inhalt

Die komplizierten Architekturen moderner Prozessoren können in der Praxis nur noch durch den Einsatz hochgradig optimierender Compiler ausgenutzt werden. Innerhalb dieser Compiler hat sich daher stetig die Komplexität von der Erkennung der Quelltexte hin zu deren möglichst effizienter Umsetzung in Maschinen-Code verschoben. In der Lehrveranstaltung geht es um eine praktische Einführung in die dafür benötigten Algorithmen und Datenstrukturen. Vorgestellt werden Analysen und Transformationen dieser Darstellungen mit dem Ziel, optimierten Maschinen-Code zur Ausführung auf modernen Prozessoren zu erhalten. Der behandelte Stoff wird in Übungsblättern, deren Bearbeitung freiwillig ist (keine Abgabe), sowohl in theoretischen als auch praktischen Aufgaben vertieft.

Literatur

  • Engineering a Compiler von Keith D. Cooper, Linda Torczon (2. Auflage!)
  • Advanced Compiler Design and Implementation von Steven S. Muchnick
  • Compilers: Principles, Techniques, and Tools (2. Auflage!) von Aho, Lam, Sethi und Ullman
  • sowie ausgewählte wissenschaftliche Veröffentlichungen (siehe unten)

Corona-Update

Die Vorlesung wird trotz der aktuellen Corona-Pandemie stattfinden, allerdings in vollständig digitaler Form. Details zur Organisation der Vorlesung in diesem Semester können Sie dem Orga-Video entnehmen. Die Kommunikation findet vollständig über den Moodle-Kurs statt, bitte tragen Sie sich unbedingt in diesen Kurs ein!

Folien & Vorlesungsaufzeichnungen aus dem Jahr 2019, Dozent: Dr.-Ing. Florian Stock

Folien & Vorlesungsaufzeichungen aus dem Jahr 2018, Dozent: Prof. Dr.-Ing. Andreas Koch

Beginn: 20.04.2020

Sprechstunde: TBA

Links: Moodle