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