对于浮点数有上溢与下溢两种情况,若用32位内存单元的浮点表示法表示范围,那么临界值怎样计算

现在是二进制,而非十进制如果是十进制,比如10的-1次方,就是0.1。10的-2次方,就是0.01,10的-n次方,1前面就有n个0。所以在二进制情况下,2的-24次方,1前面就有24个0。而这个1在尾数部分的第23位,此时你用1减这个数,得到的就是尾数部分的最大值。此时在乘2的128次方(指数最大),则所得的数是整数最大。举一反三,其他三情况你就明白了
■网友
老铁,握个手,你看的是佛罗赞的计算机科学导论第三版吧……同问
■网友
这个一般来看 应该做成 阶数移码尾数补码表示的浮点数规格化后的结果。具体如下

先求正数边
【对于浮点数有上溢与下溢两种情况,若用32位内存单元的浮点表示法表示范围,那么临界值怎样计算】 对于浮点数有上溢与下溢两种情况,若用32位内存单元的浮点表示法表示范围,那么临界值怎样计算

因此最大正数取S为0,E为127,M为1-2的二十四次方,最小的正数取E,M的小边界。最小负数为最大正数的相反数,最大负数为最小正数的相反数即可。

但是这样的话为什么E在书中是-127到+128呢......是移码表示的缘故

■网友

对于浮点数有上溢与下溢两种情况,若用32位内存单元的浮点表示法表示范围,那么临界值怎样计算

我算出来和书里不一样,先放在这边给大家参考一下,看看我是哪里算错了,我的答案和书中的答案差了一个二分之一,如果E是-128~127就对了,但是书中明明白白写的是偏移127,所以我有点搞不懂

■网友
浮点数在计算机内存的存储结构以及溢出临界值的计算 - 程序player - 博客园,这位网友用的等比数列求和公式算出了最大值,但是最小值没有求出来!


    推荐阅读