Перевод -54227.113 из десятичной в двоичную систему счисления
Калькулятор для перевода числа из одной системы счисления в любую другую.
Поддерживаются отрицательные и дробные числа (числа с запятой). Если возможны несколько способов перевода, то калькулятор покажет их все.
Просто введите ваше число, укажите текущую и необходимую систему счисления, результатом расчета будет детальное пошаговое решение с ответом.
Поддерживаются отрицательные и дробные числа (числа с запятой). Если возможны несколько способов перевода, то калькулятор покажет их все.
Просто введите ваше число, укажите текущую и необходимую систему счисления, результатом расчета будет детальное пошаговое решение с ответом.
Переведем число 54227.11310 в двоичное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 54227 | 2 | ||||||||||||||||
| -54226 | 27113 | 2 | |||||||||||||||
| 1 | -27112 | 13556 | 2 | ||||||||||||||
| 1 | -13556 | 6778 | 2 | ||||||||||||||
| 0 | -6778 | 3389 | 2 | ||||||||||||||
| 0 | -3388 | 1694 | 2 | ||||||||||||||
| 1 | -1694 | 847 | 2 | ||||||||||||||
| 0 | -846 | 423 | 2 | ||||||||||||||
| 1 | -422 | 211 | 2 | ||||||||||||||
| 1 | -210 | 105 | 2 | ||||||||||||||
| 1 | -104 | 52 | 2 | ||||||||||||||
| 1 | -52 | 26 | 2 | ||||||||||||||
| 0 | -26 | 13 | 2 | ||||||||||||||
| 0 | -12 | 6 | 2 | ||||||||||||||
| 1 | -6 | 3 | 2 | ||||||||||||||
| 0 | -2 | 1 | |||||||||||||||
| 1 | |||||||||||||||||
![]() | |||||||||||||||||
Дробная часть числа находится умножением на основание новой системы счисления:
![]() | |
| 0. | 113*2 |
| 0 | .226*2 |
| 0 | .452*2 |
| 0 | .904*2 |
| 1 | .808*2 |
| 1 | .616*2 |
| 1 | .232*2 |
| 0 | .464*2 |
| 0 | .928*2 |
| 1 | .856*2 |
| 1 | .712*2 |
В результате преобразования получилось:
54227.11310 = 1101001111010011.00011100112
Вы указали что размер вашего числа 4 байт.
На данный момент отрицательные дробные числа не поддерживаются. Поэтому в дальнейшем переводе участвует только целая часть числа.
Дополним число знаковым битом вот так:
11010011110100112 = 100000000000000011010011110100112
Так-как введенное Вами число отрицательное то необходимо перевести его из прямого кода в дополнительный.
Для этого сначала выполним преобразование из прямого кода в обратный инвертированием всех битов кроме знакового, затем получим прямой код добавлением 1 бита.
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | прямой код |
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | обратный код |
| + | 1 | +1 бит | ||||||||||||||||||||||||||||||
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | дополнительный код |
Ответ: -54227.11310 = 111111111111111100101100001011012 (4 байт)

