Short Floating-Point Number 018 31 Long Floating-Point Number r"1 ..... s==' =C=h=a=r=a=c=t=e=-r:_i=s=t=i=C= .... I ..... -_-_ -_1=4=-=0=i=9=; o==n=== o 1 8
Extended Floating-Point Number High-Order Part 63 High-Order Leftmost 14 Characteristic of 28-0igit Fraction o 1 8 63 Low-Order Part Low-Order Rightmost 14 Digits Characteristic of 28-Digit Fraction 64 72 127
In all formats, the first bit (bit 0) is
the sign bit (S). The next seven bits
are the characteristic. In the short
and long formats, the remalnlng bits
constitute the fraction, which consists
of six or 14 hexadecimal digits, respec­
tively.
A short floating-point number occupies
only the leftmost 32 bit positions of a
floating-point register. The rightmost 32 bit positions of the register are
ignored when used as an operand in the
short format and remain unchanged when a
short result is placed in the register.
An extended floating-point number has a
28-digit fraction and consists of two
long floating-point numbers which are
called the high-order and low-order
parts. The high-order part may be any
long floating-point number. The frac­
tion of the high-order part contains the
leftmost 14 hexadecimal digits of the
28-digit fraction. The characteristic
and sign of the high-order part are the
characteristic and sign of the extended
floating-point number. If the high­
order part is normalized, the extended
number is considered normalized. The
fraction of the low-order part contains
the rightmost 14 digits of the 28-digit
fraction. The sign and characteristic
of the low-order part of an extended
operand are ignored.
When a result in the extended format is
placed in a register pair, the sign of
the low-order part is made the same as
that of the high-order part, and, unless
the result is a true zero, the low-order
characteristic is made 14 less than the
high-order characteristic. When the
subtraction of 14 would cause the low­
order characteristic to become less than
zero, the characteristic is made 128
greater than its correct value. Expo­
nent underflow is indicated only when
the high-order characteristic under­
flows.
When an extended result is made a true
zero, both the high-order and low-order
parts are made a true zero.
The range' covered by the magnitude (M)
of a normalized floating-point number
depends on the format.
In the short format:
16-
65 S M S (1 -16-
6
) x 16
63
In the long format: 16-
65
S M S (1 -16-
14
) x 16
63
In the extended format:
16-
65 S M S (1 -16-
28
) x 16
63
In all formats, approximately:
5.4 X 10-
79
S M S 7.2 X 10
75
Although the final result of a
floating-point operation has six hexade­
cimal fraction digits in the short
format, 14 fraction digits in the long
format, and 28 fraction digits in the
extended format, intermediate results
have one additional hexadecimal digit on
the right. This digit is called the
guard digit. The guard digit may
increase the precision of the final
result because it participates in addi­
tion, subtraction, and comparison
operations and in the left shift that
occurs during normalization.
The entire set of floating-point oper­
ations is available for both short and
long operands. The instructions gener­
ate a result that has the same format as
the operands, except that for MULTIPLY, a long product is produced from a short
multiplier and multiplicand. Floating­
point operations in the extended format
are available only for normalized addi­
tion, subtraction, and mUltiplication. MULTIPLY can also generate an extended
product from a long multiplier and
multiplicand. LOAD ROUNDED provides for
rounding from extended to long format or
from long to short format.
Programming Notes
1. A long floating-point number can be
converted to the extended format by
appending any long floating-point
number having a zero fraction, Chapter 9. Floating-Point Instructions 9-3
including a true zero. Conversion from the extended to the long
format can be accomplished by trun­
cation or by means of the LOAD ROUNDED instruction.
2. In the absence of an exponent over­
flow or exponent underflow, the
long floating-point number consti­
tuting the low-order part of an
extended result correctly expresses
the value of the low-order part of
the extended result when the char­
acteristic of the high-order part
is 14 or higher. This applies also
when the result is a true zero.
When the high-order characteristic
is less than 14 but the number is
not a true zero, the low-order
part, when considered as a long
floating-point number, does not
express the correct characteristic
value.
3. The entire fraction of an extended
result participates in normaliza­
tion. The low-order part alone may
or may not appear to be a normal­
ized long floating-point number,
depending on whether the 15th digit
of the normalized 28-digit fraction
is nonzero or zero.
9-4 System/370 Principles of Operation INSTRUCTIONS The floating-point instructions and
their mnemonics, formats, and operation
codes are listed in the figure "Summary
of Floating-Point Instructions." The
figure also indicates when the condition
code is set and the exceptional condi­
tions in operand designations, data, or
results that cause a program inter­
ruption.
Mnemonics for the floating-point
instructions have an R as the last
letter when the instruction is in the RR
format. For instructions where all
operands are the same length, certain
letters are used to represent operand­
format length and normalization, as
follows:
E Short normalized
U Short unnormalized
D Long normalized W Long unnormalized
X Extended normalized
Note: In the detailed descriptions of
the individual instructions, the mnemon­
ic and the symbolic operand designation
for the assembler language are shown
with each instruction. For a register­
to-register operation using LOAD (short), for example, lER is the mnemon­
ic and Rt,R
2 the operand designation.
Previous Page Next Page