У меня проблема с ПЛК (программируемый логический контроллер), который не обрабатывает денормализованные плавающие точки.Нормализовать с плавающей запятой
Вот несколько шестигранного представления чисел (денормализованный) Я получаю от контроллера на на противоположном стороне моего PLC: 0x00004180, 0x0000C180, 0x00006FA0
ли кто-нибудь будет так любезно, чтобы поделиться небольшим примером кода (C++/C# или аналогичный) о том, как побитовое нормализовать значение, подобное приведенному выше? Я не могу использовать какие-либо операции с плавающей запятой для чисел, поскольку они не распознаются в ПЛК, поэтому только операции HEX/BIN.
Прецизионность не является проблемой.
Какой формат эти поплавки в? IEEE 754 с двойной точностью? –
Денормализованные поплавки меньше, чем минимальные нормализованные поплавки, «нормализация» их будет означать нижнее значение до 0 или округлить до FLOAT_MIN. – hdl
@Mark: IEEE 754, одинарная точность –