guard digit, increases the precision of the final re- . suIt.
Number Representation
The fraction of a floating-point number is expressed
in hexadecimal digits. The radix point of the fraction
is assumed to be immediately to the left of the high
order fraction digit. The fraction is considered to be
multiplied by a power of 16. The characteristic por
tion, bits 1-7 of the floating-point formats, indicates
this power. The bits within the characteristic field
can represent numbers from0 through 127. To ac
commodate large and small magnitudes, the charac
teristic is formed by adding 64 to the actual expo
nent. The range of the exponent is thus -64 through
+63. This technique produces a characteristic in
excess-64 notation.
Both positive and negative quantities have a true
fraction, the sign being indicated by the sign bit. The
number is positive or negative, depending on wheth
er the sign bit is zero or one, respectively.
The range covered by the magnitude (M) of a
normalized floating-point number is:
In the short format:
16-
65 M (1-16-
6
') X 16
63
In the long format:
16-
65 M (1-16-
14
) X 16
63
In the extended format:
16-
65 M (1-16-
28
) X 16
63
In all formats, approximately:
5.4 x10-
79 M 7.2 X 10
75 A number with a zero characteristic, zero frac
tion, and plus sign is called a true zero. When an
extended result is made a true zero, both the high
order and low-order parts are made true zero.
A true zero may arise as the result of an arithme
tic operation because of the particular magnitude of
the operands. A result is forced to be true zero when
(1) an exponent underflow occurs and the exponent
underflow mask bit in thePSW is zero, (2) the result
fraction of an addition or subtraction operation is
zero and the significance mask bit in thePSW is
zero, or (3) the operand of HAL VB, one or both
operands of MULTIPLY, or the dividend in DIVIDE has a zero fraction.
When a program interruption due to exponent
underflow occurs, a true zero fraction is not forced;
instead, the fraction and sign remain correct, and the
characteristic is 128 too large. When a program in
terruption due to the significance exception occurs,
theflaction remains zero, the sign is positive, and
the characteristic remains correct. The exponent
overflow and exponent-underflow exceptions do not
cause a program interruption when the result has a
zero fraction. When a divisor has a zero fraction,
division is omitted, and a program interruption for a
floating-point-divide exception occurs. In addition
and subtraction, an operand with a zero fraction or
characteristic participates as a normal number.
The sign of a sum, difference, product, or quo
tient with zero fraction is positive. The sign of a
zero fraction resulting from other operations is es
tablished by the rules of algebra from the operand
signs.
Normalization
A quantity can be represented with the greatest pre
cision by a floating-point number of given fraction
length when that number is normalized. A normal
ized floating-point number has a nonzero high-order
hexadecimal fraction digit. If one or more high-order
fraction digits are zero, the number is said to be un
normalized. The process of normalization consists ofI shifting the fraction left, one digit at a time, until high-order hexadecimal digit is nonzero and reducmg
the characteristic by the number of hexadecimal
digits shifted. For ex;tended results, the entire frac
tion participates in the normalization; therefore, the
low-order part mayor may not appear to be a nor
malized long number, depending on the value of the
fraction. A number with a zero fraction cannot be
normalized, and its characteristic therefore remains
unchanged when normalization is called for.
Normalization usually takes place when the inter
mediate arithmetic result is changed to the final re
sult. This function is called postnormalization. In
performing multiplication and division, the operands
are normalized before the arithmetic process. This
function is called prenormalization.
Floating-point operations may be performed with
or without normalization. Most operations are per
formed only with normalization. Addition and sub
traction with short or long operands may be speci
fied either way.
When an operation is performed without normali
zation, high-order zeros in the result fraction are not
eliminated. The result mayor may not be normal
ized, depending upon the original operands.
In both normalized and unnormalized operations,
the initial operands need not be in normalized form.
Also, intermediate fraction results are shifted right
when an overflow occurs, and the intermediate frac
tion result is truncated to the final result length after
the shifting, if any.
Programming Note
Since normalization applies to hexadecimal digits,
the three high-order bits of the fraction of a normal
ized number may be zero.
Floating-Point Instructions 159
Number Representation
The fraction of a floating-point number is expressed
in hexadecimal digits. The radix point of the fraction
is assumed to be immediately to the left of the high
order fraction digit. The fraction is considered to be
multiplied by a power of 16. The characteristic por
tion, bits 1-7 of the floating-point formats, indicates
this power. The bits within the characteristic field
can represent numbers from
commodate large and small magnitudes, the charac
teristic is formed by adding 64 to the actual expo
nent. The range of the exponent is thus -64 through
+63. This technique produces a characteristic in
excess-64 notation.
Both positive and negative quantities have a true
fraction, the sign being indicated by the sign bit. The
number is positive or negative, depending on wheth
er the sign bit is zero or one, respectively.
The range covered by the magnitude (M) of a
normalized floating-point number is:
In the short format:
16-
65
6
')
63
In the long format:
16-
65
14
) X 16
63
In the extended format:
16-
65
28
) X 16
63
In all formats, approximately:
5.4 x
79
75
tion, and plus sign is called a true zero. When an
extended result is made a true zero, both the high
order and low-order parts are made true zero.
A true zero may arise as the result of an arithme
tic operation because of the particular magnitude of
the operands. A result is forced to be true zero when
(1) an exponent underflow occurs and the exponent
underflow mask bit in the
fraction of an addition or subtraction operation is
zero and the significance mask bit in the
zero, or (3) the operand of HAL VB, one or both
operands of MULTIPLY, or the dividend in DI
When a program interruption due to exponent
underflow occurs, a true zero fraction is not forced;
instead, the fraction and sign remain correct, and the
characteristic is 128 too large. When a program in
terruption due to the significance exception occurs,
the
the characteristic remains correct. The exponent
overflow and exponent-underflow exceptions do not
cause a program interruption when the result has a
zero fraction. When a divisor has a zero fraction,
division is omitted, and a program interruption for a
floating-point-divide exception occurs. In addition
and subtraction, an operand with a zero fraction or
characteristic participates as a normal number.
The sign of a sum, difference, product, or quo
tient with zero fraction is positive. The sign of a
zero fraction resulting from other operations is es
tablished by the rules of algebra from the operand
signs.
Normalization
A quantity can be represented with the greatest pre
cision by a floating-point number of given fraction
length when that number is normalized. A normal
ized floating-point number has a nonzero high-order
hexadecimal fraction digit. If one or more high-order
fraction digits are zero, the number is said to be un
normalized. The process of normalization consists of
the characteristic by the number of hexadecimal
digits shifted. For ex;tended results, the entire frac
tion participates in the normalization; therefore, the
low-order part mayor may not appear to be a nor
malized long number, depending on the value of the
fraction. A number with a zero fraction cannot be
normalized, and its characteristic therefore remains
unchanged when normalization is called for.
Normalization usually takes place when the inter
mediate arithmetic result is changed to the final re
sult. This function is called postnormalization. In
performing multiplication and division, the operands
are normalized before the arithmetic process. This
function is called prenormalization.
Floating-point operations may be performed with
or without normalization. Most operations are per
formed only with normalization. Addition and sub
traction with short or long operands may be speci
fied either way.
When an operation is performed without normali
zation, high-order zeros in the result fraction are not
eliminated. The result mayor may not be normal
ized, depending upon the original operands.
In both normalized and unnormalized operations,
the initial operands need not be in normalized form.
Also, intermediate fraction results are shifted right
when an overflow occurs, and the intermediate frac
tion result is truncated to the final result length after
the shifting, if any.
Programming Note
Since normalization applies to hexadecimal digits,
the three high-order bits of the fraction of a normal
ized number may be zero.
Floating-Point Instructions 159