单/双精度为什么叫单/双精度 有什么由来,(开个玩笑:以后是不是还有三/四精度 哈哈)它为什么这么命名?
作者&投稿:宰迹 (若有异议请与网页底部的电邮联系)
简单的说,就是小数位数的不同,编程中双精度的精度高,不过一般用双精度,双精度占的内存大,
比如,11.234567这个就是单精度,单精度有效位数是前七位,当然不包括小数点,但是小数点后面默认保留6位小数,如果不够6位用0填充。
12.23456789446547这个就是双精度,双精度默认保留14位小数。
双精度比单精度表示浮点型(也就是小数)更精确一些,比如在需要高精度数据的地方就可以用双精度。其它的前面都说了 都很对。
单精度数,是指计算机表达实数近似值的一种方式。VB中,Single(单精度浮点型)变量存储为 IEEE 32 位(4 个字节)浮点数值的形式,它的范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38 。
双精度浮点数(Double)用来表示带有小数部分的实数,一般用于科学计算,用8个字节(64位)存储空间,其数值范围为1.7E-308~1.7E+308,双精度浮点数最多有15或16位十进制有效数字,双精度浮点数的指数用“D”或“d”表示。
单精度,也就是 float ,在 32 位机器上用 4 个字节来存储的;而双精度double是用 8 个字节来存储的,这是他们最本质的区别。
在IEEE754标准指定时,计算机中,32位机最为普遍,所以4字节为单。即使在现在32位机还是可以不少的。
叶岭西洛: 单精度和双精度数值类型最早出现在C语言中(比较通用的语言里面),在C语言中单精度类型称为浮点类型(Float),顾名思义是通过浮动小数点来实现数据的存储.这两个数据类型最早是为了科学计算而产生的,他能够给科学计算提供足够...
铜鼓县13451457267: 单精度与双精度的区别 - ?
叶岭西洛: 单精度与双精度的区别: 1、单精度,也就是 float ,在 32 位机器上用 4 个字节来存储的;而双精度double是用 8 个字节来存储的. 2,单精度和双精度在计算机中的表示格式虽一样,但由于位数存储位不同,他们能表示的数值的范围就不同,...
铜鼓县13451457267: 单双精度数有什么区别? - ?
叶岭西洛: 1)单精度就是用float, 双精度就是用double. 2)float定义的变量占4个字节,双精度定义的变量占8个字节. 3)双精度能表示的数更广,单精度相对较窄. 譬如10的负30次方什么的,不过我们一般用不到那么精确的数,所以不是做科研的话,单精度和双精度对我们来说,表示的数的准确度是一样的. 4)还有就是它们在机器中存储时用的转换格式不同.譬如3.1用单精度在机器中存储和用双精度存储时,最终在机器里存放的格式是完全不一样的,这里面有一套很复杂的转换公式.
铜鼓县13451457267: c语言里单精度和双精度怎么理解? - ?
叶岭西洛: 单精度和双精度都指浮点数,就是带小数点的数 只不过单精度和双精度是为了区分有效数而已(也就是精确度),它的提法完全符合科学计算中对于数值的观念. 比如:单精度/双精度数值类型从一开始设计的时候,就不是一个准确的数值类型,他只保证在他这个数值类型的精度之内是准确的,精度之外则不保证.
铜鼓县13451457267: C语言中的单双精度具体指什么 - ?
叶岭西洛: 单精度和双精度是针对浮点数来说的,浮点数由两部分组成阶符和阶码,也就相当于科学计数法的小数和次幂,如果小数位数越多当然精度越高,在浮点数里面相当于阶符和阶码的位数更长一点.对于float来说一般是32为来表示,双精度double的话会用64位来表示
铜鼓县13451457267: C语言中单双精度数表示什么意思? - ?
叶岭西洛: 单精度表示的数的个数少,小数精度低双精度表示的数的个数多,小数精度高
铜鼓县13451457267: 单精度和双精度的区别 - ?
叶岭西洛: 单精度float和双精度double都属浮点数 一个单精度浮点数占4个字节(32位) 一个双精度浮点数占8个字节(64位) 1、所以双精度浮点数所能表示的数字范围比单精度大得多,编写时应注意到自己要用到的数字是否超出了单精度所能表示的范...
铜鼓县13451457267: c语言单精度和双精度的区别 - ?
叶岭西洛: 双精度比单精度表示的位数大 精确的位数多,简单地说, foat表示的小数点位数少,double能表示的小数点位数多! 如 float: 1.0001 double:1.0000000001Float为单精度,内存中占4个字节,有效数位是7位(因为有正负,所以不是8位),在我...
铜鼓县13451457267: 计算机C语言的单双精度是什么啊,怎么区别 - ?
叶岭西洛: 区别就是它所能存储的数值范围大小不同, 双精度变量能存储比单精度变量更大或更小的值. -- -- float 能赋值 +/- 3.40282e+038 -- -- double能赋值 +/- 1.79769e+308
铜鼓县13451457267: C语言什么是单精度、双精度? - ?
叶岭西洛: C语言中用float描述单精度,用double描述双精度.为什么要把数据分成单双精度呢?我们生活中通常用到数据时会说精确到小数点后几位,计算机存储数据时精确度越高,占用内存空间越大,根据精确度的需要,如果你选用单精度数据,是说你让电脑用较少的空间存放数据,表现为精确到小数点后5位,并且第五个小数还是四舍五入得到的,如果你用双精度定义数据,是说你用较多的空间存放同一个数,表现为小数点后较多的位数,同样最后一位仍然是四舍五入得到.这就是区分单双精度的原因.