假设我在Matlab中具有以下单精度浮点数
a = single(-2.345)
Run Code Online (Sandbox Code Playgroud)
我想将其表示为遵循IEEE 754的4个字节的数组。正确的表示应为
b = [123, 20, 22, 192]
Run Code Online (Sandbox Code Playgroud)
目前,我正在使用fread并fwrite进行转换,例如
fid = fopen('test.dat','wb')
fwrite(fid,a,'float')
fclose(fid)
fid = fopen('test.dat','rb');
b = fread(fid)'
Run Code Online (Sandbox Code Playgroud)
足够好了,但是我怀疑有一种更轻松,更快捷的方式来进行转换,而无需从文件中进行读取/写入。
关于将字节数组转换为浮点数的文章已经很多了(例如here),但是我不确定如何朝相反的方向前进。有什么建议么?