Download Print this page

Data Exception; Decimal-Divide Exception; Decimal-Overflow Exception; Execute Exception - IBM 4300 Manual

Processors principles of operation for ecps: vse mode
Hide thumbs Also See for 4300:

Advertisement

(ILC) is 1,2, or 3, indicating the multiple of 2 by
which the instruction address has been
incremented. It is unpredictable whether the ILC
is 1,2, or 3.
In all cases of addressing exceptions not
associated with instruction fetching, the ILC is 1,
2, or 3, designating the length of the instruction
that caused the reference. When an addressing
exception is associated with fetching the target of
EXECUTE, the ILC is 2.
Data Exception
A data exception is recognized when:
1. The sign or digit codes of operands in the
decimal instructions (described in Chapter 8,
"Decimal Instructions") or in CONVERT TO
BIN AR Yare invalid.
2. The operand fields in ADD DECIMAL,
COMPARE DECIMAL, DIVIDE DECIMAL,
MUL TIPL Y DECIMAL, and SUBTRACT
DECIMAL overlap in a way other than with
coincident rightmost bytes; or operand fields in
ZERO AND ADD overlap, and the rightmost
byte of the second operand is to the right of
the rightmost byte of the first operand.
3. The multiplicand in MULTIPLY DECIMAL
has an insufficient number of high-order zeros.
For all instructions other than EDIT and EDIT
AND MARK, the action taken for a data exception
depends on whether a sign code is invalid. The
operation is suppressed when a sign code is invalid,
regardless of whether any other condition causing
the exception exists; when no sign code is invalid,
the operation is terminated. When the operation is
terminated, the contents of the sign position in the
rightmost byte of the result field either remain
unchanged or are set to the preferred sign code; the
contents of the remainder of the result field are
unpredictable.
In the case of EDIT and EDIT AND MARK, an
invalid sign code is not recognized; the operation is
terminated on a data exception for an invalid digit
code.
The instruction-length code is 2 or 3.
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 location
even if the original contents were invalid. Thus
it is possible, after getting a data exception, for
all fields to appear valid.
2. When, on a program interruption for data
exception, the program finds that a sign code is
invalid, the operation has been suppressed if
the following two conditions are met:
a.
The invalid sign of the source field is not
located in the numeric portion of the result
field.
b. The sign code appears in a position
specified by the instruction to be checked
for valid sign. (This condition excludes the
first operand of ZERO AND ADD and
both operands of EDIT and EDIT AND
MARK.)
An invalid sign code for the rightmost 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 appears in the numeric
portion of the result field.
Decimal-Divide Exception
A decimal-divide exception is recognized when in
decimal division the divisor is zero or the quotient
exceeds the specified data-field size.
The decimal-divide exception is indicated only if
the sign codes of both the divisor and dividend are
valid and only if the digit or digits used in
establishing the exception are valid.
The operation is suppressed.
The instruction-length code is 2 or 3.
Decimal-Overflow Exception
A decimal-overflow exception is recognized when
one or more significant high-order digits are lost
because the destination field in a decimal operation
is too short to contain the result.
The interruption may be disallowed by PSW bit
21 in the EC mode and by PSW bit 37 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 2 or 3.
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.
Exponent-Overflow Exception
An exponent-overflow exception is recognized
when the result characteristic in floating-puint
Chapter 6. Interruptions
6-11

Advertisement

loading