IEEE754 详点
5.浮点数的几种特殊情况
(1)0的表示
对于阶码为0或255的情况,IEEE754标准有特别的规定:
如果 阶码E 是0 并且尾数M 是0,则这个数的真值为±0(正负号和数符位有关)。
因此+0的机器码为:0 00000000 000 0000 0000 0000 0000。
-0的机器码为:1 00000000 000 0000 0000 0000 0000。
(2) +∞ 和 −∞ 的表示
如果 阶码E = 255 并且尾数M全是0,则这个数的真值为±∞(同样和符号位有关)。
因此+∞的机器码为:0 11111111 000 0000 0000 0000 0000。
-∞的机器吗为:1 11111111 000 0000 0000 0000 0000。
(3)NaN(Not a Number)
如果 E = 255 并且 M 不是0,则这不是一个数(NaN)。
6.浮点数的精度和数值范围
6.1浮点数的数值范围
根据上面的探讨,浮点数可以表示-∞到+∞,这只是一种特殊情况,显然不是我们想要的数值范围。
以32位单精度浮点数为例,阶码E由8位表示,取值范围为0-255,去除0和255这两种特殊情况,那么指数e的取值范围就是1-127=-126到254-127=127。
(1)最大正数
因此单精度浮点数最大正数值的符号位S=0,阶码E=254,指数e=254-127=127,尾数M=111 1111 1111 1111 1111 1111,其机器码为:0 11111110 111 1111 1111 1111 1111 1111。
那么最大正数值:
这是一个很大的数。
(2)最小正数
最小正数符号位S=0,阶码E=1,指数e=1-127=-126,尾数M=0,其机器码为0 00000001 000 0000 0000 0000 0000 0000。
那么最小正数为:
这是一个相当小的数。几乎可以近似等于0。当阶码E=0,指数为-127时,IEEE754就是这么规定 1.0×2−127 近似为0的,事实上,它并不等于0。
(3)最大负数
最大负数符号位S=1,阶码E=1,指数e=1-127==-126,尾数M=0,机器码与最小正数的符号位相反,其他均相同,为:1 00000001 000 0000 0000 0000 0000 0000。
最大负数等于:
(4)最小负数
符号位S=0,阶码E=254,指数e=254-127=127,尾数M=111 1111 1111 1111 1111 1111,其机器码为:1 11111110 111 1111 1111 1111 1111 1111。
计算得:
6.2浮点数的精度
说道浮点数的精度,先给精度下一个定义。浮点数的精度是指浮点数的小数位所能表达的位数。
阶码二进制位数决定浮点数的表示范围,尾数二进制位数表示浮点数的精度。以32位浮点数为例,尾数域有23位。那么浮点数以二进制表示的话精度是23位,将0.000 0000 0000 0000 0000 0001转化为十进制等于 1223=0.00000011920928955078125 。所以,以十进制的精度为6位。
64位双精度浮点数的尾数域52位,同理可得,双精度浮点数的十进制的精度为 1252=2.2204460492503130808472633361816e−16 ,所以十进制的双精度浮点数的精度为15位。
转载自:http://blog.csdn.net/k346k346/article/details/50487127
IEEE754 详点相关推荐
- IEEE754详解(最详细简单有趣味的介绍)
序言: 博主个人认为本系列文章是目前博主看过的介绍"IEEE754",即浮点数的机器存储的最好的文章. 它比白中英老师的<计算机组成原理>, ...
- go语言基础之浮点数
go语言基础之浮点数 这里写目录标题 go语言基础之浮点数 小数的浮点表示法 IEEE754标准 32位单精度浮点数在内存中的存储方式 符号位: sign ,即图中蓝色的方块 偏移后的指数位: bia ...
- IEEE754浮点数格式详解
IEEE754浮点数格式详解 几乎所有计算机都支持二进制数据表示,即能直接识别二进制数据表示并具有相应的指令系统.通常采用的二进制定点数据表示主要有:符号数值.反码.补码以及带偏移增值码四种形式,其中 ...
- 2.3 《计算机组成原理》之浮点数的表示(基本格式、规格化[左规右规]、表示范围、IEEE754标准详解)
文章目录 0.思维导图 1.基本格式 2.规格化 3.表示范围 4.IEEE754标准 0.思维导图 1.基本格式 举个例子: 2.规格化 3.表示范围 运算结果大于最大正数时称为正上溢,小于绝对值最 ...
- 浮点数修约的法则c语言,IEEE754浮点表示法详解
前言 IEEE754是IEEE二进制浮点算术标准.这个标准定义了表示浮点数的常规值与非规格化值(denormal number),一些特殊值(infinity)和非数值(NaN), 以及这些数值的浮点 ...
- IEEE754标准表示浮点数(详解)
目录 1.IEEE754标准格式 2.IEEE754标准中的符号码 3.IEEE754标准中的阶码 4.IEEE754标准中的尾数 5.IEEE754标准的真值计算 6.十进制转化成IEEE754标准 ...
- IEEE-754单精度浮点类型详解(完结篇)
IEEE-754工业标准 前言 众所周知,计算机内部系统实际只能存储二进制数据,我们在计算机中所使用到的文档.图片.影音等数据,实际都是以二进制的数据形式存放在计算机的内存或者硬盘中,不管内存(内存条 ...
- IEEE-754 64位双精度浮点数存储详解
IEEE-754双精度浮点数 IEEE二进制浮点数算术标准(IEEE 754)规定了四种表示浮点数值的方式:单精确度(32位).双精确度(64位).延伸单精确度(43比特以上,很少使用)与延伸双精确度 ...
- IEEE754数据转换详解
IEEE二进制浮点数算术标准(IEEE 754)是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用.这个标准定义了表示浮点数的格式(包括负零-0)与反常值(denorma ...
最新文章
- 吴恩达Coursera机器学习 - Chapter 4 多变量线性回归
- 2020年python工资一般多少钱-2020年Python发展前景如何呢?
- Homebrew常用命令
- webView 点击连接如何不让跳转到系统的 浏览器
- PyQt5 技术篇-设置窗口置顶不生效问题原因,setWindowFlags()设置参数后不生效解决办法
- python发邮件主机找不到_Python 使用QQ邮箱发邮件
- 【微信开发】上传下载多媒体文件
- DropDownList and ListBox 两级联动菜单
- (56)FPGA条件选择有优先级(case)
- 自定义标签的使用jsp实例_JSP自定义标签示例教程
- 掌握好这几点方法学习Linux,一定比别人更快入门运维!
- html小作业--新闻栏目
- 不知道怎么把英文文档翻译成中文?手把手教你怎么操作
- 无线局域网和蜂窝移动网络_干货!无线AP覆盖系统解决方案
- Shell习题100例(2)
- 设置电子围栏 高德地图_Android 高德地图的使用, 根据手势拖动绘制电子围栏
- 合肥工业大学计算机信息检索报告,合肥工业大学计算机信息检索(图书馆资源利用)作业.doc...
- solidworks创新作业无限魔方
- 1004.选择结构习题:奇偶数判断
- 【搜索入门专题1】hdu1253 【BFS】 F - 胜利大逃亡