vilserg пишет: Контроллер Siemens S7-200 через свой родной OPC-сервер PC Access выдаёт 4 байта. Эти 4 байта представляют собой число в формате ieee754. Скриптом в DataRate я собрал 4 байта в одну переменную типа int64, у которого младшие 32 бита представляют собой float-число в формате ieee754, а старшие 32 бита - нули.
само число: BF7F DFC2. Это ieee754 представление числа -0.999508. Как мне получить на экране именно -0.999508, а не 3212828610, которое является простым переводом BF7F DFC2 в десятичную систему??
Ну, если никто не хочет, отвечаю себе сам:
byte[] bytes = { 0xC2, 0xDF, 0x7F, 0xBF };
float value = BitConverter.ToSingle(bytes, 0); |