Перевод чисел в различные системы счисления
Рассмотрим пример перевода числа 57.32 из восьмеричной в двоичную систему счисления в однобайтовое в беззнаковое
Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Выполним прямой перевод.
Выполним прямой перевод из восьмеричной в двоичную вот так:
Выполним перевод через десятичную систему счисления.
Выполним перевод в десятичную систему счисления вот так:
= 5∙8 + 7∙1 + 3∙0.125 + 2∙0.015625
= 40 + 7 + 0.375 + 0.03125
= 47.4062510
Получилось: 57.328 = 47.4062510
Переведем число 47.4062510 в двоичное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 47 | 2 | ||||||
| -46 | 23 | 2 | |||||
| 1 | -22 | 11 | 2 | ||||
| 1 | -10 | 5 | 2 | ||||
| 1 | -4 | 2 | 2 | ||||
| 1 | -2 | 1 | |||||
| 0 | |||||||
Направление взгляда | |||||||
Дробная часть числа находится умножением на основание новой системы счисления:
Направление взгляда | |
| 0. | 40625*2 |
| 0 | .8125*2 |
| 1 | .625*2 |
| 1 | .25*2 |
| 0 | .5*2 |
| 1 | .0*2 |
В результате преобразования получилось:
Вы указали что размер вашего числа 1 байт.
На данный момент отрицательные дробные числа не поддерживаются. Поэтому в дальнейшем переводе участвует только целая часть числа.
Дополним число недостающими нулями слева