ilichev 0 22 июня, 2011 Опубликовано 22 июня, 2011 · Жалоба Добрый день, Есть готовый проект под CodeVisionAVR на Mega64, в котором требуется добавить математические вычисления с двойной точностью double (8 байт). CodeVisionAVR поддерживает только float (4 байта), double не поддерживает. Переводить проект на IAR (поддерживает double) ради этого не хочу, поскольку это потребует много времени на тестирование уже написанного кода, могут вылезти любые глюки, обусловленные особенностями компиляторов. Лучше конечно сразу писать под IAR, но такой возможности на старте проекта не было. Итак, ищу библиотеку, позволяющую складывать и умножать числа double в соответствии со стандартом IEEE 754, которую можно использовать в CodeVision. Порекомендуйте что можно сделать! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
=GM= 0 22 июня, 2011 Опубликовано 22 июня, 2011 · Жалоба Напишите простую си-программу для иара, откомпилируйте, вытащите оттуда нужные куски двойной точности и оформите, как библиотеку, ну или как подпрограмму. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 22 июня, 2011 Опубликовано 22 июня, 2011 · Жалоба Порекомендуйте что можно сделать! Начать переделывать проект под IAR, причем как можно скорее. Сэкономите кучу времени ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ilichev 0 23 июня, 2011 Опубликовано 23 июня, 2011 · Жалоба Решение найдено. Портировал бесплатную библиотеку SoftFloat (http://www.jhauser.us/arithmetic/SoftFloat.html) сначала под Builder. Результаты операций одинаковы со встроенной библиотекой double билдера. Но это в первом приближении, сейчас будем всесторонне тестировать. Библиотека требует наличие в компиляторе 32-битного целого. В CodeVisionAVR есть long int. На основе этого библиотека предоставляет операции с типами float32 и float64. Последний полностью соответствует привычному double. После тестирования буду портировать под AVR, там в сущности никаких отличий от i386 нет. Кому интересны подробности - пишите в личку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 23 июня, 2011 Опубликовано 23 июня, 2011 · Жалоба ... буду портировать под AVR, там в сущности никаких отличий от i386 нет.... Я бы даже сказал - они практически идентичны. )) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ilichev 0 23 июня, 2011 Опубликовано 23 июня, 2011 (изменено) · Жалоба Я бы даже сказал - они практически идентичны. )) Ну а что, там тот же Little Endian, а остальное всё - просто сишный код )). Тем более никакие аппаратные особенности не используются. Изменено 23 июня, 2011 пользователем Konstantin Ilichev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 23 июня, 2011 Опубликовано 23 июня, 2011 · Жалоба Упоминание про Little Endian на 8-ми битной платформе очень по теме. )) Как, собственно и весь этот термин в контексте того, что "Библиотека требует наличие в компиляторе 32-битного целого". По сути вообще внутреннее представление числа не имеет значения, если нет выхода наружу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ilichev 0 23 июня, 2011 Опубликовано 23 июня, 2011 · Жалоба Упоминание про Little Endian на 8-ми битной платформе очень по теме. )) Как, собственно и весь этот термин в контексте того, что "Библиотека требует наличие в компиляторе 32-битного целого". По сути вообще внутреннее представление числа не имеет значения, если нет выхода наружу. Эээ... Да, согласен! Со всем согласен!!! ) При портировании меня больше всего бесит, почему в исходнике минус приделывают к беззнаковому целому. Мой компилер-то ругается... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 60 23 июня, 2011 Опубликовано 23 июня, 2011 · Жалоба Начать переделывать проект под IAR, причем как можно скорее. Сэкономите кучу времени ... +1. Можно в сторону GCC посмотреть, если цена смущает. Потраченное на освоение время с лихвой окупится в дальнейшем, если проект и работа не разовая. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться