我正在使用非规范化数字。
我知道:
基本上,非规范化浮点数具有表示的能力 可以用数字表示的最小(数量级)数字 任何浮点值。
我也知道数字可以表示为:
然而,我遇到的是实际计算的de- /标准化数?
有没有办法做到这一点?有什么特别的号码吗?
非常感谢您的回答!
答案 0 :(得分:6)
“Subnormal”是IEEE 754标准中使用的术语。
没有大于1的次正规数;次正规数很小(比正常数字更小)。
最小正常指数为-1022(编码为位00000000001,因为指数编码偏向1023)。次正规数具有较低的指数编码,编码为全零位00000000000。
次正规数的值是有效数(分数部分)乘以2 -1022 ,应用符号位(0表示正数,1表示负数)。有效数形成为前导0,然后是小数点“。”,然后是有效数字段的位。因此,如果有效数字段包含0101010101010101010101010101010101010101010101010101,则有效数值为(二进制)0.0101010101010101010101010101010101010101010101010101 2 。
如果有效数字段完全为零,则该值为零,并且该数字通常不被视为次正规。最小的正次正规数在其最低位中为1,在所有其他位中为零。其值为0.0000000000000000000000000000000000000000000000000001 2 •2 -1022 ,即2 -52 •2 -1022 = 2 < SUP> -1074