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

Перевод -28.34 из десятичной в двоичную систему счисления

Введите число:
Его система счисления:
Двоичная
Троичная
Восьмеричная
Десятичная
Шестнадцатиричная
Двоично-десятичная
Другая
Дополнительно

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

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

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

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

Перевод чисел из одной системы счисления в другую
0.34*2
0.68*2
1.36*2
0.72*2
1.44*2
0.88*2
1.76*2
1.52*2
1.04*2
0.08*2
0.16*2

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

28.3410 = 11100.01010111002

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

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

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

111002 = 10000000000111002

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

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

1000000000011100 прямой код
..
1111111111100011обратный код
+1+1 бит
1111111111100100дополнительный код
Ответ: -28.3410 = 11111111111001002 (2 байт)