问题如下:
记下在单精度IEEE-754中具有多于1个表示的所有实数。
现在,考虑到+0和-0不同,是否有任何具有此属性的数字?
答案 0 :(得分:1)
没有。
IEEE754表示是规范,这意味着所有数字只有一个表示,如果有的话,没有其他表示。
31 0
seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm
映射到
( - 1)^ s * 2 ^(eeeeeeee - 127)* 1.mmmmmmmmmmmmmmmmmmmmmmmm(二进制)
s
中编码。对同一实数的两个假设不同的表示必须具有相同的s
值,因为只有该字段控制符号。1
位的位置,在十进制逗号左边的数字位置,以八个eeeeeeee
指数位中的偏置格式进行编码。相同实数的两个假设不同的表示必须具有相同的eeeeeeee
值,因为只有该字段控制最重要的1位的位置。1
位正下方的23位在尾数(mmmm...
)中编码。相同实数的两个假设不同的表示必须具有相同的尾数值,因为只有该字段控制紧跟在实数的最重要1
位之下的23位。结论是矛盾的。相同实数的两个假定不同的表示必须具有相同的符号,指数和尾数;换句话说,它们必须完全相同。
本讨论忽略了所有特殊值,如无穷大,NaN和非正规值。