社区
C++ 语言
帖子详情
double型变量的有效数字与取值范围怎么理解
sysabod
2009-02-22 11:55:51
我的书上这样写double型的有效数字是15~16位,数值范围-1.7×10^-308~1.7*10^308,那么请问15~16位的有效数字位数怎么能表示那么大的数值呢?
...全文
1907
10
打赏
收藏
double型变量的有效数字与取值范围怎么理解
我的书上这样写double型的有效数字是15~16位,数值范围-1.7×10^-308~1.7*10^308,那么请问15~16位的有效数字位数怎么能表示那么大的数值呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sysabod
2009-03-03
打赏
举报
回复
[Quote=引用 3 楼 waizqfor 的回复:]
引用楼主 sysabod 的帖子:
我的书上这样写double型的有效数字是15~16位,数值范围-1.7×10^-308~1.7*10^308,那么请问15~16位的有效数字位数怎么能表示那么大的数值呢?
一般都是用
x * 10^n 这种表示方法 任何一个数 都可以表示成一个数 乘以10的N次方的形式 也就是科学记数法
这样表示 多大的数都可以了
[/Quote]那假设我的数是1236548799654711236547788665212,那请问各位这该怎么用有效位只有15~16位的科学计数法表示。
sxbwelcome
2009-02-23
打赏
举报
回复
有效位只决定精度,而数值范围主要取决于阶码的位数
sxbwelcome
2009-02-23
打赏
举报
回复
这个要看你的c语言中对于浮点数的编码规则,即多少位存储尾数,多少位存储阶码,根据这些才能推导出来
yinbinux
2009-02-23
打赏
举报
回复
指的是用二进制表示的位,比如说4个有效位可以表示16个数,范围是0-15
waizqfor
2009-02-23
打赏
举报
回复
[Quote=引用楼主 sysabod 的帖子:]
我的书上这样写double型的有效数字是15~16位,数值范围-1.7×10^-308~1.7*10^308,那么请问15~16位的有效数字位数怎么能表示那么大的数值呢?
[/Quote]
一般都是用
x * 10^n 这种表示方法 任何一个数 都可以表示成一个数 乘以10的N次方的形式 也就是科学记数法
这样表示 多大的数都可以了
九桔猫
2009-02-23
打赏
举报
回复
还是有时间看下IEEE 浮点数标准的好
bfhtian
2009-02-23
打赏
举报
回复
一部分位表示有效位,一部分表示指数
zhuxueling
2009-02-23
打赏
举报
回复
1的后面如果有1万个0,
你可以用: 1,1万, 就能表示了。
如果是123后面有一万个0,
就可以用: 1.23, 1万零2.
浮点计数也差不多这么回事。
arong1234
2009-02-22
打赏
举报
回复
例如1.7 * 10 ^308就是一个很大的数,它的有效数字位数是2,你说2个十进制有效位能不能表示这个数?:)
arong1234
2009-02-22
打赏
举报
回复
科学计数法是用
a * 10^k表示的,a是一个纯小数,它的位数就是有效位数
而k表示这个浮点数的放大因子,k可以范围很大,使得这个数变动范围很大
MySQL 数据类
型
和运算符
Re: MySQL 数据类
型
和运算符 ============================= # 数据类
型
整数类
型
:五种 TINY SMALL MEDIUM INT BIG 浮点和定点小数类
型
:三种 FLOAT
DOUBLE
DECIMAL 日期与时间数据类
型
:五种 YEAR -1 字符串类
型
...
float和
double
取值范围
最近在复习的时候发现基础太薄弱,对于float和
double
虽然了解所占字节数,但不知道他们的
取值范围
是多少,这对参加大厂笔试题时是十分不利的 1.八种数据类
型
的分类如下: 第一类:整
型
byte short int long 第二类...
Float/
Double
内存结构分析,
取值范围
、有效位数与内存结构的关系详解(
取值范围
如何得出?)
偶然间看到float的
取值范围
是-3.4*10^38到3.4*10^38,然后有效位数是6位或者7位(和编译器有关),突发奇想,想知道float和
double
的范围和有效位数是如何计算出来的,了解了一下,大概做个总结。首先说一下Float。
c语言中
double
型
变量
的定义和存储(包含二进制到十进制数的转化过程)
在这个例子中,我们将
double
型
变量
num的内存地址转换为无符号长整
型
指针p,然后按字节输出p中每个元素的二进制表示。可以看到,输出结果与IEEE 754标准的存储格式一致。
关于float/
double
的
取值范围
、精度和表示
1.float和
double
的范围和精度 float和
double
的范围是由指数的位数来决定的。float的指数位有8位,而
double
的指数位有11位,分布如下: float:1bit(符号位)+8bits(指数位+23bits(尾数位)
double
:1bi...
C++ 语言
64,641
社区成员
250,579
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章