Aktuelle Zeit: 06:05:11 24.05.2013

  • Deutsch (German)
  • English

Variablen

Variablen sind im Sourcecode durch Bezeichner benannte Speicherzellen im Arbeitsspeicher (SRAM) oder Eeprom (ERAM). Ihnen können Werte zugewiesen werden, um sie an anderer Stelle auszulesen.

Ausführliche Beschreibung (Wikipedia)

Dimensionierung

Variablen werden mit Dim (Arbeitsspeicher) und/oder eeDim (Eeprom) dimensioniert (erzeugt/angelegt).

Methoden/Eigenschaften

Variablen besitzen Objekteigenschaften:

Eigenschaften der numerischen Standard-Variablen (boolean, byte, word, integer, long, single, ..)
Name Beschreibung Typ read/write
.0-x1) Bit n des Variablenwertes boolean read+write
.LowNibble2) Low-Nibble des Variablenwertes byte read+write
.HighNibble3) High-Nibble des Variablenwertes byte read+write
.Nibblen4) Nibble n (1-8) des Variablenwertes byte read+write
.Byten5) Byte n (1-4) des Variablenwertes byte read+write
.LowByte6) Low-Byte des Variablenwertes byte read+write
.HighByte7) High-Byte des Variablenwertes byte read+write
.LowWord8) Niederwertiges Word des Variablenwertes word read+write
.HighWord9) Höherwertiges Word des Variablenwertes word read+write
.Reverse10) Byte-Anordnung umdrehen, siehe auch CE16(), CE32() word, long read
.Addr11) Adresse der Variable12) word read
.Ptr13) Adresse des MemoryBlocks word read
.SizeOf Vom Datentyp belegte Anzahl Bytes lesen. byte read
Methoden von Byte und Word-Arrays14)
Name Beschreibung
.Sort Arraywerte aufsteigend sortieren (sehr schneller Qsort-Algorithmus)

Benutzerdefinierte Datentypen

Benutzerdefinierte Datentypen mittels Struct erben die Methoden/Eigenschaften der jeweilig in der Struktur deklarierten Elemente.

String und MemoryBlock

Die Datentypen String und MemoryBlock besitzten weitere Methoden bzw. Eigenschaften.

Verwendung

Variablen müssen dimensioniert werden, bevor man sie verwenden kann. Variablen speichern Werte entsprechend ihres Datentyps.

Siehe auch: Dim, Abschnitt "Sichtbarkeit von Variablen"

Zugriff auf einzelne Bits einer Variable

Wie in der obigen Tabelle ersichtlich, kann man auf einzelne Bits einer Variable zugreifen und diese lesen oder schreiben. Der Zugriff auf ein Bit ist auch mit einer weiteren Variable möglich, welche die Bit-Nummer enthält:

Beispiel:

Der Zugriff mit einem konstanten Wert ist in der Ausführungsgeschwindigkeit jedoch schneller:

Beispiel:

Beispiel

dim a,b as byte
dim c as word
dim s as string
 
c=&ha1b2      ' Wert zuweisen, Hexadezimal (liegen rückwärts im Speicher da Hexwert immer Big-Endian)
a=c.LowByte   ' Low-Byte des Variablenwertes lesen, Ergebnis: &hb2
b=c.HighByte  ' High-Byte des Variablenwertes lesen, Ergebnis: &ha1
c.LowByte=b   ' vertauscht wieder hineinschreiben
c.HighByte=a
 
c.0=1         ' Bit 0 in c setzen
a=b.7         ' Bit 7 von b lesen
a=3
c=b.a         ' Bit 3 von b lesen, Bitnummer steht in a
 
Print "&h"+hex(c)  ' Ausgabe: &hb2a1
s = "Hallo"        ' Text zuweisen
a = s.ByteValue(1) ' Dezimalwert des 1. Zeichens vom im String gespeicherten Text lesen

Siehe auch

1) Alle numerischen Datentypen
2) , 3) Implementiert ab Version 2013.r3, Nur byte
4) Implementiert ab Version 2013.r3, Außer Boolean
5) Nur long, single
6) , 7) Nur word, integer
8) , 9) Nur long, longint, single
10) Nur long, longint, integer, word
11) Alle numerischen Datentypen und Strukturen. Bei Arrays die Startadresse des Arrays
12) Adresse bezogen auf den Speicherbereich in dem die Variable liegt, Arbeitsspeicher oder Eeprom.
13) Die intrinsischen Datentypen string, memoryblock
14) Ab Version 2013.r1 build 4612
Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0 chimeric.de = chi`s home
(c) 2011 rgf software, all rights reserved