Перевод чисел в различные системы счисления
Рассмотрим пример перевода числа C400B.000D1 из шестнадцатиричной в восьмеричную систему счисления
Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Выполним перевод в десятичную систему счисления вот так:
= 12∙65536 + 4∙4096 + 0∙256 + 0∙16 + 11∙1 + 0∙0.0625 + 0∙0.00390625 + 0∙0.000244140625 + 13∙1.52587890625E-5 + 1∙9.5367431640625E-7
= 786432 + 16384 + 0 + 0 + 11 + 0 + 0 + 0 + 0.0001983642578125 + 9.5367431640625E-7
= 802827.0001993179321289110
Получилось: C400B.000D116 = 802827.0001993179321289110
Переведем число 802827.0001993179321289110 в восьмеричное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 802827 | 8 | |||||||
| -802824 | 100353 | 8 | ||||||
| 3 | -100352 | 12544 | 8 | |||||
| 1 | -12544 | 1568 | 8 | |||||
| 0 | -1568 | 196 | 8 | |||||
| 0 | -192 | 24 | 8 | |||||
| 4 | -24 | 3 | ||||||
| 0 | ||||||||
Направление взгляда | ||||||||
Дробная часть числа находится умножением на основание новой системы счисления:
Направление взгляда | |
| 0. | 00019931793212891*8 |
| 0 | .001595*8 |
| 0 | .01276*8 |
| 0 | .1021*8 |
| 0 | .8164*8 |
| 6 | .531*8 |
| 4 | .25*8 |
| 2 | .0*8 |
| 6 | .0*8 |
В результате преобразования получилось:
Выполним прямой перевод из шестнадцатиричной в двоичную вот так:
Дополним число недостающими нулями слева
Дополним число недостающими нулями справа
Выполним прямой перевод из двоичной в восмеричную вот так:
= 011 000 100 000 000 001 011. 000 000 000 000 110 100 010
= 011(=3) 000(=0) 100(=4) 000(=0) 000(=0) 001(=1) 011(=3). 000(=0) 000(=0) 000(=0) 000(=0) 110(=6) 100(=4) 010(=2)
= 3413.00006428