pTAL Reference Manual (H06.08+)
Built-In Routines
HP pTAL Reference Manual—523746-006
15-83
$SGBADDR_TO_EXTADDR
$SGBADDR_TO_EXTADDR
$SGBADDR_TO_EXTADDR converts an SGBADDR or SGXBADDR address to an
EXTADDR address.
expression
is an expression whose value is an SGBADDR or SGXBADDR address.
$SGBADDR_TO_EXTADDR returns expression converted to an EXTADDR
address.
$SGBADDR_TO_SGWADDR
$SGBADDR_TO_SGWADDR converts an SGBADDR or SGXBADDR address to an
SGWADDR address.
Example 15-80. Using the $SCALE Routine to Maintain Precision
FIXED(3) num, a, b; ! fpoint of 3
num := $SCALE (a,3) / b; ! Scale a to FIXED(6); result is a
! FIXED(3) value
pTAL privileged procedure No
Can be executed only by privileged procedures No
Sets condition code No
Sets $CARRY No
Sets $OVERFLOW No
Example 15-81. $SGBADDR_TO_EXTADDR Routine
STRING .SG s;
INT .EXT i;
INT j;
@i := $SGBADDR_TO_EXTADDR(@s[j]); !??: OK if @s[j] is at an
! even-byte offset;
! otherwise, @i is undefined.
expression
( )
VST603.vsd
$SGBADDR_TO_EXTADDR
expression
( )
VST604.vsd
$SGBADDR_TO_SGWADDR










