INDEX: Adressierung des Speichers

Für die Adressierung jeder Variablen stehen alternativ zwei Methoden zur Verfügung:

1) Index-Methode

Die Adressierung erfolgt durch die Vorgabe eines Indexwertes (var[?].index). Jeder Index umfasst einen Speicher von 24 Byte. Wird der Index-“Abstand“ zweier hintereinander liegenden Variablen zu klein gewählt, kommt es zur Speicherüberlappung. Folge: Der Speicher der folgenden Variable wird überschrieben. Die CNC meldet keinen Fehler, da sie davon ausgeht, dass die Adressierung so gewählt wurde.

2) AutoMem-Methode

Bei dieser Methode übernimmt die CNC das Speichermanagement. Die V.E-Variablen werden nacheinander nicht-überlappend in den Speicher eingetragen. Der Nutzer braucht sich bei dieser Methode über die korrekte Speicherbelegung keine Gedanken zu machen. Kennzeichen der AutoMem-Methode ist, dass die Deklaration des var[?].index Attributs in keiner der Variablen genutzt wird!

Der Nutzer trifft die Entscheidung, nach welcher der Methoden jeweils die beiden Speicher für CHANNEL und GLOBAL organisiert werden.

INDEX: Adressierung des Speichers 1:
INDEX: Adressierung des Speichers 2:

+ Beide Speicher müssen nicht mit der gleichen Methode organisiert sein - obwohl beide Speicher in einer V.E-Liste deklariert werden!
+ Ein mehrkanaliger Aufbau verkompliziert die Entscheidung. Dies trifft vor allem für GLOBAL-Variablen zu. Anmerkungen hierzu finden sich im Kapitel 1.5.

Hinweis

Die hier beschriebene EXPORT Methode erfordert beim Einsatz der Indexmethode zwingend, dass alle Indexwerte in aufsteigender Reihenfolge eingetragen sind. Diese Einschränkung besteht laut der Dokumentation „Externe Variablen“ ansonsten nicht!