Mittels einer Strukturdeklaration lassen sich Werte in einem Datenobjekt besser lesbar und übersichtlicher ablegen, als es mit den gegebenen Varianten für ein Datenobjekt möglich ist. Hierfür setzt der Präprozessor die angegebenen Werte in die entsprechenden Befehle wie „.db“, „.dw“ usw. um.

Die Strukturdeklaration selbst belegt bekanntlich keinen Speicherplatz, sondern dient nur zur Definiton wie Daten strukturiert sind und wie sie interpretiert werden sollen.

Anwendung

Die Daten, z.Bsp. für eine Tabelle mit sich wiederholenden, verschiedenen aufeinanderfolgenden Werten, werden statt wie üblich mit „.db“, „.dw“ usw. folgend definiert:

Strukturname { Elementwert [, Elementwert2, ..] }

  • Strukturname ist hierbei der Name der deklarierten Struktur.
  • Elementwertn sind je nach Aufbau der Struktur ein oder mehrere Konstantwerte. Zeichenketten welche die in der Struktur deklarierten Länge überschreiten werden abgeschnitten. Wird die Länge unterschritten werden sie mit Leerzeichen aufgefüllt.

Beispiel

[..]
 
struct ENTRY
  byte   index
  string text[14]
  byte   terminate
  word   value
endstruct
 
[..]
 
data table
  ENTRY { 1, "Eintrag Nr. 1", 0, 0xcd44 }
  ENTRY { 2, "Eintrag Nr. 2", 0, 0x1122 }
  ENTRY { 3, "Eintrag Nr. 3", 0, 0xff00 }
enddata

Dieses Beispiel wird vom Präprozessor verarbeitet zu:

data table
  .db 1
  .db "Eintrag Nr. 1 ",0
  .dw 0xcd44
  .db 2
  .db "Eintrag Nr. 2 ",0
  .dw 0x1122
  .db 3
  .db "Eintrag Nr. 3 ",0
  .dw 0xff00
enddata