IEEE754规定:

  1. 单精度浮点数字长32位,尾数长度23,指数长度8,指数偏移量127;双精度浮点数字长64位,尾数长度52,指数长度11,指数偏移量1023;
  2. 约定小数点左边隐含有一位,通常这位数是1,所以上述单精度尾数长度实际为24(默认省略小数点左边的1则为23),双精度尾数长度实际为53(默认省略小数点左边的1则为53);

下面讲述使用IEEE754标准表示浮点数:

  1. 176.0625表示为单精度浮点数:

解:

1).先将176.0625转换为二进制数

小数点前:176 / 2 = 88  余数为 0
88 / 2=44 余数为 0                             
44 / 2 =22 余数为 0                       
22 / 2= 11 余数为 0                              
11 / 2 =5   余数为 1        
5 / 2=2 余数为 1                             
2/ 2  =1 余数为 0                                                                             
1/ 2=0        余数为 1    商为0,结束。

小数点前整数转换为二进制:10110000

小数点后:小数部分乘以2,取整数部分,直至乘积小数部分为0   
0.0625 * 2 = 0.125   整数为0                 
0.125 * 2 = 0.25     整数为0             
0.25* 2 = 0.50       整数为0             
0.5* 2 = 1.0 整数为1,小数部分为0,结束

小数点后的小数位转换为二进制:0001

故176.0625转换为二进制为:10110000.0001

2)IEEE754约定小数点左边隐含有一位,通常这位数是1,所以10110000.0001=1.01100000001 *  2^7(小数点向左偏移7位);

IEEE754约定单精度指数偏移量为127,所以176.0625使用IEEE754标准表示时,指数偏移量为 7+127=134 ,即:10000110

IEEE754约定单精度尾数长度为23,所以176.0625使用IEEE754标准表示时,尾数为:01100000001000000000000

176.0625>0,即为整数,所以符号位为0

3)由上得出:176.0625使用IEEE754规格化后的表示为:0  10000110 01100000001000000000000

现代计算机中,一般都以IEEE 754标准存储浮点数,这个标准的在内存中存储的形式为:

对于不同长度的浮点数,阶码与小数位分配的数量不一样,如下:

对于32位的单精度浮点数,数符分配是1位,阶码分配了8位,尾数分配了是23位。

根据这个标准,我们来尝试把一个十进制的浮点数转换为IEEE754标准表示。

例如:178.125

  1. 先把浮点数分别把整数部分和小数部分转换成2进制

    1. 整数部分用除2取余的方法,求得:10110010
    2. 小数部分用乘2取整的方法,求得:001
    3. 合起来即是:10110010.001
    4. 转换成二进制的浮点数,即把小数点移动到整数位只有1,即为:1.0110010001 * 2^111,111是二进制,由于左移了7位,所以是111
  2. 把浮点数转换二进制后,这里基本已经可以得出对应3部分的值了
    1. 数符:由于浮点数是整数,故为0.(负数为1)
    2. 阶码 : 阶码是需要作移码运算,在转换出来的二进制数里,阶数是111(十进制为7),对于单精度的浮点数,偏移值为01111111(127)[偏移量的计算是:2^(e-1)-1, e为阶码的位数,即为8,因此偏移值是127],即:111+01111111 = 10000110
    3. 尾数:小数点后面的数,即0110010001
    4. 最终根据位置填到对位的位置上:

出处:https://blog.csdn.net/fwb330198372/article/details/70238982

IEEE754浮点数算数标准相关推荐

  1. IEEE754标准:二进位浮点数算术标准

    IEEE754标准:二进位浮点数算术标准

  2. IEEE754浮点数标准

    目录 一.介绍32位单精度格式 二.介绍几种数的区别 三. 规格数 作用: 格式: 意义: 四.非规格数 作用: 格式: 意义: 五.非规格数补充 逐渐溢出 密集分布 六.特殊数 无穷 NaN 一.介 ...

  3. 【体系结构】IEEE754浮点数标准学习与机器码表示总结

    怎么上传了,排版和Typora差这么多-头疼,就这样吧- 一 IEEE754浮点数标准学习 没想到本科不喜欢.瞎学的祭祖,现在还是得重新.认真地重学一遍."不喜欢"果然无法成为拒绝 ...

  4. IEEE 754二进制浮点数算术标准

    可能很多人都遇到过浮点数精度丢失的问题,下面以JavaScript为例. 1 - 0.9 = 0.09999999999999998 纳尼,不应该是0.1么,怎么变成0.099999999999999 ...

  5. IEEE754浮点数

    IEEE754浮点数 一个浮点数包括三部分: 符号部分(Sign).指数部分(Exponent).分数部分(Fraction) IEEE754浮点数不是均匀分布的.仅能代表有限个数的实数 对于norm ...

  6. IEEE754 浮点数的表示方法

    原文地址:https://blog.csdn.net/K346K346/article/details/50487127 1.浮点数的存储格式 浮点数(Floating-point Number)是对 ...

  7. IEEE754浮点数格式详解

    IEEE754浮点数格式详解 几乎所有计算机都支持二进制数据表示,即能直接识别二进制数据表示并具有相应的指令系统.通常采用的二进制定点数据表示主要有:符号数值.反码.补码以及带偏移增值码四种形式,其中 ...

  8. IEEE754 浮点数:简读+案例=秒懂

    IEEE754 浮点数:简读+案例=秒懂 在IEEE 754 格式浮点数由 3 个部分组成,分别是 符号码,阶码,尾数码,对应部分所占位数如图 1-1 所示: 图 1-1 IEEE 754 标准分 3 ...

  9. 一文读懂 IEEE754 浮点数的表示方法

    FBI WARNING:鄙人首个开源电子书 <Go 编码建议>已经上线啦,欢迎各位大佬斧正指导,协同共建. 文章目录 1.浮点数的存储格式 2.移码 3.浮点数的规格化 3.1 单精度浮点 ...

最新文章

  1. RGB转YUV 各种库的性能比较
  2. BZOJ-3122-随机数生成器-SDOI2013-BSGS
  3. Depth-first Search深度优先搜索专题4
  4. js-document对象
  5. CV Code|计算机视觉开源周报20200601期
  6. PAT-乙级-1034 有理数四则运算
  7. android开发之添加按钮事件的方法
  8. PAT1018. 锤子剪刀布
  9. 第二章节 ASP.NET 验证控件(二)
  10. 如何在linux centos下安装git(转)
  11. 算法笔记_面试题_2.移动零(将数组的的0元素移到末尾)
  12. FFTW3在VS环境下的安装(亲测)
  13. [转]关于java的动态代理
  14. 多媒体计算机技术的核心技术是,计算机多媒体的核心技术与发展
  15. 旅馆业治安管理信息系统
  16. CAD突然没有对话框了?只能命令行输入内容??(FILEDIA=0?CMDECHO=0?)
  17. 计算机休眠 mac,Mac如何开启休眠模式
  18. python用法查询软件下载_布同自制Python函数帮助查询小工具
  19. 游戏服务器租用配置选择攻略(大型端游及中小型网页游戏选型)
  20. RGB、CMY、HSV、HSL颜色空间

热门文章

  1. 10个提升PPT幻灯片制作效率的方法
  2. 快速复制粘贴小工具txmouse
  3. java.lang.IllegalAccessException 没有访问权限
  4. linux qt3编译出错,编译ARM 平台的qt4.7.3 遇到的一些问题总结
  5. 中国大学慕课第8周测验
  6. Hadoop常见错误及解决方案、Permission denied: user=dr.who, access=WRITE, inode=“/“:summer:supergroup:drwxr-xr-x
  7. 怎么找到一抛物线数组的顶点_抛物线与顶点坐标的关系如何确定抛物线开口是向上还是向下?知道抛物线的定点坐标,和x轴的交点或y轴的交点,怎么求抛物线的解析式?抛物线的顶点坐标与抛物线还有什么关系?...
  8. 题解 [LuoguP3426][POI2005]SZA-Template
  9. 【UWP通用应用开发】编辑文本、绘制图形、3D透视效果及绘制时钟实战
  10. 为什么有很深的windows基础还是不能动摇linux半步