计算机中浮点数的存储

1.浮点数

浮点数(floating point)这个名字其实就来自于:"小数点可以浮动(移动)"。

double类型的最大有效位数为16位。"有效位数(significant digits)" 指的是数字中能被精确区分的位数。

指数位的308是怎么算的?

指数位是 11 位,即共有:

复制代码
2¹¹ = 2048 种可能取值(0 ~ 2047)

其中:

  • 全 0(0)用于表示 "非规格化数(denormalized number)"

  • 全 1(2047)用于表示 "无穷大(∞)或 NaN"

  • 其它(1 ~ 2046)才是真正的指数范围

IEEE 754 使用一个"偏移量(bias)"来存储指数:

复制代码
真实指数 = 存储的指数值 - 1023

那么,
最小有效指数值 = 1 - 1023 = -1022
最大有效指数值 = 2046 - 1023 = +1023

那么2^1023 约等于 10^308次方。

"308" 是由 double 的 11 位指数表示范围(−1022 到 +1023)转换成 10 的指数得出的近似范围。

2.指数和尾数

复制代码
1.23 × 10²   = 123
1.23 × 10⁵   = 123000
1.23 × 10⁻³  = 0.00123

"1.23" 这部分对应 尾数位

"10² / 10⁵ / 10⁻³" 这部分对应 指数位

相关推荐
孟健44 分钟前
出海别再 1:1 抄站了:《毛选》给我的 6 条底层思考
ai编程·产品·创业
天天扭码1 小时前
前端如何实现RAG?一文带你速通,使用RAG实现长期记忆
前端·node.js·ai编程
程序员鱼皮7 小时前
全面封禁 Cursor!又一家大厂出手了
程序员·ai编程·cursor
树獭叔叔8 小时前
模型编辑 vs 参数微调:给零算法基础AI从业者的讲解
aigc·openai·ai编程
用户47949283569158 小时前
别搞混了!MCP 和 Agent Skill 到底有什么区别?
aigc·agent·ai编程
小徐_23339 小时前
Gemini 3做粒子交互特效很出圈?拿 TRAE SOLO 来实现一波!
前端·ai编程·trae
云闲不收12 小时前
AI编程系列——git-worktree并行开发
git·ai编程
undsky12 小时前
【RuoYi-SpringBoot3-Pro】:接入 AI 对话能力
spring boot·ai编程
量子位12 小时前
PPIO姚欣:AI正在进入自主行动与创造时代,智能体需要全新的操作系统|MEET2026
aigc·ai编程
king王一帅12 小时前
告别 AI 输出的重复解析:正常 markdown 解析渲染也能提速 2-10 倍以上
前端·javascript·ai编程