| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
MoKo 17.05.2012 14:34
Вы неправильно прочитали мое сообщение: мне надо НЕХ перевести в Single.Прочитал правильно, но вот высказался непонятно. :) Метод, который для преобразования hex в single будет использовать промежуточное преобразование в двоичный формат, будет работать на порядок медленнее. Да и лишнее это преобразование.
@hex2single[value]
$value[^value.upper[]]
$negative(^value.length[]==8 && ^value.left(1) ge '8')
^if($negative){ $high[0x^value.left(1)] $high($high-8) $value[${high}^value.right(7)] }
$value[0x$value]
$uint(^value.int[])
$fraction((($uint & 0x07FFFFF)+0x800000)/0x800000)
$exp((($uint & 0x7FFFFFFF)>>23) - 127)
$result(^math:pow(2;$exp)*$fraction)
^if($negative){ $result(-$result) }