float有效数字为6-7位指的是小数点后的吗?
来源:学生作业帮 编辑:神马作文网作业帮 分类:数学作业 时间:2024/11/12 23:43:20
float有效数字为6-7位指的是小数点后的吗?
嗯 是的
由于float的指数部分对应的指数范围为-128~128,所以取值范围为:
-2^128到2^128,约等于-3.4E38 — +3.4E38
精度(有效数字)主要看尾数位:
float的尾数位是23bit,对应7~8位十进制数,所以有效数字有的编译器是7位,也有的是8位
再问: 谢谢。不过还有一点不解的是为什么尾数位是23位?浮点数不是按小数部分和指数部分分的吗?
再答: 这个比较复杂,建议你找一下IEEE754标准看一下。 这个简单说一下吧: 在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)
再问: 厉害!那第32位跑哪去了呢?为什么会有第0位?然后为什么没有小数位呢?光有符号位、指数位、尾数位足够确定一个数吗?我怎么觉得不能
由于float的指数部分对应的指数范围为-128~128,所以取值范围为:
-2^128到2^128,约等于-3.4E38 — +3.4E38
精度(有效数字)主要看尾数位:
float的尾数位是23bit,对应7~8位十进制数,所以有效数字有的编译器是7位,也有的是8位
再问: 谢谢。不过还有一点不解的是为什么尾数位是23位?浮点数不是按小数部分和指数部分分的吗?
再答: 这个比较复杂,建议你找一下IEEE754标准看一下。 这个简单说一下吧: 在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)
再问: 厉害!那第32位跑哪去了呢?为什么会有第0位?然后为什么没有小数位呢?光有符号位、指数位、尾数位足够确定一个数吗?我怎么觉得不能
float有效数字为6-7位指的是小数点后的吗?
VC中float和double 型的数字位数是怎么规定弄呢?有效数字是6或7位?为什么总是在小数点后有6位呢?
c语言中的float数据类型的有效数字为什么是6~7位
为什么float型的有效数字为6-7位,是六位还是七位?除去符号为应该是7位吧?书上为什么说6-7位.
%f的输出格式是7位有效数字还是小数点后面六位?
C++:设变量f为float型,将小数点后第3位四舍五入,保留小数点后两位的表达式为
C++编程 按下列级数计算e的近似值,是e有小数点后1000位有效数字.
小数点后第五位叫什么,小数点后最后一位是0算有效数字嘛?
把7分之6化成分数,小数点后第100位的数字是几
小数点后第2005位上的数字是几?
3.145循环小数点后1000为位上的数字是
派的小数点后50位数字