B1
the condition code indicates the comparison result.
Comparison is right to left, taking into account the
sign and all digits of both operands. All signs and
digits are checked for validity. If the fields are un
equal in length, the shorter is extended with high
order zeros. A positive zero compares equal to a nega
tive zero. Neither operand is changed as a result of
the operation.
The first and second fields may overlap when their
low-order bytes coincide. It is possible, therefore, to
compare a number to itself.
Resulting Condition Code:
o Operands equal
1 First operand is low
2 First operand is high
3
Program Interruptions:
Operation (if decimal feature is not installed)
Addressing
Data
Programming Note
The
right to left; taking signs, zeros, and invalid characters
into account; and extending variable-length fields
when they are unequal in length.
78 11 12 1516
The product of the multiplier (the second operand)
and the multiplicand (the first operand) replaces the
multiplicand.
The multiplier size is limited to 15 digits and sign
and must be less than the multiplicand size. Length
code L2, larger than seven, or larger than or equal to
the length code
ception. The operation is suppressed and a program
interruption occurs.
of the number of digits in the operands, the multi
plicand must have high-order zero digits for at least
a field size that equals the multiplier field size; other-
wise, a data exception is recognized, and a program
interruption occurs. This definition of the multiplicand
field ensures that no product overflow can occur. The
maximum product size is 31 digits. At least one high
order digit of the product field is zero.
All operands and results are treated as signed in
tegers, right-aligned in their field. The sign of the
product is determined by the rules of algebra
both operands are zero.
The multiplier and product fields may overlap when
their low-order bytes coincide.
Condition Code: The code remains unchanged.
Program Inte1'ruptions:
Operation (if decimal feature is not installed)
Addressing
Protection
Specification
Data
Programming Note
When the multiplicand does not have the desired
number of leading zeros, multiplication may be pre
ceded by a
Divide
7 8 11 12 1516
The dividend (the first operand) is divided by the
divisor (the second operand) and replaced by the
quotient and remainder.
The quotient field is placed leftmost in the first op
erand field. The remainder field is placed rightmost in
the first operand field and has a size equal to the di
visor size. Together, the quotient and remainder oc
cupy the entire dividend field; therefore, the address
of the quotient field is the address of the first oper
and. The size of the quotient field in eight-bit bytes
is Ll -L2, and the length code for this field is one
less (Ll -L2 -1). When the divisor length code
is larger than seven (15 digits and sign) or larger
than or equal to the dividend length code, a specifi
cation exception is recognized. The operation is sup
pressed, and a program interruption occurs.
The dividend, divisor, quotient, and remainder are
all signed integers, right-aligned in their fields. The
sign of the quotient is determined by the rules of al
gebra from dividend and divisor signs. The sign of the
remainder has the same value as the dividend sign.
These rules are true even when quotient or remainder
is zero.
Decimal Arithmetic 37