MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]问个关于小数转换为IEEE标准的浮点数的问题 (https://www.labfans.com/bbs/showthread.php?t=3725)

jasonzou 2008-06-25 20:42

[求助]问个关于小数转换为IEEE标准的浮点数的问题
 
不知道如何实现。
我尝试用了先量化我的浮点的数据位和符号位,后用num2bin函数来转
代码如下:
a=quantizer([32 31]);
num2bin(a,1.5)
可是它报告我的结果溢出了,输出的为
Warning: 1 overflow.
> In embedded.quantizer.quantize at 68
In embedded.quantizer.num2bin at 52

ans =

01111111111111111111111111111111
根据IEEE单精度浮点的定义:1位符号位,8位指数,23位尾数
1.5对应的值应该是
0 01111111 10000000000000000000000
同样的我尝试对0.5转换成
num2bin(a,0.5)
ans =00111111111111111111111111111110
可是正确的0.5应该是0 01111110 00000000000000000000000
matlab里那个float我只能拿来定义数据类型,当我一用赋值后,数据类型又换了
下面是帮助文档里的关于float函数的定义
float('single') returns a MATLAB structure that describes the data type of an IEEE single (32 total bits, 8 exponent bits)
请教下如何在matlab里把小数转换为浮点....

jasonzou 2008-06-28 20:24

郁闷啊,搞了几天,还是搞不懂matlab里面那个float的函数有什么用?
它定义了数据类型为IEEE浮点后,我一赋值,它自己又变成我赋值的类型了。


所有时间均为北京时间。现在的时间是 05:14

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.