From Significand entry in Wikipedia :
When working in binary, the significand is characterized by its width
in binary digits (bits). Because the most significant bit is always 1
for a normalized number, this bit is not typically stored and is
called the “hidden bit”. Depending on the context, the hidden bit may
or may not be counted towards the width of the significand. For
example, the same IEEE 754 double precision format is commonly
described as having either a 53-bit significand, including the hidden
bit, or a 52-bit significand, not including the hidden bit. The notion
of a hidden bit only applies to binary representations. IEEE 754
defines the precision, p, to be the number of digits in the
significand, including any implicit leading bit (e.g. precision, p, of
double precision format is 53).
Why the most significant bit is always 1 for a normalized number ? Can some one please explain with an example ?
This is not entirely true, there is no leading 1 for special values like 0, NaN, Infinity and denormal values.
But yes, when it is a “sane” number then you can always rewrite it so that the mantissa starts with 1. Simply by incrementing the exponent. The equivalent exists in decimal as well, you can always write a number so that it starts with a single non-zero digit if the value is not zero:
With the distinction that this single digit will be 1 in binary. So it doesn’t have to be stored, in can be inferred. Which buys one extra bit of precision. Attractive enough to complicate the floating point processor logic to restore that 1 in calculations.