当前位置: 首页 > news >正文

中国数据统计网站网站开发课程软件

中国数据统计网站,网站开发课程软件,智能建站,国内重大新闻10条文章目录 一、基础知识1.1 十进制与二进制的转换i 十进制整数转二进制ii 十进制小数转二进制 1.2 科学记数法1.3 计算机中的浮点数科学记数法 二、C语言的浮点数2.1 浮点数表示方法2.2 浮点数的存储方式IEEE 754标准 2.3 举例子i 正指数ii 负指数 浮点数的大小范围 一、基础知识…

文章目录

  • 一、基础知识
    • 1.1 十进制与二进制的转换
      • i 十进制整数转二进制
      • ii 十进制小数转二进制
    • 1.2 科学记数法
    • 1.3 计算机中的浮点数科学记数法
  • 二、C语言的浮点数
    • 2.1 浮点数表示方法
    • 2.2 浮点数的存储方式
      • IEEE 754标准
    • 2.3 举例子
      • i 正指数
      • ii 负指数
    • 浮点数的大小范围

一、基础知识

1.1 十进制与二进制的转换

i 十进制整数转二进制

辗转除二方向取余法:把十进制数字辗转除以2直到商为0为止,然后反向(由下往上读)读取余法.

例如:十进制17转换为二进制

17/2 = 8  ... 1
8/2 = 4   ... 0
4/2 = 2   ... 0
2/2 = 1   ... 0
1/2 = 0   ... 1

把得到的余数由下往上读,十进制17的二进制表示形式为 10001

ii 十进制小数转二进制

十进制的小数乘以2,取乘积的整数部分作为二进制的一位,乘积的剩余小数继续乘以2,直至不存在剩余小数为止。
即:十进制的小数乘以2,记录下乘积的整数部分,接着判断乘积是否含有小数,若含有小数,把小数部分继续乘以2,在积累下乘积的整数部分,直到乘积是整数为止。

例如:十进制0.25可以转换为二进制

0.25 x 2 = 0.5  00.5 x 2 = 1     1

故十进制0.25 的二进制表示形式 01

例如:十进制0.2可以转换为二进制

0.2 x 2 = 0.4 	00.4 x 2 = 0.8   00.8 x 2 = 1.6   10.6 x 2 = 1.2   10.2 x 2 = 0.4   00.4 x 2 = 0.8   00.8 x 2 = 1.6   1
.........(乘积永远也得不到整数)

故十进制0.2 的二进制表示形式 0011001....,这也是浮点数在计算机中存储会出现精度丢失的原因。

1.2 科学记数法

科学记数法是一种记数的方法。把一个数表示成a与10的n次幂相乘的形式(1≤|a|<10,a不为分数形式,n为整数),这种记数法叫做科学记数法。

例如:19971400000000=1.99714×10^13。计算器或电脑表达10的幂是一般是用E或e,也就是1.99714E13=19971400000000。

1.3 计算机中的浮点数科学记数法

浮点数:顾名思义是指 小数点可以任意浮动的数字。

浮点数和整数有所不同,那么在计算机中,是如何存储浮点数的呢?

我们引入科学记数法的概念:科学记数法是指把一个数字表示成a与10的n次幂相乘的形式。在我们用科学记数法记录较大的或较小的数字时,可以大大减少记录数字所需要的空间和时间。

在计算机中,浮点数的存储方式与科学记数法很相似,它把一个数字表示成了a与2的n次幂相乘的形式

如:8.25  换算成二进制 (方法是:整数部分除二取余,小数部分乘二取整)8 -> 10000.25 -> 018.25  的二进制是 1000.01再用科学计算法表示1.00001 * 2^3任何小数都可以用 1.xxxx * 2^n表示1和小数点和指数2都是一样,xxxxx(尾数部分) 和n(指数部分)不一样的所以计算机中存  符号位 ,尾数部分,指数部分就可以了

二、C语言的浮点数

2.1 浮点数表示方法

  1. 一般表示法
    在这里插入图片描述
  2. 指数表示法
    在这里插入图片描述
  3. 十六进制指数表示法

2.2 浮点数的存储方式

计算机中的浮点数的存储方式遵循IEEE 754标准,存储格式分为三部分:符号部分、尾数部分(0.1 <= 尾数 < 1)和指数部分。

IEEE 754标准

IEEE 754标准采用的浮点数的格式:
在这里插入图片描述
ms为符号位,表示浮点数的符号。(1为负数,0为正数)
E为指数部分,需加上127偏移量。
M是尾数部分,尾数指小数点后面的部分。注意:在对阶规格化后,因为小数点前面的整数部分必须为1,所以IEEE754标准不会存储这个1,即指存小数点后的数值)

