MAINSAIL System-Specific User's Guides, Chapter 13

previous   next   top   contents   index   framed top   this page unframed


13. HP PA-RISC-Dependent Information

This chapter describes HP PA-RISC-specific information.

13.1. Procedure Size

There is no well-defined limit for the size of a procedure on the HP PA-RISC. However, the compiler almost always successfully compiles procedures under 128K bytes in length. The compiler may handle procedures larger than 128K bytes, depending on the code. Procedures longer than approximately 128K bytes are not guaranteed to work, and such procedures may compile correctly on one machine and not on another.

13.2. Data Types

A storage unit on the HP PA-RISC is one byte (8 bits). MAINSAIL data types on the HP PA-RISC are represented as follows:

Data type Representation
BOOLEAN 1 long word (4 bytes)
INTEGER 1 long word (4 bytes)
LONG INTEGER 1 long word (4 bytes)
REAL IEEE single precision floating point (4 bytes)
LONG REAL IEEE double precision floating point (8 bytes)
BITS 1 long word (4 bytes)
LONG BITS 1 long word (4 bytes)
STRING 2 long words (8 bytes): first long word (low address) is length, second long word (high address) is CHARADR of first character
ADDRESS 1 long word (4 bytes)
CHARADR 1 long word (4 bytes)
POINTER 1 long word (4 bytes)

13.3. Miscellaneous Information

The representation for BOOLEAN FALSE is all bits clear, and the standard for BOOLEAN TRUE is low-order bit set, all other bits clear. However, in forms such as IF booleanVariable THEN ..., booleanVariable is considered to be TRUE if any bits are set.

STRING variables have both the length and CHARADR component equal to Zero for the STRING Zero (the empty STRING).


previous   next   top   contents   index   framed top   this page unframed

MAINSAIL System-Specific User's Guides, Chapter 13