Updated July 2024
ASB supports the data types shown in the tables below.
Scalar Types
Type |
Code |
Size |
Description |
|---|---|---|---|
Floating Point |
F |
4 |
Single precision IEEE float, ~7 significant digits |
F |
6 |
48 bit (WD16, M68000, AMOS) float, ~11 significant digits |
|
F |
8 |
double precision IEEE float, ~16 significant digits |
|
Unsigned Integer (little-endian byte order) |
B |
1 |
8 bit unsigned |
B |
2 |
16 bit unsigned |
|
B |
3 |
24 bit unsigned |
|
B |
4 |
32 bit unsigned |
|
B |
5 |
40 bit signed (two's complement) |
|
B |
6 |
48 bit signed (two's complement, little-endian) |
|
Signed Integer |
I |
1 |
8 bit signed (two’s complement) |
I |
2 |
16 bit signed (two’s complement, little-endian); see Boolean below |
|
I |
4 |
32 bit signed (two’s complement, 2301 order) |
|
I |
6 |
48 bit signed (two's complement); see B6 and I6 Variables below |
|
String |
S |
# |
fixed length string of # bytes; see String Variables below |
S |
0 |
variable length string; see Dynamically Sized Variables |
|
Unformatted |
X |
0 |
fixed length raw bytes |
X |
0 |
variable length raw bytes; see Dynamically Sized Variables |
|
(none) |
|
Size determined by lower-level MAP declarations. |
Compound or Structure Types
Type |
Example |
See Note # |
|---|---|---|
Multi-level MAPs |
MAP1 CUST READ #CH, CUST ! read/write entire group as a unit ? NAME ! individual fields referenced by name |
1, 2 |
DEFSTRUCT ST_CUST ! define structure layout |
|
|
MAP1 DS, DYNSTRUCT |
|
Table Notes:
| 1 | Also known as "records", the multi-level MAP arrangement is physically equivalent a DEFSTRUCT, except for the syntax of accessing its members. Programmers are encouraged to use DEFSTRUCT as it makes the code more self-documenting and simplifies creating multiple instances and arrays of the layout. |
| 2 | Any MAPn level with higher-numbered levels defined within it. |
See Also