0
$\begingroup$

Consider the floating-point representation

31-24 : Exponent
23-0  : Mantissa

The exponent is in 2's complement representation and mantissa is in the sign magnitude representation. the range of the magnitude of the normalized numbers in this represntaion is

$(a)\ 0\ to \ 1$

$(b)\ 0.5\ to\ 1$

$(c)\ 2^{-23}\ to \ 0.5$

$(d)\ 0.5\ to \ (1-2^{-23})$

My approach: as the normalized number in floating point representation has as implicit 1.

Hence smallest mantissa would be

$1.0000\cdots [24\ 0's]=1$

Largest mantissa would be

$1.1111\cdots [24\ 1's]=1+(1-2^{-24})\approx2$

So my ans coming as 1 to 2, Which is not in the option. What mistake I'm doing..

$\endgroup$

1 Answer 1

0
$\begingroup$

First, this is not the way standard IEEE P754 single precision floating point numbers are represented :

  • Exponent is not two's complement, there is instead an offset, for IEEE normalised : F=2^(Exponent - 127) * 1.Mantissa * Sign
  • Normalised numbers have an exponent different from 00 (being denormals) and FF (for infinites, NaN)

If this peculiar format has no implicit 1, mantissa should be between 0.10[..]0000 and 0.11[..]1111 : Answer (D) or between 1.0000 and 1.11111, which is your proposal.

(IIRC, Intel double extended x87 80bits format does not have the implicit 1 and works as you describe. It is not striclty IEEE compliant, the 8087 being older than the standard.)

$\endgroup$
2
  • $\begingroup$ As given in the question numbers have to be normalized .Hence we are assuming an implicit 1. And one more thing all 0's in mantissa and exponent represents a 0 number and all 1's in mantissa and exponent represents an infinity. So I think smallest manitissa should be $1.0000...01=1+2^{-23}$ and largest possible mantissa should be $1.1111...10=1+(1-2^{-23})$. But still not in option. $\endgroup$
    – Atinesh
    Jan 28, 2015 at 11:13
  • $\begingroup$ This is tricky because the exponent is not the normal IEEE one. If the exponent is really in two's complement form, zero should be something like 2^(-128) * 0.00000, which is not written as the all zero pattern. The difference between 0.1000 to 0.1111 and 1.0000 to 1.11111 is just how much offset you put in the exponent. If you adopt the IEEE format (which is the only one that really matters), you are right about the range of the mantissa for normalised numbers : 1.0 to 2-epsilon $\endgroup$
    – TEMLIB
    Jan 28, 2015 at 21:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.