next up previous contents index
Weiter: Die interne Darstellung Hinauf: 14.1 Darstellungsklauseln Zurück: 14.1 Darstellungsklauseln

Die Spezifikation von Längen

 

Man kann in Ada den Speicherbedarf von Objekten explizit festlegen, indem man etwa definiert:

Bits: constant := 1;
type mein_integer is range -100 .. 100;
for mein_integer'SIZE use 8Bits;

Das Attribut T'SIZE bezieht sich auf den Speicherplatz den eine Variabale des Typs T braucht. Die Konstante Bits wurde nur eingeführt um die Lesbarkeit zu erhöhen.

Ein anderes Beispiel ist:

Bytes: constant := 8Bits;
kB: constant := 1024Bytes;
task type Tastatur_Treiber is
...
end Tastatur_Treiber;
for Tastatur_Treiber'STORAGE_SIZE use 3kB;

Dabei bezieht sich das Attribut T'STORAGE_SIZE auf den Speicherplatz den der entsprechende Task benötigt, wenn er aktiviert ist (die Daten, nicht den Code). Falls nicht genug Speicher vorhanden ist, wird die Exception storage_error ausgelöst.



Johann Blieberger
Wed Feb 11 09:58:52 MET 1998