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

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

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

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

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

312
-30152
1-1472
1-632
1-21
1
Перевод чисел из одной системы счисления в другую

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

3110 = 111112

Вы указали что размер вашего числа 2 байт.

Дополним число знаковым битом вот так:

111112 = 10000000000111112

Так-как введенное Вами число отрицательное то необходимо перевести его из прямого кода в дополнительный.

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

1000000000011111 прямой код
1111111111100000обратный код
+1+1 бит
1111111111100001дополнительный код
Ответ: -3110 = 11111111111000012 (2 байт)