Übersetzerbau

WS 98/99
Heckmann
Pape

4. Übungsblatt

 

Aufgabe 1 (6 Punkte)

Übersetze das folgende Programm:

program test;
var faktor:integer;
proc q(var x:integer);
begin
  x:=faktor*x;
end;
begin
  faktor:=2;
  q(faktor);
end.


Aufgabe 2 (1 + 2 Punkte)

  1. Übersetze die in Rümpfen vorkommende Anweisung return.
  2. Übersetze die in Rümpfen von Funktionsprozeduren vorkommende Anweisung return e, wobei e ein Ausdruck von einfachem Typ ist.

Aufgabe 3 (3 Punkte)

Übersetze Zuweisungen a:=b, wobei a und b Bezeichner für Verbunde oder statische Felder vom gleichen Typ sind. Die Zuweisung soll den gesamten Inhalt des burch b bezeichneten Objekts in das von a bezeichnete Objekt kopieren.