Can anyone explain to me how a floating point number is handled on a 64 bit architecture?

in this form:


|_|_________|_______________|
a b c



where
a is the sign bit
b is the exponent
and c is the mantissa


I'm just curious how exactly the assign the spacing whether it's 1, 31,32, or what.