HP 3000 Manuals

Packed Variables [ HP Pascal/iX Programmer's Guide ] MPE/iX 5.0 Documentation


HP Pascal/iX Programmer's Guide

Packed Variables 

A packed variable is the element of a packed array or the field of a
packed record.

Table 5-2  shows how the HP Pascal packing algorithm allocates and
aligns packed variables of each HP Pascal type.  The variable types are
in alphabetical order.  The sections that Table 5-2  references are in
this chapter.

          Table 5-2.  Allocation and Alignment of Packed Variables 
                      (HP Pascal Packing Algorithm) 
-------------------------------------------------------------------------------
|                     |                           |                           |
|    Variable Type    |        Allocation         |         Alignment         |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Anyptr              |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                                                       |
| Array               | See "Arrays"  for information on entire array      |
|                     | and "Packed Arrays"  for information on            |
|                     | elements.                                             |
|                     |                                                       |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Bit16               |          2 bytes          |          2-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Bit32               |          4 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Bit52               |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Boolean             |           1 bit           |            Bit            |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Char                |          1 byte           |   Byte in array, bit in   |
|                     |                           |          record           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                                                       |
| Enumeration         | See "Enumerations and Subranges"                   |
|                     |                                                       |
-------------------------------------------------------------------------------
|                     |                           |                           |
| File                |        See "Files"        |          8-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Function            |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Globalanyptr        |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Integer             |          4 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Localanyptr         |          4 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Longint             |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Longreal            |          8 bytes          |          8-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Pointer             |          4 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Procedure           |          8 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Real                |          4 bytes          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------

          Table 5-2.  Allocation and Alignment of Packed Variables 
                      (HP Pascal Packing Algorithm) (cont.) 
-------------------------------------------------------------------------------
|                     |                           |                           |
|    Variable Type    |        Allocation         |         Alignment         |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                                                       |
| Record              | See "Records"  for information on entire record    |
|                     | and "Packed Records"  for information on fields.   |
|                     |                                                       |
-------------------------------------------------------------------------------
|                     |                                                       |
| Set                 | See "Sets"                                         |
|                     |                                                       |
-------------------------------------------------------------------------------
|                     |                           |                           |
| Shortint            |          2 bytes          |          2-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                           |                           |
| String              | See "Strings"          |          4-byte           |
|                     |                           |                           |
-------------------------------------------------------------------------------
|                     |                                                       |
| Subrange            | See "Enumerations and Subranges" .                 |
|                     |                                                       |
-------------------------------------------------------------------------------



MPE/iX 5.0 Documentation