ISO Pascal reference manual
ISO Pascal reference manual
ISO Pascal reference manual
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 6<br />
The form `x x x x' will be used to represent memory whose contents are not<br />
defined for the purposes of an illustration.<br />
6.2 Conformance<br />
The <strong>Pascal</strong> implementation conforms very closely to the code mechanisms<br />
defined in the Inter-Language Calling Standard. In particular the way in<br />
which parameters are passed is exactly in accordance with the standard, as<br />
far as Integers, Reals, Records and Booleans are concerned. Similarly,<br />
results (such as <strong>Pascal</strong> allows, e.g. not Records) are returned in the standard<br />
manner. Since <strong>Pascal</strong> does not have a String type, inter-facing with<br />
languages which do (and with Panos) typically involves a little work in<br />
mapping strings onto a corresponding <strong>Pascal</strong> structure, but will normally be<br />
quite straightforward (i.e. there is no fundamental obstacle to doing this).<br />
Further, returning Record results is very simply mapped onto updating a<br />
VAR parameter. Full details of these mechanisms will now be given.<br />
6.2.2 Types<br />
Here is a full description of how <strong>Pascal</strong> types are mapped onto the<br />
architecture of the 32000 series:<br />
Integer<br />
32-bit quantity, aligned on 4-byte boundary. A variable of type Integer may<br />
hold any 32-bit signed value, except that when code is compiled with checks<br />
for assignment included (the default), the value 16_80808080 is reserved for<br />
the purpose of detecting use of a variable before it has been assigned to.<br />
Real<br />
64-bit double precision (32000 `-L' type), aligned on a 4-byte address<br />
boundary. See note below on the use of 32-bit reals. If assignment checks<br />
have been included in the compiled program then real variables are<br />
initialised with the reserved pattern 16_8080808080808080.<br />
32 <strong>Pascal</strong> Issue 1