float与double的范围和精度
1 范围
float和double的范围是由指数的位数来决定的。
float的指数位有8位,而double的指数位有11位,分布如下:
float:共32位
1bit(符号位)
8bits(指数位)
23bits(尾数位)
double:共 64位
1bit(符号位)
11bits(指数位)
52bits(尾数位)
于是,float的指数范围为-127~+128,而double的指数范围为-1023~+1024,并且指数位是按补码的形式来划分的。其中负指数决定了浮点数所能表达的绝对值最小的非零数;而正指数决定了浮点数所能表达的绝对值最大的数,也即决定了浮点数的取值范围。
float的范围为-2^128 ~ +2^128,也即-3.40E+38 ~ +3.40E+38;double的范围为-2^1024 ~ +2^1024,也即-1.79E+308 ~ +1.79E+308。
2 精度
float和double的精度是由尾数的位数来决定的。浮点数在内存中是按科学计数法来存储的,其整数部分始终是一个隐含着的“1”,由于它是不变的,故不能对精度造成影响。
float:2^23 = 8388608,一共七位,这意味着最多能有7位有效数字,但绝对能保证的为6位,也即float的精度为6~7位有效数字;
double:2^52 = 4503599627370496,一共16位,同理,double的精度为15~16位。
float与double的范围和精度相关推荐
- java中float、double和BigDecimal的精度问题(fastjson、Jackson以及实例化的方式)
java中float.double和BigDecimal的精度问题(fastjson.Jackson以及实例化的方式): 问题描述 java中如果使用float或double类型的数据初始化BigDe ...
- float和double的范围和精度
float与double的范围和精度 1 范围 float和double的范围是由指数的位数来决定的. float的指数位有8位,而double的指数位有11位,分布如下: float: 1bit(符 ...
- 【转】float与double的范围和精度
原文:http://blog.csdn.net/wuna66320/article/details/1691734 1 范围 float和double的范围是由指数的位数来决定的. float的指数位 ...
- float 范围 java_java float与double的范围和精度
1. 范围 float和double的范围是由指数的位数来决定的. float的指数位有8位,而double的指数位有11位,分布如下: float: 1bit(符号位) 8bits(指数位) 23b ...
- C/C++中float与double的范围和精度详解
float-单精度浮点型 double-双精度浮点型 float与double都是浮点类型,double的精度是float的俩倍,所以double比float存的数据更精确,占的空间也更大. 通常来说 ...
- java float 转double_将float转换为double而不会丢失精度
我发现转换为二进制表示更容易理解这个问题. float f = 0.27f; double d2 = (double) f; double d3 = 0.27d; System.out.println ...
- (转载)float与double中的精度问题
float与double的范围和精度 原文:http://blog.csdn.net/wuna66320/article/details/1691734 1 范围 float和double的范围是由指 ...
- MySQL FLOAT、DOUBLE、DECIMAL(小数类型)
MySQL 中使用浮点数和定点数来表示小数. 浮点类型有两种,分别是单精度浮点数(FLOAT)和双精度浮点数(DOUBLE):定点类型只有一种,就是 DECIMAL. 浮点类型和定点类型都可以用(M, ...
- 3、(小数类型)FLOAT、DOUBLE、DECIMAL
MySQL 中使用浮点数和定点数来表示小数. 浮点类型有两种,分别是单精度浮点数(FLOAT)和双精度浮点数(DOUBLE): 定点类型只有一种,就是 DECIMAL. 浮点类型和定点类型都可以用(M ...
最新文章
- 地图下载2之天超图瓦片格式
- leetcode 637. Average of Levels in Binary Tree | 637. 二叉树的层平均值(Java)
- MYSQL性能优化详解(二)
- CVPR2021 | 北航商汤耶鲁口头报告
- echarts标记线的样式_ECharts提示框组件指示器的线条样式
- jdbctemplate mysql 配置_Spring Boot 初级入门教程(十四) —— 配置 MySQL 数据库和使用 JdbcTemplate 测试...
- 用户名登陆时如何在后面加一个小红*_最后一个登陆框引起的血案
- 安防弱电智能化VISIO图标图例(几百个),让你的技术方案瞬间高大上起来
- 十八、可视化任务调度系统airflow
- Fedora 13 咪咕播放器
- 大数据日志分析系统-介绍
- CESM优化——Intel编译器安装OpenMPI4.0
- linux下网速监控 linux及android分网卡网速监控
- JavaScript 每日一题 #8
- 云智巡在连锁药店的巡检作用
- 手机显示服务器迁移中是什么意思,服务器迁移注意什么?什么是服务器迁移?...
- thinker board s debian系统安装配置
- 用的五大bug管理工具的优缺点和下载地址
- 平均风向风速计算(单位矢量法)
- DFS,BFS和迭代加深的联系与区别
热门文章
- 小白学python买什么书-小白如何高效率学习python?真心建议(附教程)
- python 科学计算基础教程电子版-自学Python 编程基础、科学计算及数据分析
- 零基础自学python看什么书-零基础学习Python那些书值得看
- python语法总结-Python and、or以及and-or语法总结
- 用python画玫瑰花教程-使用Python画一朵玫瑰花
- python使用for循环打印99乘法表-Python用for循环实现九九乘法表
- python有道api-Python3--批量爬取数据之调用有道api进行翻译
- python语言程序设计梁勇-Python语言程序设计(美-梁勇)第1章习题解答
- python免费试听-线上儿童编程免费试听-品质保障
- python的用途实例-python 星号(*)的多种用途