采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
如题
阶码的双符号位是为了判断溢出而设计的,因此当尾数运算溢出时,双符号位就会不一致,可以举一个例子。
00,1111
+ 00,1111
得到的结果就是阶码的双符号位不一致的结果。
这个我并没有理解到,为什么 00,1111+ 00,1111 会使阶码不一致呢,你看哈: 00,1111 + 00,1111 ,他们都是正数 原码就是补码,相加之后得出:01,1110,由于双符号位不同将其右移: 00,1111,舍去的是0所以不需要加1,阶码假设是 00,01 ,此时也不用+1,这也没看出溢出效果呢
对的,你这里考虑了左移的情况,如果不考虑左移,只是从尾数运算的角度去看的话,就是溢出了,所以我在课程中也强调了,双符号位不一致在浮点数的表示范围内,不一定溢出,因为有阶码的存在,可以左移,但是在尾数运算的范围内,就是溢出了。
浮点数的双符号位有两个,尾数和阶数,还是不太理解,为什么阶数的双符号位不一致则认为溢出。从您的解释中,我理解的是尾数的双符号位不一致可能会溢出,但是还是不太理解这和阶数的双符号位有什么关系?对阶之后的运算会影响到阶数的双符号位么?
登录后可查看更多问答,登录/注册
编程之前先学这门课,系统补足计算机基础知识,夯实编程地基
3.4k 17
1.7k 14
1.2k 13
1.3k 11