The PACK procedure copies components of an unpacked array
variable to a packed array variable.
Syntax:
PACK( a,i,z )
The parameter 'a' is an unpacked array. The parameter 'i' is a
value to indicate the starting value of the index of 'a'. The
parameter 'z' is a packed array of the same component type as
'a'.
The number of components in parameter a must be greater than or
equal to the number of components in 'z'. The PACK procedure
assigns the components of 'a', starting with a[i], to the array
'z', starting with z[lower bound], until all the components in
'z' are filled.
In general, when specifying 'i', keep in mind that the upper
bound of a (that is, n) must be greater than or equal to i + v -
u, where 'v' is the upper bound of 'z' and 'u' is the lower
bound of 'z'. That is, ORD(n) must be greater than or equal to
ORD(i) + ORD(v) - ORD(u).