在用于双精度系统的IEEE标准中,我们知道正常数的最小指数是1-1023 = -1022,而0的表示是(1.00 ... 0)_2 * 2 ^(0-1023),指数是-1023 .
次正规数具有指数-1022,而与正常数字相反,前导尾数为0.也就是说,次正规数的表示如下:(0.b,...,c)_2 * 2 ^( - 1022),其中b,...,c是一系列二进制值(即0或1) .
我想知道以下表示是否被视为次正规数:
(0.00 ... 0)_2 * 2 ^( - 1022),其中尾数全为0,指数为-1022 .
提出这个问题是因为上面的表示在数学上等于0,而次正规数与0不同 . 此外,我尝试但没有找到“次正规数”的正式定义 . 如果您知道严格定义的地方,请告诉我 . 谢谢 .
PS:让我困惑的是在次正规数的定义中使用的术语“非零” . “零”表示0在数学上或IEEE上(浮点系统中0的表示)?
2 回答
指数部分中带零的浮点数和尾数中的零将是有符号0 .
次正规数具有非零尾数 .
IEEE标准754™-2008第2.1.51节中定义了一个次正规数,它是一个非零浮点数,其幅度小于格式化最小正常数的幅度 .
根据定义,零既不是正常数也不是次正规数 .