关于浮点数精度为什么+1位
浮点数的范围和精度_浮点数范围-CSDN博客文章浏览阅读1.3w次,点赞6次,收藏22次。IEEE标准提供了两种主要的浮点数格式: 单精度(32位)和双精度(64位)。分为三个部分:符号、指数和小数。指数部分决定了浮点数的范围。而小数部分的位数决定了精度。(见下图)单精度中,指数长度为8位,小数部分占23位。由于是有符号型,所以对应的指数范围是-128~128。所以单精度的范围是-2128到2128,约等于-3.40 * 10^38 至 3.40 * 10^38(或者写成 -3.40E38 ~ +3.40E38)。由于小数部分占23位,而2^23=8388608。对应的10进制是7位。所以_浮点数范围https://blog.csdn.net/zuolindian/article/details/119082996浮点数与IEEE754-CSDN博客文章浏览阅读339次。浮点数表示是指阶符+阶码+数符+尾数,主要分两部分阶和尾数,原码+原码表示补码+补码表示规格化:与科学计数法不同的是,因为它含符号,所以是符号位后第一位真值不为0。特别地:补码表示时,规格化时只有符号位与后一位异或结果=1才合法。IEEE754浮点数表示的一种标准数符+阶码+尾数用"移码"+“原码”坑1:入门移码是-128_127与无符号数0_255一一对应此处移码是-126_127与无符号数1_255一一对应,通过无符号数减去127可得真值。全1去处理(上溢)无穷值以及不合法运算https://blog.csdn.net/weilaidedakejilu/article/details/120252393
?
?其实不对吧,有一个隐藏的1.0,所以32位浮点数精度是7-8位数,这个隐藏也是为什么浮点数表示不了0的原因。下面说明128处理下溢就是0。
符号位有两个,一个是数值的符号,一个阶的符号。
移码是由补码符号位取反,
补码是补(加)上多少原码等于全0。
原码是按基数为2的计算部分,按权值相加等于真值。
为什么用补码表示真值?因为处理有两个码表示0的情况。
10000000和01111111对应0和255即-1
00000000和11111111对应0即-128处理下溢和127处理上溢出
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!