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

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

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

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

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

52
-422
1-21
0
Перевод чисел из одной системы счисления в другую

Дробная часть числа находится умножением на основание новой системы счисления:

Перевод чисел из одной системы счисления в другую
0.122*2
0.244*2
0.488*2
0.976*2
1.952*2
1.904*2
1.808*2
1.616*2
1.232*2
0.464*2
0.928*2

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

5.12210 = 101.00011111002

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

На данный момент отрицательные дробные числа не поддерживаются. Поэтому в дальнейшем переводе участвует только целая часть числа.

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

1012 = 10000000000001012

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

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

1000000000000101 прямой код
1111111111111010обратный код
+1+1 бит
1111111111111011дополнительный код
Ответ: -5.12210 = 11111111111110112 (2 байт)