Op Code (Hex) | Operand 1 | Operand 2 | Operand 3 | |
---|---|---|---|---|
0033 | Offset difference | Minuend pointer | Subtrahend pointer |
Operand 2: Space pointer.
Operand 3: Space pointer.
The offset portion of the space address contained in the operand 3 space pointer is subtracted from the offset of the space address contained in the space pointer specified by operand 2; the result is stored in the 4 byte binary scalar identified by operand 1.
The offsets for operands 2 and 3 are strictly unsigned values, while the operand 1 result can have a positive or negative value.
No check is made to determine that the space pointers point to the same space. In addition, the existence of the pointers is not checked except for pointers used as a base for the operands. When the space pointers point to different spaces, or exactly one of the pointer operands is subject to the pointer does not exist condition, the resulting value is undefined, but no exception is signaled for those conditions. However, if both operand 2 and operand 3 are subject to the pointer does not exist condition, the result value is zero.
If either operand 2 or operand 3 contains a pointer which is not a space pointer, a pointer type invalid (hex 2402) exception is signaled.
A size (hex 0C0A) exception can be signalled when the program attribute to signal size exceptions is in effect, under the following conditions:
The object destroyed (hex 2202) exception, parameter reference violation (hex 0801) exception, and pointer does not exist (hex 2401) exception are not signaled when operand 2 and operand 3 are space pointer machine objects. This occurs when operand 2 or operand 3 contains an internal machine value that indicates one of these error conditions exists. Even if the corresponding exception is not signaled, the operand 1 value is undefined in those cases.
06 Addressing
08 Argument/Parameter
10 Damage Encountered
0C Computation
1C Machine-Dependent
20 Machine Support
22 Object Access
24 Pointer Specification
2E Resource Control Limit
36 Space Management
44 Protection Violation