Op Code (Hex) | Extender | Operand 1 | Operand 2 | Operand 3 | Operand [4-6] |
---|---|---|---|---|---|
SUBLC 1027 |
| Difference | Minuend | Subtrahend |
|
| |||||
SUBLCI 1827 | Indicator options | Difference | Minuend | Subtrahend | Indicator targets |
| |||||
SUBLCB 1C27 | Branch options | Difference | Minuend | Subtrahend | Branch targets |
Operand 2: Character scalar.
Operand 3: Character scalar.
Operand 4-6:
Op Code (Hex) | Extender | Operand 1 | Operand 2 | Operand [3-5] |
---|---|---|---|---|
SUBLCS 1127 |
| Difference/Minuend | Subtrahend |
|
| ||||
SUBLCIS 1927 | Indicator options | Difference/Minuend | Subtrahend | Indicator targets |
| ||||
SUBLCBS 1D27 | Branch options | Difference/Minuend | Subtrahend | Branch targets |
Operand 2: Character scalar.
Operand 3-5:
Description: The unsigned binary value of the subtrahend operand is subtracted from the unsigned binary value of the minuend operand, and the result is placed in the difference operand.
If the short form is not used and if neither source operand is an immediate value, then operands 2 and 3 must be the same length. The length can be a maximum of 256 bytes. In the case that the short form is not used and operand 2 or 3 is an immediate operand, it is treated as a character value and extended on the right with hex 00 bytes to match the length of the other operand. The subtraction operation is performed as though the ones complement of the second operand and a low-order 1-bit were added to the first operand.
The result value is then placed (left-adjusted) into the receiver operand with truncating or padding taking place on the right. The pad value used in this instruction is a byte value of hex 00.
If operands overlap but do not share all of the same bytes, results of operations performed on these operands are not predictable. If overlapped operands share all of the same bytes, the results are predictable when direct addressing is used. If indirect addressing is used (that is, based operands, parameters, strings with variable lengths, and arrays with variable subscripts), the results are not always predictable.
Resultant Conditions: The logical difference of the character scalar operands is:
06 Addressing
08 Argument/Parameter
20 Machine Support
1C Machine-Dependent
20 Machine Support
22 Object Access
24 Pointer Specification
2C Program Execution
2E Resource Control Limit
32 Scalar Specification
36 Space Management
44 Protection Violation