Перевод чисел в различные системы счисления
Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Сначала выполним прямой перевод.
Выполним прямой перевод из шестнадцатиричной в двоичную вот так:
Теперь выполним перевод через десятичную систему счисления.
Выполним перевод в десятичную систему счисления вот так:
Знаковый бит в переводе не участвует!
Так как число знаковое и имеет знаковый бит, то результат будет иметь отрицательный знак
Получилось: 9A1.F216 =-417.945312510
Переведем число -417.945312510 в двоичное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 417 | 2 | |||||||||
| -416 | 208 | 2 | ||||||||
| 1 | -208 | 104 | 2 | |||||||
| 0 | -104 | 52 | 2 | |||||||
| 0 | -52 | 26 | 2 | |||||||
| 0 | -26 | 13 | 2 | |||||||
| 0 | -12 | 6 | 2 | |||||||
| 1 | -6 | 3 | 2 | |||||||
| 0 | -2 | 1 | ||||||||
| 1 | ||||||||||
![]() | ||||||||||
Дробная часть числа находится умножением на основание новой системы счисления:
![]() | |
| 0. | 9453125*2 |
| 1 | .89063*2 |
| 1 | .78125*2 |
| 1 | .5625*2 |
| 1 | .125*2 |
| 0 | .25*2 |
| 0 | .5*2 |
| 1 | .0*2 |
В результате преобразования получилось:
Мы обнаружили что Ваше число отрицательное. Для дальнейшего перевода из прямого кода в дополнительный укажите размер числа: (1 байт, 2 байта,4 байта,8 байт).

