3个回答
展开全部
一、指代不同
1、单精度:是指计算机表达实数近似值的一种方式。
2、双精度:此数据类型与单精度数据类型(float)相似,但精确度比float高。
二、范围不同
1、单精度:范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38 。
2、双精度:双精度型占8 个字节(64位)内存空间,其数值范围为-1.79769313486232E308 到1.79769313486232E308。
三、特点不同
1、单精度:应用广泛,而一些低成本的单片机系统中不具备数学运算的协处理器硬件,因而在在不同系统中,根据硬件特性对浮点数的软件实现进行了相应调整和简化。
2、双精度:同数值型比,它能提供更高的数值精度,采用固定存储长度的浮点数形式,每个双精度浮点型数据占8个字节。与数值型数据不同,它的小数点位置是由输入的数据值来决定的,并且只能用于表中的字段。
参考资料来源:百度百科-单精度
参考资料来源:百度百科-双精度浮点型
展开全部
IEEE单精度格式具有24位有效数字,并总共占用32 位。IEEE双精度格式具有53位有效数字精度,并总共占用64位。
说明:基本浮点格式是固定格式,相对应的十进制有效数字分别为7位和17位。基本浮点格式对应的C/C++类型为float和double。
说明:基本浮点格式是固定格式,相对应的十进制有效数字分别为7位和17位。基本浮点格式对应的C/C++类型为float和double。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
单精度实型变量和双精度实型变量的根本区别在于所存储数据的内存空间大小不同。
浮点数的存储采用的是IEEE754标准,该标准采用二进制科学记数法表示小数,规定:
单精度实型 占4字节,共32位。第一位表示符号位,接下来8位表示指数位,剩余的23位表示小数位。
2^23=8388608 , 这样单精度浮点数能表示的有效数据只能是6-7位,即:7位以上的数据,无法在单精度中进行精确存储了,只能丢弃部分数据。
双精度实型 占8字节,共64位。第一位表示符号位,接下来11位表示指数位,剩余的52位表示小数位。
2^52=4503599627370496, 这样双精度浮点数能表示的有效数据只能是15-16位,即:16位以上的数据,无法在双精度中进行精确存储了,只能丢弃部分数据。
虽然单双精度类型数据精度有限,但因其表示数据的格式特点,导致其表示数据的范围非常大:
单精度:可以表示的数字的绝对值范围大约是: 1.401298E-45 到 3.402823E38 。
双精度:可以表示的数字的绝对值范围大约是:1.7E-308 ~ 1.7E308。
浮点数的存储采用的是IEEE754标准,该标准采用二进制科学记数法表示小数,规定:
单精度实型 占4字节,共32位。第一位表示符号位,接下来8位表示指数位,剩余的23位表示小数位。
2^23=8388608 , 这样单精度浮点数能表示的有效数据只能是6-7位,即:7位以上的数据,无法在单精度中进行精确存储了,只能丢弃部分数据。
双精度实型 占8字节,共64位。第一位表示符号位,接下来11位表示指数位,剩余的52位表示小数位。
2^52=4503599627370496, 这样双精度浮点数能表示的有效数据只能是15-16位,即:16位以上的数据,无法在双精度中进行精确存储了,只能丢弃部分数据。
虽然单双精度类型数据精度有限,但因其表示数据的格式特点,导致其表示数据的范围非常大:
单精度:可以表示的数字的绝对值范围大约是: 1.401298E-45 到 3.402823E38 。
双精度:可以表示的数字的绝对值范围大约是:1.7E-308 ~ 1.7E308。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询