Übersetzerbau VU, Übungsteil

[Vorlesungsteil [TISS-Eintrag] [Institut]

[Betreuer] [Ort] [Termine] [Anmeldung] [Login] [Lehrziel] [Übergangsbestimmungen / Neuer Studienplan] [Inhalt] [Unterlagen] [Häufig gestellte Fragen und Antworten] [Werkzeuge]

Betreuer

im SS 2024: Andreas Krall und Anton Ertl.

Alle Anfragen bezüglich des inhaltlichen Teils des Übungsteils (Fragen zur Angabe) richten Sie bitte per Email an anton@complang.tuwien.ac.at oder schreiben Sie ein Posting im Forum.

Wenn Sie Schwierigkeiten mit der Lösung haben, schauen Sie, ob das Problem schon im Forum diskutiert wurde; wenn nicht, stellen Sie dort eine Frage. Allerdings ist das Forum nicht dazu da, die Beispiele für sie zu lösen, sondern sollen Ihnen nur Unterstützung bieten. Sie müssen die Beispiele selbst lösen und sie dann im Abschlussgespräch erklären können.

Der Abteilungs-Techniker Herbert Pohlai ist für technische Angelegenheiten (Computerprobleme, Passwort vergessen, Druckerpapier, etc.) zuständig und unter der Telefonnummer 58801/18525 oder herbert@mips.complang.tuwien.ac.at erreichbar.

Termine

5.3.2024-14.3.2024 Anmeldung über TISS
7.3.2024, 11:15 Uhr Vorbesprechung (Übung und Vorlesung) und erste Vorlesung
8.3.2024, 14 Uhr Beginn der Übung
20.3.2024, 14 Uhr Abgabe Assembler A
10.4.2024, 14 Uhr Abgabe Assembler B
17.4.2024, 14 Uhr Abgabe Scanner
24.4.2024, 14 Uhr Abgabe Parser
8.5.2024, 14 Uhr Abgabe Attributierte Grammatik
22.5.2024, 14 Uhr Abgabe Codeerzeugung A
5.6.2024, 14 Uhr Abgabe Codeerzeugung B
19.6.2024, 14 Uhr Abgabe Gesamtbeispiel
20.6.2024 - 26.6.2024 Anmeldung für das Abschlussgespräch und die Prüfung
28.6.2024 - 5.7.2024 Abschlussgespräch
27.6.2024 - 1.2.2025 Prüfung Vorlesungsteil

Anmeldung

Ab 5.3.2024 ist die Anmeldung über TISS möglich.

Ihr Accountname ist u gefolgt von der Matrikelnummer, z.B. u99999999. Ein Passwort zu Ihrem Account erfahren Sie ueber Email, und das sollten Sie möglichst bald ändern (das erste wird nach kurzer Zeit gesperrt).

Login

Die Übungsmaschine ist die g0.complang.tuwien.ac.at. Sollte sie längerfristig ausfallen, steht als Ersatzmaschine die g2 zur Verfügung (Sie können sich aber vorerst nicht auf die Ersatzmaschine einloggen).

Aus Sicherheitsgründen können sie sich auf dem Übungsrechner nur per ssh einloggen und mit scp Dateien uploaden (allerdings wird beim Kopieren von Windows nach Unix mit scp von Umkodierungen mit schwer durchschaubaren Folgen berichtet). Alle anderen Zugriffsmöglichkeiten (telnet, ftp) sind deaktiviert.

Die ssh für verschiedene Betriebssysteme gibt es auf SSH.

Sollten Sie mit Windows einloggen wollen, dann beachten Sie bitte auch die allgemeinen Fragen.

Lehrziel

In der Vorlesung werden die theoretischen Grundlagen des Übersetzerbaus vermittelt. Im Übungsteil werden praktische Kenntnisse mit Werkzeugen des Übersetzerbaus erworben.

Anrechnungen

Für folgende Studien ist Übersetzerbau eine Wahllehrveranstaltung:

Inhalt

In der Vorlesung werden die theoretischen Grundlagen des Übersetzerbaus vermittelt. In der Übung sollen Beispiele programmiert werden:

Die Beispiele bauen aufeinander auf.

Unterlagen

Das Übungsskriptum enthält die Aufgabenstellungen für den Laborübungsteil. Weiters ist die Dokumentation der zu verwendenden Werkzeuge (tw. in Englisch) enthalten. Es ist online verfügbar:

Allgemeine Übungsinformationen und Beispiele; oder zum Ausdrucken als Postscript oder PDF.

Über den AMD64-Assembler gibt es:

AMD64-Assembler-Handbuch
aus dem Laborübungsteil des Skriptums
Wenn Sie's genauer wissen wollen: Offizielle Manuals der Prozessor-Hersteller
allerdings mit Beispielen in Intel-Syntax für den Assembler statt der von uns verwendeten AT&T-Syntax (u.a. kommt bei der Intel-Syntax das Zielregister (bzw. die zu schreibende Speicherstelle) als erstes Argument, bei AT&T-Syntax als letztes).
ABI-Spezifikation als PDF oder HTML
Manuals fuer make, lex, und yacc. Aus urheberrechtlichen Gründen sind diese Handbücher nur von innerhalb der TUnets zugreifbar. Sie können Sie aber z.B. auf ihren Account auf der g0 herunterladen und von dort auf ihren Heimcomputer. Sie können natürlich auch stattdessen die Handbücher von GNU make, Flex, und Bison verwenden; allerdings bieten die alten Manuals einen kompakten Überblick über die wichtigsten Funktionen dieser Werkzeuge. Die neueren sind vollständiger, aber auch weit umfangreicher.

Für Ox gibt es das Tutorial und das User Reference Manual.

Zu Burg, Iburg, und BFE: Skripten-Teil (PS, PDF); Mini-HowTo für BFE; Doku zu burg (gilt zum Großteil auch für iburg); und noch ein Paper über iburg.

Eventuelle Ergänzungen zu den Beispielen werden im Forum bekanntgegeben.

Ein Beispiel, wie die Werkzeuge zusammenarbeiten, finden Sie unter /usr/ftp/pub/ubvl/beispiel1.tgz. Die Datei beispiel1.tgz enthält ein Beispiel, das zeigt, wie die Werkzeuge flex,bison,ox und burg zusammenarbeiten. Mit tar xvzf /usr/ftp/pub/ubvl/beispiel1.tgz wird die Datei entpackt. Enthalten ist auch ein ausführliches README, das weitere Erläuterungen zu dem Beispiel enthält.

Häufig gestellte Fragen und Antworten

Allgemeine Fragen
Hier finden Sie Fragen allgemeiner Natur und deren Antworten. Das betrifft den allgemeinen Übungsbetrieb, den Umgang mit Programmen, Erklärung von speziellen Fehlermeldungen, usw.
Aktuelle Fragen zu den Beispielen
können Sie im Forum posten.

Werkzeuge

Falls Sie die Beispiele auf Ihrem eigenen Personalcomputer rechnen wollen, stehen die Werkzeuge zum Download zur Verfügung.


Andreas Krall, Anton Ertl