real number(实数)和NaN(Not a number)

IEEE754标准定义了多种实数的编码方式:
(1)zero,包括 0.0和-0.0编码
(2)denormal数字,不合规的数,又称tiny(极小数)
(3)normal数,合规的普通浮点数,这是一个finite(有限的)取值范围。
(4)infinite(无限)数字,包括正无穷和负无穷。
(5)NaN(not a number),包括SNaN、QNaN。
在这里插入图片描述
13、denormal(不合规)数
denormal是一个tiny(极小数),接近于零,exponent为0,significand不为0,即为denormal(不合规数)
14、normal(合规)数
在这里插入图片描述
normal数是在finite(有限)集合里的一个数,J-bit(integer)的值必须为1在double extended precision floating point(拓展双精度浮点数),在single precision floating point(单精度浮点数)和double ptecision floating point(双精度浮点数)下integer(J-bit)是隐性的,固定值为1,只有在double extended-precision floating point(拓展双精度浮点数)下integer(J-bit)是显性的。
15、infinite(无穷大)数
和finite(有限)数相对,在infinite(无穷大)数里值是固定的,分为:正无穷大和负无穷大。
在这里插入图片描述
对于double extended-precision floating point(拓展双精度浮点数)中integer(J-bit)是显性的,固定值为1(否则就是unsupported类型)。
16、NaN(not a number)数
一个数超过infinite(无穷大)数,那么它就是NaN数。在NaN数中,exponent部分可以表达的最大值为:FF(单精度)、7FF(双精度)、7FFF(拓展双精度)。
NaN数和infinite数的区别:infinite数的significand部分为0(在拓展双精度bit63为1),NaN数的significant部分不为0。
NaN分为:
(1)SNaN(Signaling NaN)数,SNaN数表示一种严重的错误。
(2)QNaN(Quiet NaN)数,一般情况,QNaN数可以接受。
SNaN和QNaN数的编码区别在于significand部分的不同,如图所示:
在这里插入图片描述
SNaN数的significand以1.0开头(1.0以后不为0),而QNaN数的significand以1.1开头。

发布了34 篇原创文章 · 获赞 20 · 访问量 2752

猜你喜欢

转载自blog.csdn.net/weixin_45495531/article/details/104175508