【发布时间】:2018-12-10 10:26:30
【问题描述】:
我试图理解什么是次正规数,我猜指数固定为 -127,为了使数字更小,隐式 1 被隐式 0 替换。这听起来对吗?
【问题讨论】:
标签: floating-point ieee-754 mantissa
我试图理解什么是次正规数,我猜指数固定为 -127,为了使数字更小,隐式 1 被隐式 0 替换。这听起来对吗?
【问题讨论】:
标签: floating-point ieee-754 mantissa
在 IEEE-754 基本 32 位二进制格式中,次正规数的指数是 -126,而不是 -127。有效数的前导位确实为零。
对于任何 IEEE-754 二进制格式,让:
如果E 不是全零或全一,则表示的值是一个普通数。其值为 (-1)S•2E-偏差•( 1+21−p•T)。术语 1+21−p•T 可以被描绘为一个位,后跟一个小数点,后跟 T 的位: “1.T”。
如果E全为零,则表示的值为零(如果T为零)或次正规数。其值为 (−1)S•21−bias•(0+21 -p•T)。注意与正常值的两个变化:指数是 1-bias 而不是 E-bias,前导位是 0 而不是 1 .
注意最小的正态值和次正态值的指数为 1-bias,对于 32 位格式为 1−127 = −126。当从正常值转换到次正常值时,我们不会同时更改指数和前导位,因为这会导致可表示值的跳跃。因此次正规值与最小正规值具有相同的指数;只是前导位发生了变化。
【讨论】: