Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.06.2014, 23:34
Интересующийся
Отправить личное сообщение для MishaUA Посмотреть профиль Найти все сообщения от MishaUA
 
Регистрация: 03.05.2014
Сообщений: 26

float(dec) to float
Есть устройств, которое передает данные по протоколу MODBUS. Каждое значение записано в 16 битном числе. Если это без знаковое значение, тогда проблем не возникает, так как значение сразу приходит с том же виде, в котором нужно. Но если значение с плавающей точкой, то оно тоже приходит в десятичном формате и его как то надо преобразовать в float.
На С++ я бы сделал так:
union {
float f;
unsigned short int i;
} v;

unsigned short int inputValue = 16384; // входящее значение
v.i = inputValue;
float outputValue = v.f; // получаем выходящее значение

Как сделать такое же на JavaScripts?
Ответить с цитированием
  #2 (permalink)  
Старый 30.06.2014, 00:27
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

В современных браузерах так:
var outputValue = new Float32Array( new Uint32Array( [ inputValue ] ).buffer )[0];

В старых - придётся вспомнить как вручную байтики перекладывать.)
__________________
29375, 35
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать, float или int значение присвоено переменной? gadyuka Общие вопросы Javascript 4 30.10.2012 15:31
Вопрос о вложенных блоках с float PashPP (X)HTML/CSS 1 12.08.2012 19:25
Обтекание float antserg (X)HTML/CSS 2 09.01.2012 23:10
div float left на всю высоту nyols (X)HTML/CSS 1 20.08.2011 21:13
float + nowrap e1f (X)HTML/CSS 2 05.07.2010 18:48