求大神给438加符号,游戏用,谢谢加什么符号?

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

阶码全位0尾数全为0,正负由符号位决定

阶码全为1尾数全为0,正负由符号位决定

顺帶解释为什么要有非规格化数

大家知道浮点数是有隐藏位“ 1 ”的

这里就需要有非规格化数了
因为阶码全为0的非规格化数的隐藏位是“ 0 ”,这时就可以处理 0 的问题了!
但是它还有其他作用。

这里顺带引出所谓的规格化数

阶码非0且阶码不全为1 这里看一下规格化数的最小值


根据语法,阶码的最小值为1
你会发现这个数字要比非规格化数要大
所以说非规格化数还用于处理比规格化数更小的数值

非规格化数有两個作用:
2.处理比规格化数更小的数值

NaN也叫非数,用于定义异常数据
下面我拿C++举一个例子

再让我们看看这个非数b 内存中的情况
非数定义阶碼全为1,尾数非0

所以看到非数的时候,就说明你的程序在运算时出现了这样类似的错误哦!

关于输出不是NaN是不同编译器处理方式略有鈈同的缘故
上面我用的是VS2012,原因是当初学C的时候就是用的这个比较熟悉
后来我去Dev跑了同一段程序,然后就输出了非数

顺带给大家看一下峩在Java实验的结果
NaN, 非数定义异常数据

参考资料

 

随机推荐