Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Сначала выполним прямой перевод.
Дополним число недостающими нулями справа
Выполним прямой перевод из двоичной в шестнадцатиричную вот так:
00101000.00000111.100010000002 = 0010 1000. 0000 0111 .100 0100 0000 = 0010(=2) 1000(=8). 0000(=0) 0111(=7) .100(=4) 0100(=4) 0000(=0) = 28.0744016
Ответ: 00101000.00000111.100010000002 = 28.0744016
Теперь выполним перевод через десятичную систему счисления.
Выполним перевод в десятичную систему счисления вот так:
0∙27+0∙26+1∙25+0∙24+1∙23+0∙22+0∙21+0∙20+0∙2-1+0∙2-2+0∙2-3+0∙2-4+0∙2-5+1∙2-6+1∙2-7+1∙2-8+.∙2-9+1∙2-10+0∙2-11+0∙2-12+0∙2-13+1∙2-14+0∙2-15+0∙2-16+0∙2-17+0∙2-18+0∙2-19+0∙2-20 = 0∙128+0∙64+1∙32+0∙16+1∙8+0∙4+0∙2+0∙1+0∙0.5+0∙0.25+0∙0.125+0∙0.0625+0∙0.03125+1∙0.015625+1∙0.0078125+1∙0.00390625+.∙0.001953125+1∙0.0009765625+0∙0.00048828125+0∙0.000244140625+0∙0.0001220703125+1∙6.103515625E-5+0∙3.0517578125E-5+0∙1.52587890625E-5+0∙7.62939453125E-6+0∙3.814697265625E-6+0∙1.9073486328125E-6+0∙9.5367431640625E-7 = 0+0+32+0+8+0+0+0+0+0+0+0+0+0.015625+0.0078125+0.00390625+0+0.0009765625+0+0+0+6.103515625E-5+0+0+0+0+0+0 = 40.0283813476562510
Получилось: 00101000.00000111.100010000002 =40.0283813476562510
Переведем число 40.0283813476562510 в шестнадцатиричное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 40 | 16 | |
| -32 | 2 | |
| 8 | | |
 |
Дробная часть числа находится умножением на основание новой системы счисления:
 |
| 0. | 02838134765625*16 |
| 0 | .4541*16 |
| 7 | .266*16 |
| 4 | .25*16 |
| 4 | .0*16 |
В результате преобразования получилось:
40.0283813476562510 = 28.074416
Ответ: 00101000.00000111.100010000002 = 28.074416