I want to do right shift of 33 on a 32 variable and store the result into a float variable.
For suppose, the value is 1717986812. When we right shift by 33, we expect the value to be 0.2.
But when I do 1717986812 / (1<<33), I am getting some other huge integer value. I know that the result of 1<<33 can't be stored in a 32-bit value. So, I tried 17917986812 / (1UL<<33), but didn't get the correct results. I believe, something needs to be done regarding format conversions. But, couldn't figure it out.