Кодирование чисел в IEEE754 половинной точности

У меня быстрый вопрос о проблеме, которую я пытаюсь решить. Для решения этой проблемы мне нужно преобразовать (0,0A)16 в стандарт IEEE754 с плавающей запятой половинной точности. Я преобразовал его в двоичный (0000.0000 1010), нормализовал (1.010 * 2^5), закодировал показатель степени (который оказался 01010), но теперь я не знаю, как преобразовать его в реальную форму. Что делать с дробной частью? Ответ получается 0 01010 01 0000 0000.

Я знаю, что есть какое-то отношение к добавлению пропуска 1, но я не совсем уверен, где это происходит.

Любая помощь приветствуется!

1 ответ

1, которую вы должны пропустить, - это первая мантисса, поскольку мы знаем, что значимая часть всегда начинается с 1 (таким образом, IEEE-754 получает один бит пространства). Мантисса равна 1,010, поэтому вы представите только "010".

Решение 0 01010 0100000000 означает: 0 - знак; 01010 - показатель степени; 01000000 - это мантисса, исключая первую.

Другие вопросы по тегам