在matlab中读取半精度浮点数(float16 IEEE 754r)二进制数据

时间:2012-09-11 03:24:51

标签: matlab

上次你得到了很大的帮助,我希望你这次能给我一些建议。

我用bit16(格式= bitn)将二进制文件读入matlab,我得到一串1和0。

bin = '1,00011,1111111111'(16位:1。符号,2-6。指数,7-16。尾数)

根据ftp://www.fox-toolkit.org/pub/fasthalffloatconversion.pdf,它可以转换为

out = (-1)^bin(1) * 2^(bin(2:6)-15) * 1.bin(7:16) [指数和尾数仍为二进制?]

有人可以帮助我,告诉我如何处理pdf中提到的'eeeee'和'1.mmmmmmmmmm'。

非常感谢!

迈克尔

1 个答案:

答案 0 :(得分:1)

This Guy制作了一个很棒的C ++头文件来处理float16 - 半精度浮点数。真棒!

迈克尔