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

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

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

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

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

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

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

1∙27+0∙26+1∙25+0∙24+1∙23+0∙22+0∙21+1∙20 = 1∙128+0∙64+1∙32+0∙16+1∙8+0∙4+0∙2+1∙1 = 128+0+32+0+8+0+0+1 = 16910

Получилось: 101010012 =16910