float double精度和取值范围
来源:互联网 发布:javascript json类型 编辑:程序博客网 时间:2024/05/22 10:40
在IEEE754标准中进行了单精度浮点数(float)和双精度数浮点数(double)的定义。float有32bit,double有64bit。它们的构成包括符号位、指数位和尾数位。
这些位的构成如下:
种类-------符号位-------------指数位----------------尾数位----
float---第31位(占1bit)---第30-23位(占8bit)----第22-0位(占23bit)
double--第63位(占1bit)---第62-52位(占11bit)---第51-0位(占52bit)
取值范围主要看指数部分:
float的指数部分有8bit(2^8),由于是有符号型,所以得到对应的指数范围-128~128。
double的指数部分有11bit(2^11),由于是有符号型,所以得到对应的指数范围-1024~1024。
由于float的指数部分对应的指数范围为-128~128,所以取值范围为:
-2^128到2^128,约等于-3.4E38 — +3.4E38
精度(有效数字)主要看尾数位:
这些位的构成如下:
种类-------符号位-------------指数位----------------尾数位----
float---第31位(占1bit)---第30-23位(占8bit)----第22-0位(占23bit)
double--第63位(占1bit)---第62-52位(占11bit)---第51-0位(占52bit)
取值范围主要看指数部分:
float的指数部分有8bit(2^8),由于是有符号型,所以得到对应的指数范围-128~128。
double的指数部分有11bit(2^11),由于是有符号型,所以得到对应的指数范围-1024~1024。
由于float的指数部分对应的指数范围为-128~128,所以取值范围为:
-2^128到2^128,约等于-3.4E38 — +3.4E38
精度(有效数字)主要看尾数位:
float的尾数位是23bit,对应7~8位十进制数,所以有效数字有的编译器是7位,也有的是8位
对于整型常量,一般编译器默认为int;对于浮点型常量,一般编译器默认为double类型。
sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long)
阅读全文
0 0
- float double精度和取值范围
- float double精度和范围
- float double范围和精度
- Java中float/double取值范围与精度
- Java--float/double取值范围与精度
- 12. Float和Double取值范围
- float和double的范围和精度
- float和double的范围和精度
- float和double的范围和精度
- float和double的范围和精度
- float 和 double的精度和范围
- float和double的范围和精度
- double 和float的范围和精度
- float与double的范围和精度
- float与double的范围和精度
- float与double的范围和精度
- float与double的范围和精度
- float与double的范围和精度
- [v9] v9站群模式下,子站点栏目和文章ur动态时l域名错误显示为主站链接的解决办法
- shiro之roles实现or关系的角色过滤
- jquery中attr和prop的区别
- 用LDA处理文本(Python)
- Leftmost Digit
- float double精度和取值范围
- App 优化(三)未完成
- java多线程之并行和并发
- sublime安装svn提交
- ztree随笔
- SqlServer2012清除日志文件
- 手机采用L形主板(譬如iPhone)比长方形主板的优点
- 浅谈 Vue 项目优化
- hibernate逆向工程时出现Reading schema error解决