Fixed Point Representation
Before exploring how modern computers store real numbers, we start with the simplest scheme: fixed-point representation. Here the position of the radix point (the generalisation of the “decimal point” to any base) is predetermined and never changes.
Notation
A fixed-point number is written as:
| Symbol | Meaning |
|---|---|
| Base (radix) of the number system | |
| Digits, each satisfying | |
. | The radix point which separates the integer part (left) from the fractional part (right) |
| Sign of the number |
How to Evaluate a Fixed-Point Number
Each digit is multiplied by the base raised to its position’s power. Positions to the left of the radix point have non-negative powers; positions to the right have negative powers.
where is the power at position .
Example: Binary to Decimal
Convert to base 10.
| Position | . | |||
|---|---|---|---|---|
| Digit | 1 | 0 | . | 1 |
| Value | 2 | 0 | — |
So .
Example: Signed Decimal
The number evaluates as:
In base 10 this is simply the familiar signed decimal .
The Fundamental Limitation
Because the radix point is fixed, a single representation must commit to how many bits it allocates for the integer part versus the fractional part. This creates an unavoidable trade-off:
- A system with many integer digits can store large numbers, but cannot represent small fractions precisely.
- A system with many fractional digits provides fine resolution near zero, but overflows on large values.
Example: With 8 binary digits split 4 integer + 4 fractional (e.g. IIII.FFFF):
| Quantity | Representation | Exact? |
|---|---|---|
1111.1111 | ✓ | |
0000.0001 | ✓ | |
| — | ✗ overflow | |
| — | ✗ underflow |
This inflexibility motivates a much more powerful scheme where the radix point is free to “float” to any position.