Nächste Seite: Adressierung der Parameter Aufwärts: Laufzeitumgebung Vorherige Seite: Modul-Initialisierung

## Stack-Aufbau

Das Register A5 zeigt auf den Prozedurdeskriptor (mark pointer). Der Prozedurdeskriptor umfasst bei globalen Prozeduren 8 Byte, bestehend aus der Rücksprungadresse und einem Zeiger auf den Prozedurdeskriptor der aufrufenden Prozedur (dynamic link). Bei lokalen Prozeduren sind es 12 Byte; hier wird zusätzlich der aktuelle Prozedurdeskriptor der umschliessenden Prozedur auf dem Stack abgelegt (static link). Die beiden Arten der Prozedurdeskriptoren sind in Abbildung 5.1 dargestellt.

Abbildung 5.1: Stackaufbau von Prozeduren.

Vom Prozedurdeskriptor aus in negativer Richtung werden die lokalen Variablen angelegt. Mit positivem Offset zum A5-Register erreicht man die Parameter der Prozedur. Die Anordnung von Variablen und Parametern ist in Abschnitt 5.5.7 genau beschrieben.