Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Сначала выполним прямой перевод.
Дополним число недостающими нулями слева
Дополним число недостающими нулями справа
Выполним прямой перевод из двоичной в шестнадцатиричную вот так:
0001.001110101111100000002 = 0001. 0011 1010 1111 1000 0000 = 0001(=1). 0011(=3) 1010(=A) 1111(=F) 1000(=8) 0000(=0) = 1.3AF8016
Ответ: 0001.001110101111100000002 = 1.3AF8016
Теперь выполним перевод через десятичную систему счисления.
Выполним перевод в десятичную систему счисления вот так:
0∙23+0∙22+0∙21+1∙20+0∙2-1+0∙2-2+1∙2-3+1∙2-4+1∙2-5+0∙2-6+1∙2-7+0∙2-8+1∙2-9+1∙2-10+1∙2-11+1∙2-12+1∙2-13+0∙2-14+0∙2-15+0∙2-16+0∙2-17+0∙2-18+0∙2-19+0∙2-20 = 0∙8+0∙4+0∙2+1∙1+0∙0.5+0∙0.25+1∙0.125+1∙0.0625+1∙0.03125+0∙0.015625+1∙0.0078125+0∙0.00390625+1∙0.001953125+1∙0.0009765625+1∙0.00048828125+1∙0.000244140625+1∙0.0001220703125+0∙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+0+1+0+0+0.125+0.0625+0.03125+0+0.0078125+0+0.001953125+0.0009765625+0.00048828125+0.000244140625+0.0001220703125+0+0+0+0+0+0+0 = 1.230346679687510
Получилось: 0001.001110101111100000002 =1.230346679687510
Переведем число 1.230346679687510 в шестнадцатиричное вот так:
Дробная часть числа находится умножением на основание новой системы счисления:
|
0. | 2303466796875*16 |
3 | .686*16 |
A | .97*16 |
F | .5*16 |
8 | .0*16 |
В результате преобразования получилось:
1.230346679687510 = 1.3AF816
Ответ: 0001.001110101111100000002 = 1.3AF816