计算机中浮点数的存储

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⁻³" 这部分对应 指数位

相关推荐
我是苏苏8 分钟前
Agent 开发实战 :C#实现语义检索!向量数据库Qdrant的下载安装及调试步骤
c#·ai编程
小白要生发16 分钟前
带你从 0 到 1 用 golang 手写一个 claude code
agent·ai编程
badhope18 分钟前
Token 变成 KPI:大厂发 22 万「Token 套餐」,程序员开始自费上班
ai编程
plainGeekDev24 分钟前
Harness 七层解剖:从 Instructions 到 Observability
aigc·ai编程·claude
颜进强35 分钟前
从零搭一套 WorkBuddy Skill 骨架:调接口 → 生成 HTML 报告的分层设计与流转拆解
前端·后端·ai编程
二炮手亮子1 小时前
使用云服务+hermes+mino模型 我用微信操控服务器自己编程并部署实操
java·语言模型·ai编程
沉默王二1 小时前
Codex 最新焚决发布,快!
gpt·agent·ai编程
VIP_CQCRE1 小时前
在 VS Code / Cursor / Windsurf 中接入 Ace Data Cloud:OpenCode IDE Extension 实战配置
ai编程·opencode·acedatacloud
秋天的一阵风1 小时前
🤖 AI写代码越跑越快,项目组件却越来越乱?一套工程闭环根治重复造轮子 ⚡
前端·面试·ai编程
陈鋆1 小时前
Spring AI Framework (六:「任务编排 + 成本仪表盘 + 轨迹评估」的 Agent 平台)
spring·ai·ai编程