https://mathweb.ru/numberconverter.html?id=359567

Перевод 0101001101101001(Знаковое Дополнительный 2 байта) из двоичной в шестнадцатиричную систему счисления

Введите число:
Его система счисления:
Двоичная
Троичная
Восьмеричная
Десятичная
Шестнадцатиричная
Двоично-десятичная
Другая
Дополнительно
Знаковое
Прямой
Обратный
Дополнительный
Беззнаковое
1 байт
2 байта
4 байта
8 байт

Вы указали что ваше число находится в дополнительном коде. Для дальнейшего преобразования необходимо получить прямой код числа. Поэтому выполним преобразование из дополнительного кода в прямой.

Для этого сначала выполним преобразование из дополнительного кода в обратный вычитанием 1 бита, затем получим прямой код инвертированием всех битов кроме знакового.

110110010010111 дополнительный код
-1-1 бит
110110010010110обратный код
101001101101001прямой код
Получилось:101001101101001

Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.

Сначала выполним прямой перевод.

Дополним число недостающими нулями слева

Выполним прямой перевод из двоичной в шестнадцатиричную вот так:

01010011011010012 = 0101 0011 0110 1001 = 0101(=5) 0011(=3) 0110(=6) 1001(=9) = 536916

Ответ: 01010011011010012 = 536916

Теперь выполним перевод через десятичную систему счисления.

Выполним перевод в десятичную систему счисления вот так:

0∙215+1∙214+0∙213+1∙212+0∙211+0∙210+1∙29+1∙28+0∙27+1∙26+1∙25+0∙24+1∙23+0∙22+0∙21+1∙20 = 0∙32768+1∙16384+0∙8192+1∙4096+0∙2048+0∙1024+1∙512+1∙256+0∙128+1∙64+1∙32+0∙16+1∙8+0∙4+0∙2+1∙1 = 0+16384+0+4096+0+0+512+256+0+64+32+0+8+0+0+1 = 2135310

Получилось: 01010011011010012 =2135310

Переведем число 2135310 в шестнадцатиричное вот так:

Целая часть числа находится делением на основание новой системы счисления:

2135316
-21344133416
9-13288316
6-805
3
Перевод чисел из одной системы счисления в другую

В результате преобразования получилось:

2135310 = 536916
Ответ: 01010011011010012 = 536916