Page 258 - ARM 64 Bit Assembly Language
P. 258
Non-integral mathematics 247
point through every operation. Each fixed point binary number has three important parameters
that describe it:
1. whether the number is signed or unsigned,
2. the position of the radix point in relation to the right side of the sign bit (for signed num-
bers) or the position of the radix point in relation to the most significant bit (for unsigned
numbers), and
3. the number of fractional bits stored.
Unsigned fixed point numbers will be specified as U(i,f ),where i is the position of the radix
point in relation to the left side of the most significant bit, and f is the number of bits stored
in the fractional part.
For example, U(10,6) indicates that there are six bits of precision in the fractional part of the
number, and the radix point is ten bits to the right of the most significant bit stored. The layout
for this number is shown graphically as:
where i is an integer bit and f is a fractional bit. Very small numbers with no integer part may
haveanegative i. For example, U(−8,16) specifies an unsigned number with no integer part,
eight leading zero bits which are not actually stored, and 16 bits of fractional precision. The
layout for this number is shown graphically as:
Likewise, signed fixed point numbers will be specified using the following notation: S(i,f ),
where i is the position of the radix point in relation to the right side of the sign bit, and f is
the number of fractional bits stored. As with integer two’s-complement notation, the sign bit
is always the leftmost bit stored. For example, S(9,6) indicates that there are six bits in the