关于float阶码部分用移码表示的问题

子虚 子虚 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
按照IEEE754标准,float型符号位1位,指数(阶码)位8位,尾数位23位。指数位用移码表示。那么120.5的浮点数表示应该为:
0 10000110 11100010000000000000000。
但是在VC++6.0上120.5是:
0 10000101 11100010000000000000000。
120.5的二进制为:01111000.1。要往前左移6位,6的补码为00000110。移码是符号位取反的补码,6的移码应该为10000110,那为什么会是10000101呢?还有,书上说,引入移码是为了让浮点数的机器零为全0,这句话什么意思?求解释,谢谢。
...全文
评论 6
收藏 已收藏
分享
返回顶部
子虚
C语言 70,039 成员 243,237 内容