direct convert to float64 from the data of output of fread

8 次查看(过去 30 天)
Dear Experts,
I got the data which are output of fread function as a UDP communication.
data=[65;233;180;90;80;0;0;0].
I want to convert to this data to float64 double(IEEE 754 floating point format).
I tried as below
%================================%
data=data.';
tp=dec2bin(data).';
tp=reshape(tp,[4,16]).';
tp=bin2dec(tp);
hex = '0123456789abcdef';
hc=hex(tp+1);
f=hex2num(hc);
%================================%
I got f=3.4500e+09
but, Is there any other method better simple direct mehtod to get value f?

采纳的回答

Walter Roberson
Walter Roberson 2019-12-16
swapbytes(typecast(uint8(data),'double'))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

产品


版本

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by