Ask Your Question

Revision history [back]

Interpreting floating point numbers from hex values

A third-party vendor is sending data via TCP using a program written in C to a listening program we've developed in C# on another server. It's mostly working okay but sometimes there seems to be misalignment in the data which I've been trying to isolate by interrogating the data stream using Wireshark.

In certain packets I know there are some 4-byte integers and some 4-byte reals (floating point numbers). Taking the hexadecimal value 8d:02:00:00 from Wireshark which I know represents an integer I can enter 28D into the Windows Calculator in Programmer mode and it tells me this is the decimal number 653. But if I take 94:0e:4b:3f which I know represents a real, how can I determine its decimal value?