关于float和double类型能表示的数据范围和精度分析
来自教材《计算机组成原理》p16
float:6--7位
double:15--16位
意思就是double类型的数据,你确实能表达出很大的数字,但是其只有15位是精确的。
1、计算机中,因为需要计算电子的质量9*10^(-28)g和太阳的质量2*10^(33)g这样的大数据,需要引入一种新的方式来存取数据。
ps:一开始的方式只有定点数的表示方法,只能存纯小数或则纯整数,范围只有2^n
2、把32位的空间(float)分割成3部分,S、E、M表示符号位、阶码、尾数,分别分配1位、8位、23位
其中阶码代表数值的范围,尾数代表数值的精度。
阶码:8位,不用符号位,因为用了阶码的形式存取,也就是本来要表示-127---127的指数,我把他们同时加上127,那么新的数值就是0---254,这个时候,每次读取完后,真实值就是x = E - 127,基准数base = 2,也就是底数 = 2
尾数:用来存取浮点数,因为任何一个数都能表示成2^e.M的形式,这里就是存取M,所以尾数能表达多少,有效位就是多少
3、小数的标准形式:1.xxxx,

4、二进制运算:111.01011 * 2^4 = 1110101.1,相当于右移了四位
关于float和double类型能表示的数据范围和精度分析的更多相关文章
- 不要在精确计算中使用float和double类型
http://blog.csdn.net/androiddevelop/article/details/8478879 一 问题描述 float和double类型不能用于精确计算,其主要目的是为了科 ...
- Effective Java 第三版——60. 需要精确的结果时避免使用float和double类型
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- Sql的decimal、float、double类型的区别
三者的区别介绍 float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位) double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E ...
- 浮点型 float和double类型的内存结构和精度问题
首先引用一个例子在java中可能你会遇到这样的问题: 例:0.99999999f==1f //true 0.9999999f==1f //false 这是超出精度造成的,为了知道为什么会造成这样的问题 ...
- float和double类型的存储方式
Float double 类型在计算机的存储方式 计算机中只认识10的二进制数,那么该如何存储小数呢? 那么我们先看Floa类型: Float在计算机(32位)中是4个字节的,具体地:第一位为符号位0 ...
- 对于c语言int类型和float,以及double类型表示范围的计算
首先说一下我原来错误的认识 int是32个bit, 如果我们把第一位理解为符号位,那么很显然int的范围是-(2^31-1)~2^31-1 但是实际上我们都知道int的最小值是-2^31次.. 为什么 ...
- 字符串转换成float和double类型
double strtod(const char *nptr, char **endptr); float strtof(const char *nptr, char **endptr); long ...
- float 与 double 类型区别
https://www.runoob.com/w3cnote/float-and-double-different.html float 单精度浮点数在机内占 4 个字节,用 32 位二进制描述. d ...
- Java - Float与Double类型比较
https://blog.csdn.net/wcxiaoych/article/details/42806313
随机推荐
- 【Lintcode】003.Digit Counts
题目: Count the number of k's between 0 and n. k can be 0 - 9. Example if n = 12, k = 1 in [0, 1, 2, 3 ...
- scala新人佑门
scala语言 1. val和var val和var当前区别在于前者只能被赋值一次,就像java中的final,但是后者则可以随意覆盖: 2. Unit Unit返回代表空返回,类似于vo 3. 类型 ...
- 《TCP/IP详解卷一:协议》 概述
分层 TCP/IP协议族是一组不同层次上的多个协议的组合.TCP/IP通常被认为是一个四层次协议系统. 链路层(数据链路层或网络接口层):通常包括操作系统中的设备驱动程序和计算 ...
- AI-Info-Micron-Insight:在线购物算法的核心是强大的 DRAM
ylbtech-AI-Info-Micron-Insight:在线购物算法的核心是强大的 DRAM 1.返回顶部 1. 在线购物算法的核心是强大的 DRAM 网购已成为标准程序.你滚动浏览各种服装页面 ...
- ffmpeg 合并文件
ffmpeg文件合并 文件1.ts~ 100.ts 流媒体文件1.txt 格式 file .ts file .ts ... file .ts 命 令 (-vcodec copy -acodec ...
- openstack 创建镜像生成虚拟机不知道密码如何解决
背景: openstack juno版本,使用glance创建centos7镜像,然后生成虚拟机. 操作步骤: 首先获取镜像http://cloud.centos.org/centos/7/image ...
- <正则吃饺子> :关于Collections中 比较器的简单使用
在线文档地址: http://tool.oschina.net/apidocs/apidoc?api=jdk-zh sort public static <T extends Comparabl ...
- 转:在Linux上安装ant环境
1.从http://ant.apache.org 上下载tar.gz版ant 2.复制到/usr下 3.tar -vxzf apahce-ant-1.9.2-bin.tar.gz 解压 4.chow ...
- HTML5学习笔记(一)相关概率
HTML5的设计目的是为了在移动设备上支持多媒体. 声明:<!DOCTYPE html> 注意:对于中文网页需要使用 <meta charset="utf-8"& ...
- day03-CSS(1)
一 .Css概念 CSS 指层叠样式表 (Cascading Style Sheets)(级联样式表) Css是用来美化html标签的,相当于页面化妆. ◆样式表书写位置 二. 选择器 1. 写法 选 ...