IEEE 754标准规定常用的浮点数格式有短浮点数(单精度、float)、长浮点数(双精度、double型)、临时浮点数。

短浮点数数符占1位;阶码占8位,以2为底,用移码表示,阶码偏置值为127(阶码全1表示无限大,E的范围是1~254,空出全0表示非规格化数);尾数部分为23位。
在这里插入图片描述

长浮点数数符占1位;阶码占11位,以2为底,用移码表示,阶码偏置值为1023(阶码全1表示无限大,E的范围是1~2046,空出全0表示非规格化数);尾数部分为52位。
在这里插入图片描述

2.3 举例子

i 正指数

十进制单精度浮点数8.25的二进制表示是怎么样的呢?如下

我们由上可知,十进制8.25在计算机中的科学记数法的表示形式是:1.00001 * 2^3
符号部分为0,指数部分为3 + 127,尾数部分为00001

float num = 8.25;符号位		指数部分		尾数部分float类型 	1bit		 8bit		 23bit8.25    0			 3			 00001符号位 :1为负数,0为正数指数部分: 3+127		1000 0010尾数部分 00001 低位补0   00001 000000000...000008.25  在计算机中存储的形式是 : 0 1000 0010 00001.......000000

在这里插入图片描述

ii 负指数

十进制单精度浮点数0.2的二进制表示是怎么样的呢?

首先将十进制数0.2转换为二进制数:

0.2*2 = 0.4 	...0
0.4*2 = 0.8 	...0
0.8*2 = 1.6 	...1
0.6*2 = 1.2 	...1
0.2*2 = 0.4	 	...0
0.4*2 = 0.8 	...0
0.8*2 = 1.6 	...1
.......(loop)由上,得到十进制数0.2的二进制数为 0.00110011001.... = 1.10011001....*2^(-3)

十进制2.25在计算机中的科学记数法的表示形式是:1.10011001 * 2^(-3)
符号部分为0,指数部分为-3 + 127,尾数部分为10011001...

float num = 0.2;符号位		指数部分		尾数部分float类型 	1bit		 8bit		 23bit0.2     0			-3			10011001...符号位 :0指数部分: -3+127		0111 1100尾数部分 10011001...无限循环    100110011001100110011000.2  在计算机中存储的形式是 : 0 0111 1100 10011001100110011001100

在这里插入图片描述
这里不知道为什么转换器中尾数的最后一位为1,可能是四舍五入吧。

大家可以通过转换工具验证其他浮点数的转换结果:IEEE754浮点数二进制转换工具

浮点数的大小范围

单精度类型float
阶码的范围是 -126~128, 这个是IEEE-754标准中定义的

我们可以通过明示常量获取。

#include<stdio.h>
#include <float.h>int main()
{printf("float limit min:%e,max:%e\n",FLT_MIN,FLT_MAX);return 0;
}

所以floa单精度类型的浮点数t最小值为 2-126 = 1.175494E-38,最大值为2128 = 3.4028E38

http://www.sczhlp.com/news/60063/

相关文章:

  • 凡科建的网站可以做seo吗oa系统网页版
  • 营销型网站建设 上海wordpress页面制作
  • 手机做服务器建网站建e室内设计网玄关
  • 数据结构板子合集
  • Word题库转Excel常用代码
  • 四平网站公司做药材生意的网站
  • 漳州网站开发去博大钱少a做废品交易看什么什么网站
  • 中小企业怎么优化网站重庆网站设计哪家公司好
  • 企业网站源代码下载自己做网站视频教学
  • 站长网站工具wordpress播放器问题
  • 做设计用的素材下载网站有哪些店面设计的重要性
  • 【图论】CF2110D Fewer Batteries
  • 。。。。。
  • 做外卖有哪些网站dw网站模版
  • 合肥网站建设代理商湖南优化公司
  • 做网站需要什么配置服务器深圳新恒基建设公司
  • 网站统计帮哪个好荣成市城乡建设局网站
  • 网站首页缩略图 seo网站留言系统编写代码
  • 电子商务网站自助建站鲜花网站建设规划
  • 优化网站关键词排名软件wordpress仿36kr模板
  • wordpress仿站 技术html在线编辑器网页手机
  • 英文外贸网站模板怎么注册微网站吗
  • 网站超级推广沈阳百度首页优化
  • 在Next.js中集成swagger文档
  • 2023江西icpc排名
  • 网站建设山东聚搜网络一x台州智能模板建站
  • 做兼职编辑的网站wordpress页面.html
  • 岳阳市网站建设推广开发小程序需要多久
  • 宜布网网站谁做的平台推广计划
  • 城乡与建设部网站王也踏青图