pTAL Reference Manual (G06.24+, H06.09+, J06.03+)
Table 49 Address Types
ExamplePointer SizeTarget DataAddress TypeData Type
STRING .s;3216-bit address to
1-byte-aligned data
ByteBADDR
INT .i;3216-bit address to
2-byte-aligned data
WordWADDR
STRING s ='P':="A";3216-bit address to
1-byte-aligned, read-only
data
ByteCBADDR
INT i = 'P' := 123;3216-bit address to
2-byte-aligned, read-only
data
WordCWADDR
STRING .SG s;1616-bit address to
1-byte-aligned,
'SG'-relative data
ByteSGBADDR
INT .SG i;1616-bit address to
2-byte-aligned,
'SG'-relative data
WordSGWADDR
STRING .SGX s;3232-bit address to
1-byte-aligned,
'SG'-relative data
ByteSGXBADDR
INT .SGX i;3232-bit address to
2-byte-aligned,
'SG'-relative data
WordSGXWADDR
INT .EXT x;3232-bit address to dataByteEXTADDR
INT .EXT32 x;
3232-bit address to dataByteEXT32ADDR
*
INT .EXT64 x;
3264-bit address to dataByteEXT64ADDR
*
PROCPTR p;
BEGIN END PROCPTR;
32Address denoting PROC
Code
N.A.PROCADDR
PROC32PTR p;
BEGIN END PROCPTR;
3232-bit address denoting
PROC code
N.A.PROC32ADDR*
PROC64PTR p;
BEGIN END PROCPTR;
6464-bit address denoting
PROC code
N.A.PROC64ADDR
*
*
These data types and indirection symbols, .EXT32 and .EXT64 are 64-bit addressing functionality added to the EpTAL
compiler starting with SPR T0561H01^AAP. For more information, see Appendix E, “64-bit Addressing Functionality”
(page 531).
You cannot explicitly declare or change the address type of a pointer. pTAL determines the address
type based on the pointer declaration.
Every identifier you declare in a pTAL program has an object data type and an address type.
Table 50 (page 166) lists the address type for all pTAL constructs except simple variables. The
address type of a simple variable is the same as the address type of a pointer to data of the same
object data type as the simple variable.
Address Types 165