Преобразование из десятичных данных с плавающей запятой IEEE 754-2008 в двоичный формат с плавающей запятой - PullRequest
2 голосов
/ 29 июля 2011

У меня есть двоичные данные на диске, хранящиеся в формате IEEE 754-2008, который является 32-разрядной плавающей запятой с показателем степени 10 (если я правильно понял: http://en.wikipedia.org/wiki/Decimal_floating_point). Как мне преобразовать их в основание 2 с плавающей запятой (как стандартный float32 на процессорах Intel)? Пример кода на C, Python или Java был бы отличным! Спасибо за помощь!

1 Ответ

1 голос
/ 29 июля 2011

Если вы используете GCC, у вас может быть доступ к выделенным подпрограммам десятичного числа с плавающей запятой: http://gcc.gnu.org/onlinedocs/gccint/Decimal-float-library-routines.html

Вам следует десериализовать ваши двоичные данные в один из десятичных типов с плавающей запятой, а затем применить функцию преобразования к стандартным типам с плавающей запятой.

...