t = MemToTable(id, type[, table])
type
gibt den Datentyp der Elemente an, die aus
dem Speicherblock gelesen werden sollen. Das kann #BYTE
(1 Byte),
#SHORT
(2 Bytes), #INTEGER
(4 Bytes), #FLOAT
(4 Bytes) oder
#DOUBLE
(8 Bytes) sein.
Mit dem optionalen Argument table
können weitere Parameter für
die Operation gesetzt werden. Folgende Tabellenfelder werden
derzeit erkannt:
Items:
type
auf #INTEGER
und Items
auf 4 setzen, werden 16 Byte aus dem Speicherblock
gelesen. Standardmäßig werden alle Elemente im Speicherblock gelesen.
Offset:
MemToTable()
Elemente
zu lesen beginnt. Die Voreinstellung ist 0, womit vom Anfang
des Speicherblocks gelesen wird.
Signed:
True
gesetzt ist, wird MemToTable()
alle
Elemente des Typs #BYTE
, #SHORT
, und #INTEGER
als Werte
mit Vorzeichen behandeln. Vorgabe ist False
.
EndianSwitch:
True
gesetzt ist, wird MemToTable()
die
Byte-Reihenfolge für alle Multi-Byte-Datentypen wechseln. Dies
kann nützlich sein, wenn Sie zwischen Big- und Little-Endian-Werte
konvertieren müssen. Vorgabe ist False
.
Um eine Tabelle wieder in einen Speicherblock zu konvertieren, verwenden Sie den Befehl TableToMem(). Siehe TableToMem für Details.
Items
angegeben istAllocMem(1, 26) For Local k = 0 To 25 Do Poke(1, k, 'A' + k, #BYTE) Local t = MemToTable(1, #BYTE) For Local k = 0 To 25 Do Print(Chr(t[k]))Dies gibt das Alphabet einer Speicherblockquelle aus.