📄 Paper 2 · 4.5 Data Representation
4.5.4c Floating-Point Representation
AQA 7517 · A-Level Computer Science · ~16 min read

Why Floating-Point?

Integer representations cannot store very large numbers or fractions precisely. Floating-point stores a wide range of real numbers by separating the value into two parts: a mantissa (significant digits) and an exponent (scale factor).

Structure of a Floating-Point Number

A floating-point number is written as: mantissa × 2^exponent (binary). The layout in memory divides the available bits between mantissa and exponent.

ComponentPurposeMore bits =
MantissaStores the significant digits (precision)Greater precision, fewer rounding errors
ExponentStores the power of 2 (scale)Greater range (larger/smaller numbers)

Normalised Form

To maximise precision, floating-point numbers are stored in normalised form. For a positive normalised number, the mantissa must start with 0.1 (binary point then leading 1). For a negative normalised number, it must start with 1.0.

This ensures the full precision of the mantissa is used — there are no leading wasted zeros.

Example: 8-bit mantissa + 4-bit exponent (12-bit total)

Mantissa (8 bits, two's comp)Exponent (4 bits, two's comp)Value
0.10110000011 (+3)0.1011 × 2³ = 1011.0 = 11₁₀
1.01000000010 (+2)Negative normalised; value = −6₁₀

Converting Decimal to Floating-Point Binary

Step 1: Convert to binary

Whole part by division; fractional part by repeated multiplication by 2, reading the integer parts downward.

Example: 0.375₁₀ → 0.011₂ (0.375×2=0.75→0; 0.75×2=1.5→1; 0.5×2=1.0→1)

Step 2: Normalise

Move binary point to get 0.1... (positive) or 1.0... (negative); count shifts to find exponent.

0.011₂ → shift left 1 → 0.11 × 2⁻¹ — but this needs another shift: 0.11 still starts 0.1 so it is already normalised.

Precision, Range, and Trade-offs

More mantissa bitsMore exponent bits
Higher precision (more significant figures)Larger range of values
Smaller range of valuesLower precision

With a fixed total number of bits, increasing mantissa size reduces exponent size and vice versa. This is the key design trade-off.

Rounding Errors and Representation Errors

Many decimal fractions cannot be represented exactly in binary floating-point (e.g. 0.1 in decimal has no exact binary representation). This causes rounding errors. Accumulated errors in long calculations can cause significant inaccuracies — important in scientific and financial computing.

Example: in Python, 0.1 + 0.2 ≠ 0.3 exactly due to floating-point imprecision.

Exam tip: Know the trade-off: more mantissa bits = more precision; more exponent bits = greater range. A normalised positive mantissa starts 0.1..., a normalised negative starts 1.0... Rounding errors occur because many decimals cannot be exactly represented in binary — always explain this in terms of the finite number of bits available. AQA often asks you to explain precision vs range and to recognise normalised form.
▶
Click through the slides at your own pace. Use arrow keys or click to advance.
Click slide or press arrow keys to navigate

Worksheet — 4.5.4c Floating-Point

8 questions · instantly marked · AQA 7517 standard

Q1State the two components of a floating-point binary number and explain the purpose of each.[4]
✅ Mark scheme
Mark scheme
Mantissa: stores the significant digits / precision of the number [1]; more mantissa bits = greater precision [1]; exponent: stores the power of 2 / determines the scale (range) of the number [1]; more exponent bits = greater range of values [1].
Q2A floating-point system uses 8 bits for the mantissa (two's complement) and 4 bits for the exponent (two's complement). Determine the value represented by: Mantissa = 0.1010000, Exponent = 0011.[3]
✅ Mark scheme
Mark scheme
Exponent = 0011 = +3 [1]; shift binary point 3 places right: 1010.000 [1]; value = 8+2 = 10₁₀ [1].
Q3Convert 0.625 into binary. Then normalise this as a floating-point number with mantissa and exponent (show working).[4]
✅ Mark scheme
Mark scheme
0.625 × 2 = 1.25 → bit 1; 0.25 × 2 = 0.5 → bit 0; 0.5 × 2 = 1.0 → bit 1; so 0.625₁₀ = 0.101₂ [1]; already normalised (0.1...) [1]; mantissa = 0.1010000, exponent = 0 (0000) [1]; or equivalently mantissa = 0.101, exponent = 0 — value = 0.101 × 2⁰ = 0.625 [1].
Q4Explain the trade-off between allocating more bits to the mantissa versus the exponent in a floating-point system.[4]
✅ Mark scheme
Mark scheme
More mantissa bits → greater precision (more significant figures stored) [1]; fewer exponent bits → smaller range of representable values [1]; more exponent bits → greater range of values (very large or very small) [1]; fewer mantissa bits → less precision / more rounding errors [1].
Q5What is a normalised floating-point number? State the condition for normalisation for both positive and negative mantissa values.[3]
✅ Mark scheme
Mark scheme
Normalised means the mantissa is in standard form to maximise precision — no leading redundant bits [1]; positive normalised mantissa begins with 0.1 (binary) [1]; negative normalised mantissa begins with 1.0 (binary) [1].
Q6Explain why the value 0.1 in decimal cannot be represented exactly in binary floating-point.[2]
✅ Mark scheme
Mark scheme
0.1 in binary produces an infinitely recurring pattern (0.000110011…₂) [1]; with a finite number of mantissa bits, the pattern must be truncated or rounded, introducing a small representation error [1].
Q7A program performs millions of floating-point additions. Describe a practical problem that can arise from rounding errors.[2]
✅ Mark scheme
Mark scheme
Small rounding errors accumulate over many operations [1]; the final result may be significantly wrong / different from the mathematically exact answer — particularly critical in scientific simulations, financial calculations, or navigation systems [1].
Q8A floating-point system has 12 bits total. Compare a 10-bit mantissa / 2-bit exponent system with a 6-bit mantissa / 6-bit exponent system. Which is more suitable for scientific calculations involving very large and very small numbers? Justify your answer.[3]
✅ Mark scheme
Mark scheme
6-bit / 6-bit system is more suitable for scientific calculations [1]; larger exponent (6 bits) allows much greater range of magnitudes — essential for very large and very small values like 10⁳⁰ or 10⁻³⁰ [1]; the reduction in mantissa precision is acceptable in many scientific contexts where range is more critical [1].
Topic Quiz
Question 1 of 15
You scored
out of 15
Card 1 of 8
Click to reveal definition
🎉
All cards reviewed!
TermDefinition
🎯

Mini Test — Floating-Point

10 questions · 10 minutes

← 4.5.4b Two's Complement
39 of 70 · AQA 7517
4.5.5 Information Encoding →