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

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

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

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

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

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

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

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

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

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

0100110012 = 010 011 001 = 010(=2) 011(=3) 001(=1) = 2318

Ответ: 011001112 = 2318

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

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

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

Получилось: 0100110012 =15310

Переведем число 15310 в восьмеричное вот так:

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

1538
-152198
1-162
3
Перевод чисел из одной системы счисления в другую

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

15310 = 2318
Ответ: 011001112 = 2318