реклама на сайте
подробности

 
 
> Преобразование форматов с плавающей точкой
Kosh
сообщение Feb 21 2005, 10:40
Сообщение #1





Группа: Новичок
Сообщений: 11
Регистрация: 21-02-05
Пользователь №: 2 793



Как осуществить преобразование форматов с плавающей точкой 32разрядные-в-16разрядные и 16-в-32, на языке си ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kosh
сообщение Feb 22 2005, 07:40
Сообщение #2





Группа: Новичок
Сообщений: 11
Регистрация: 21-02-05
Пользователь №: 2 793



Я так и делаю когда принимаю, нормальный флоат, но мне передают 16 битный флоат двумя байтами, так что приведённый више код не поможет. А шарки помимо стандактного 32 битного также поддерживают укороченый формат, вот выдержка из "ФОРМАТЫ ДАННЫХ ПРОЦЕССОРОВ SHARC ADSP-21000"
Цитата
УКОРОЧЕННЫЙ ФОРМАТ ДАННЫХ С ПЛАВАЮЩЕЙ ТОЧКОЙ
Процессоры ADSP2106x поддерживают 16-разрядный тип данных с плавающей
точкой и выполняют команды преобразования форматов. Укороченный формат данных с
плавающей точкой содержит 11-разрядную мантиссу, 4-разрядный порядок и знаковый бит,
как показано на рис. С3. 16-разрядные числа размещаются в младших 16 разрядах 32-битного
формата.
15 14 11 10 0
S е3 e0 1 . f10 f0
Скрытый бит Десятичная точка
Рис. С3. 16-разрядный укороченный формат данных с плавающей точкой
Преобразование форматов с плавающей точкой 32-в-16 и 16-в-32 выполняется за 1
цикл при помощи команд устройства сдвига FPACK и FUNPACK соответственно (см.
описание этих команд в справочнике по вычислительным операциям).
Go to the top of the page
 
+Quote Post
Miron
сообщение Feb 22 2005, 08:31
Сообщение #3


Частый гость
**

Группа: Validating
Сообщений: 149
Регистрация: 11-02-05
Из: Рязань
Пользователь №: 2 574



Тогда Вам скорее всего придется самому писать программу преобразования форматов или при отправке данных с ADSP2106x преобразовывать их в 32 битный флоат
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 20:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016