Programming Notes
1. The definition for data exception
permits termination when digit
codes are invalid but no sign code
is invalid. On some models, valid
digit codes may be placed in the
result field even if the original
contents were invalid. Thus it is
possible, after a data exception
occurs, for all fields to contain
valid codes.
2. An invalid sign code for the right­
most byte of the result field is
not generated when the operation is
terminated. However, an invalid
second-operand sign code is not
necessarily preserved when it is
located in the numeric portion of
the result field.
3. When, after a program interruption
for data exception, a sign code is
found to be invalid, the operation
has been suppressed if both of the
following conditions are met:
a. The invalid sign of the source
field is not located in the
numeric portion of the result
field.
b. The invalid sign code is in a
position specified by the
instruction to be checked for a
valid sign. (This condition
excludes the first operand of ZERO AND ADD, both operands of
EDIT, and EDIT AND MARK.)
Decimal-Divide Exception
A decimal-divide exception is recognized
when in decimal division the divisor is
zero or the quotient exceeds the speci­
fied data-field size.
The decimal-divide exception is indi­
cated only if the sign codes of both the
divisor and dividend are valid and only if the digit or digits uscd in estab­
lishing the exception are valid.
The operation is suppressed. The instruction-length code is 2 or 3.
The decimal-divide exception is indi­
cated by a program-interruption code of OOOB hex (or OOBB hex if a concurrent PER event is indicated). Decimal-Overflow Exception
A decimal-overflow exception is recog­
nized when one or more nonzero digits
are lost because the destination field
in a decimal operation is too short to
contain the result.
The interruption may be disallowed by
the decimal-overflow mask (PSW bit 21 in
the EC mode and PSW bit 37 in the BC mode).
The operation is completed. The result
1S obtained by ignoring the overflow
digits, and condition code 3 is set.
The instruction-length code is 2 or 3.
The decimal-overflow exception is indi­
cated by a program-interruption code of OOOA hex (or 008A hex if a concurrent PER event is indicated).
Execute Exception
The execute exception is recognized when
the target instruction of EXECUTE is
another EXECUTE. The operation is suppressed.
The instruction-length code is 2.
The execute exception is indicated by a
program-interruption code of 0003 hex
(or 0083 hex if a concurrent PER event
is indicated).
Exponent-Overflow Exception
An exponent-overflow exception is recog­
nized when the result characteristic of
a floating-point operation exceeds 127 and the result fraction is not zero. The operation is completed. The frac­
tion is normalized, and the sign and
fraction of the result remain correct.
The result characteristic is made 128
smaller than the correct characteristic.
The instruction-length code is 1 or 2.
The exponent-overflow exception is indi­ cated by a program-interruption code of XXOC hex (or XX8C hex if a concurrent PER event is indicated), where XX is the
exception-extension code.
Exponent-Underflow Exception
An exponent-underflow exception is re­
cognized when the result characteristic
of a floating-point operation is less than zero and the result fraction is not
zero. For an extended-format floating­
point result, exponent underflow is Chapter 6. Interruptions 6-19
indicated only when the high-order char­
acteristic underflows.
The interruption may be disallowed by
the exponent-underflow mask (PSW bit 22
in the EC mode and PSW bit 38 in the BC mode).
The operation is completed. The
exponent-underflow mask also affects the
result of the operation. When the mask
bit is zero, the sign, characteristic,
and fraction are set to zero, making the
result a true zero. When the mask bit
is one, the fraction is normalized, the
characteristic is made 128 larger than
the correct characteristic, and the sign
and fraction remain correct.
The instruction-length code is 1 or 2.
The exponent-underflow exception is in­
dicated by a program-interruption code
of XXOD hex (or XX8D hex if a concurrent PER event 1S indicated), where XX is the
exception-extension code.
EX-Translation Exception
An EX-translation exception is recog­
nized during PC-number translation in PROGRAM CALL when the entry-table entry
indicated by the entry-table-index part
of the PC number is beyond the length of
the entry table as designated by the
linkage-table entry.
The PC number is stored in bit positions
12-31 of the word at real location 144,
and the leftmost 12 bits of the word are
set to zeros.
The operation is nullified.
The instruction-length code is 2.
The EX-translation exception is indi­
cated by a program-interruption code of 0023 hex (or OOA3 hex if a concurrent PER event is indicated). Fixed-Point-Divide Exception
A fixed-point-divide exception is recog­ nized when in signed binary division the
divisor is zero or when the quotient in signed binary division or the result of CONVERT TO BINARY cannot be expressed as
a 32-bit signed binary integer.
In the case of division, the operation is suppressed. The execution of CONVERT TO BINARY is completed by ignoring the
leftmost bits that cannot be placed in the register.
The instruction-length code is 1 or 2. 6-20 System/370 Principles of Operation The fixed-point-divide exception is in­
dicated by a program-interruption code
of 0009 hex (or 0089 hex if a concurrent PER event is indicated). Fixed-Point-Overflow Exception
A fixed-point-overflow exception is re­
cognized when an overflow occurs during
signed binary arithmetic or signed
left-shift operations.
The interruption may be disallowed by
the fixed-poi nt-overflow mask (PSW bit 20 in the EC mode and PSW bit 36 in the BC mode).
The operation is completed. The result
is obtained by ignoring the overflow
information, and condition code 3 is
set.
The instruction-length code is 1 or 2.
The fixed-point-overflow exception is
indicated by a program-interruption code
of XX08 hex (or XX88 hex if a concurrent PER event is indicated), where xx is the
exception-extension code.
Floating-Point-Divide Exception
A floating-point-divide exception is
recognized when in floating-point divi­
sion the divisor has a zero fraction.
The operation is suppressed.
The instruction-length code is 1 or 2.
The floating-point-divide exception is
indicated by a program-interruption code
of XXOF hex (or XX8F hex if a concurrent PER event is indicated), where xx is the
exception-extension code.
LX-Translation Exception
An LX-translation exception is recog­ nized during PC-number translation in PROGRAM CALL when either:
1. The linkage-table entry indicated
by the linkage-table-index part of
the PC number is beyond the length
of the linkage table as designated
by control register 5.
2. Bit 0 of the linkage-table entry is not zero.
The PC number is stored in bit positions 12-31 of the word at real location 144,
and the leftmost 12 bits of the word are set to zeros.
Previous Page Next Page