Вам нужны первые 24 бита 2 * 10 ^ 33. Первый бит всегда равен 1, а оставшиеся 23 бита образуют последние 23 бита числа с плавающей точкой одинарной точности IEEE-754.
Теперь, 2 * 10 ^ 33 имеет 110 двоичных цифр, поэтому он слишком велик для точного расчета с большинством инструментов (калькуляторы или языки программирования). Мы можем немного упростить задачу, отметив, что 2 * 10 ^ 33 = 2 * (2 * 5) ^ 33 = 2 ^ 34 * 5 ^ 33, поэтому первые 24 бита нашего числа такие же, как у 5 ^ 33, который имеет только 76 бит.
Мы можем дополнительно написать:
5^33 = (2^7 - 3)^11
= 2^77 - 11*3*2^70 + 55*9*2^63 - 165*27*2^56 + 330*81*2^49
- 462*243*2^42 + 462*729*2^35 - 330*2187*2^27 + ...
= 2^53 * (2^24 - 33*2^17 + 495*2^10 - 4455*2^3 + 26730/2^4
- 112266/2^11 + 336798/2^18 - 721710/2^25 + ...)
= 2^53 * (16777216 - 4325376 + 506880 - 35640 + 1670.625
- 54.817... + 1.284... - 0.0215...)
= 2^53 * 12924697.071
= 2^53 * 110001010011011100011001b
где мы округлили в последнем шаге. Таким образом, сохраненная часть мантиссы - 10001010011011100011001. Вместе с информацией, которая у вас уже есть, результат:
0 11101101 10001010011011100011001
или в шестнадцатеричном формате:
76C53719