No, quzah. You're falling into the same trap as the others arguing about machine representation. The OP wanted to know how to deal with the written binary number that has a fractional part. And yes, you could shift the period left or right (like dividing by 2 or multiplying by 2).

The fact that C compilers complain when you attempt a shift (<< or >>) on a floating point data type does not alter the fact that yes, one could shift the 32 or 64 bit value, but since it's a mixture of biased exponent and significand without most significant bit... it would most likely break the number. Actually it would most closely resemble a squaring or square-rooting operation.

1100110.11 is 102.75

110011.011 is 51.375 see? Yay, shifting the "decimal" works.

(My mistake, 0.11 is 0.75... I said 0.375 earlier.)