Datentypen

 

Werte haben immer einen bestimmten Datentyp. Die Integerwerte (ganzzahlige Werte) haben in BASIC einen 8, 16 oder 32 Bit breiten Datentyp, floating point Zahlen sind immer 4 byte lang.

 

 

Datentyp

Vorzeichen

Wertebereich

Bit

 




Char

Ja

-128 ... +127

8

Byte

Nein

0 ... 255

8

Integer

Ja

-32768 ... +32767

16

UInteger

Nein

0 ... 65535

16

Word

Nein

0 ... 65535

16

Long (kein Mega32)

Ja

-2147483648 ... 2147483647

32

ULong (kein Mega32)

Nein

0 ... 4294967295

32

Single

Ja

±1.175e-38 to ±3.402e38

32

 

 Da der Interpreter sonst zu groß werden würde, sind die 32-Bit Integer Datentypen nicht auf dem Mega32 verfügbar.

 

Strings

 

Es existiert kein expliziter "String" Datentyp. Ein String basiert auf einem character array. Man muss die Größe des arrays so wählen, daß alle Zeichen des Strings in das character array passen. Zusätzlich wird Platz für ein Terminierungszeichen (dezimal Null) benötigt, um das Ende der Zeichenkette anzuzeigen.

 

 

Typkonvertierung

 

Bei arithmetischen Ausdrücken passiert es sehr oft, daß einzelne Werte nicht vom gleichen Typ sind. So sind die Datentypen im folgenden Ausdruck gemischt (a ist integer variable).

 

a + 5.5

 

In diesem Fall wird a zuerst in den Datentyp Single konvertiert und danach 5.5 addiert. Der Datentyp des Ergebnisses ist auch Single. Es gelten bei der Typkonvertierung folgende Regeln:

 

Ist bei der Verknüpfung von zwei 8 Bit oder 16 Bit Integerwerten einer der beiden Datentypen vorzeichenbehaftet so ist auch das Ergebnis des Ausdrucks vorzeichenbehaftet.

 

Ist einer der beiden Operanden vom Typ Single, so ist auch das Ergebnis vom Typ Single. Sollte der andere der beiden Operanden einen 8 Bit oder 16 Bit Datentyp haben, so wird er vor der Operation in einen Single Datentyp umgewandelt.