plus®
14.16 IPOS
-Variablen im Compiler
Die IPOS
deklariert werden. Sie besitzen alle denselben Datentyp (32 Bit, vorzeichenbehaftet)
und sind global im gesamten Quelltext gültig. Die folgende Zeile ist quasi implizit in
jedem Modul vorhanden:
long H0, H1, H2, H3, ... ,H1023.
Um Variablen symbolisch zu bezeichnen, besteht die Möglichkeit, mittels der #define-
oder #declare-Direktive einen symbolischen Namen zu definieren.
14.16.1 Beispiel
#define TESTVAR1 H73 //H73 erhält den symbolischen Namen "TESTVAR1"
H73 erhält dann im Programm den Wert 134 durch eine der 3 Zuweisungen:
TESTVAR1 = 134;
TESTVAR1 = 0x86;
TESTVAR1 = 0b10000110;
14.17 Die Vereinbarung globaler Variablen
Eine andere Möglichkeit besteht darin globale Variablen mit dem Schlüsselwort long zu
deklarieren, wie dies oben bereits erläutert worden ist. Der Compiler legt dann eigen-
ständig die Nummern der Variablen (siehe #pragma) fest. Die Variablennummern wer-
den aufsteigend, dem Auftreten der Variablendeklarationen im Quelltext entsprechend,
vergeben. Eine Deklaration beginnt mit dem Schlüsselwort long, gefolgt von der Aufzäh-
lung der mit Komma getrennten, symbolischen Bezeichner. Die Deklaration endet mit
einem Semikolon. Die Deklaration kann über mehrere Quelltextzeilen verteilt sein.
Eine globale Variable darf an beliebiger Stelle im Programm, aber nur außerhalb von
Blöcken (i.a. Funktionen) deklariert werden. Aus Gründen der besseren Übersicht soll-
ten Variablen am Beginn des Quelltextmoduls deklariert werden. Es gilt weiterhin, dass
eine globale Variable vor ihrer Verwendung deklariert sein muss.
Beispiele:
long a, b;
long this_is_a_variable;
long c, d;
Der Compiler ordnet den Bezeichnern a, b, this_is_a_variable, c und d die Variablen
H420 bis H424 zu. Im folgenden Beispiel weist die Direktive '#pragma globals' den Com-
piler an, den Bezeichnern die Variablen H150 bis H160 zu benutzen.
#pragma globals 150 160
long a, b;
long this_is_a_variable;
long c, d;
Handbuch – IPOSplus®
Compiler - Programmierung
IPOSplus
plus®
-Variablen sind praktisch Bestandteil der Sprache und dürfen nicht explizit
®
-Variablen im Compiler
// Variablen liegen in dem für
// globale Var. definierten Bereich
n
n
kVA
kVA
14
f
f
i
i
P
Hz
Hz
P
191