Op Code (Hex) | Operand 1 | Operand 2 | ||
---|---|---|---|---|
00A2 | Receiver | Source |
Operand 2: Space pointer.
Description: The offset value of the space pointer referenced by operand 2 is stored in the binary variable scalar defined by operand 1.
If operand 2 does not contain a space pointer, a pointer does not exist (hex 2401) exception is signaled.
If operand 2 points to teraspace, an unsupported space use (hex 0607) exception is signaled. This is necessary because no binary variable is large enough to contain an arbitrary teraspace offset. However, to retrieve a teraspace offset value within some specific allocation that is known to be smaller than the maximum value of a binary result variable, the SUBSPPFO instruction can be used. A pointer to the start of the teraspace allocation can be subtracted from a pointer to the current location within the allocation that is being referenced, for example.
If binary size (hex 0C0A) exceptions are to be signaled either because the program creation attribute indicated to do so or because a translator directive indicated to do so, they will be signalled under the following conditions:
06 Addressing
08 Argument/Parameter
0C Computation
10 Damage Encountered
1C Machine-Dependent
20 Machine Support
22 Object Access
24 Pointer Specification
2E Resource Control Limit
36 Space Management
44 Protection Violation