Какие-либо библиотеки C доступны для преобразования между представлениями с плавающей запятой?

#c #floating-point

Вопрос:

Недавно у меня возникла необходимость интерпретировать 32-разрядное представление DEC с плавающей запятой. Он отличается от представлений IEEE с плавающей запятой количеством битов, выделенных экспоненте и мантиссе.

Вот описание множества форматов с плавающей запятой:

http://www.quadibloc.com/comp/cp0201.htm

Мне удалось свернуть свой собственный код C , чтобы вставить 32-разрядный поплавок DEC в 32-разрядный поплавок IEEE, но мне было интересно, существуют ли какие-либо библиотеки, которые уже занимались этим преобразованием и другими.

Я проверил boost.org но ничего там не увидел.

Комментарии:

1. Хороший вопрос! Я думаю, что получил разумные цифры, на самом деле не зная, в каком формате. Я разберусь с этим и опубликую еще один комментарий, когда снова окажусь перед своим кодом.

2. EvilTeach, похоже, что это был dfloat (55 бит мантиссы).

Ответ №1:

Вы имеете в виду, как libvaxdata?

Я никогда им не пользовался — я просто нашел его в гугле. Но это похоже на то, что вы ищете.

Это библиотека C, а не C , но преобразование данных с плавающей запятой должно отлично работать при внешних вызовах «C».

Ответ №2:

Ha … не знаю, почему я не проверил проект кода:

http://www.codeproject.com/KB/applications/libnumber.aspx