Back to the 2019 paper

Module 1: Functional Block of computer and Data representaion

20197m

When do you say the floating point number is normalized? Explain how floating point representation of number is done. Represent the number (+46.25) as floating point binary number with 32 bits.

Worked SolutionAI Assisted

Normalized Floating Point & Representation of +46.25 in IEEE 754 32-bit (7 Marks)

1. When is Floating Point Number Normalized?
A floating point number N=±M×BEN = \pm M \times B^{E} (mantissa MM, base B=2B=2, exponent EE) is said to be normalized when the mantissa is adjusted so that the most significant digit is non-zero, i.e. 1≤M<21 \le M < 2 for binary. In binary this means form 1.xxxxx...×2E1.xxxxx... \times 2^{E} (leading 1 before binary point).

Purpose: (i) unique representation, (ii) maximum precision (no leading zeros wasted), (iii) efficient exponent use.
Example: 0.00101×250.00101 \times 2^{5} is unnormalized, normalized is 1.01×221.01 \times 2^{2}.

Denormalized/subnormal numbers have exponent zero and leading 0 to represent very small numbers near zero.

2. Floating Point Representation:
General format: Sign (S) + Exponent (E with bias) + Mantissa/Fraction (M).
IEEE 754 single precision (32 bits): | S (1) | Exponent (8) | Mantissa (23) |

  • S=0S=0 for +ve, 11 for -ve
  • Biased exponent: Ebiased=Etrue+127E_{biased}=E_{true}+127 (bias 127)
  • Mantissa stores fractional part after hidden 1 (normalized). Value =(−1)S×1.M×2(E−127)= (-1)^S \times 1.M \times 2^{(E-127)}

Double precision 64-bit uses 1-11-52 with bias 1023.

3. Represent +46.25 in 32-bit:

Step 1: Binary conversion
4610=101110246_{10}=101110_2 (32+8+4+232+8+4+2)
0.25=0.0120.25=0.01_2
So 46.25=101110.01246.25=101110.01_2

Step 2: Normalize
101110.01=1.0111001×25101110.01 = 1.0111001 \times 2^{5} (shift binary point 5 left)
True exponent E=5E=5, Mantissa M=0111001M=0111001

Step 3: Encode
S=0S=0 (+ve)
Ebiased=5+127=13210=100001002E_{biased}=5+127=132_{10}=10000100_2
Mantissa 23 bits: 0111001000000000000000001110010000000000000000 (pad zeros to 23 bits, after the hidden 1, we store 01110010111001)

Result:
0 | 10000100 | 01110010000000000000000

Grouping into Hex for verification:
0100 0010 0011 1001 0000 0000 0000 0000=0x423900000100\ 0010\ 0011\ 1001\ 0000\ 0000\ 0000\ 0000 = 0x42390000

Value =+1.0111001×25=+46.25= +1.0111001 \times 2^5 = +46.25. Normalized because leading 1 is implicit.

Similar questions

Student FinanceWeb Platform

Pocketly — Personal Finance for Students

Keep your hostel and college expenses under control. Track accounts, log spending in seconds, and stay within your monthly budget.