计算机中浮点数的存储

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

相关推荐
Apifox.3 小时前
如何在 Apifox 中通过 AI 一键生成几十个测试用例?
人工智能·程序人生·ai·测试用例·ai编程
飞哥数智坊7 小时前
Cursor 不设限:竟然直接支持 Claude Code 配置
ai编程·claude·cursor
阿部多瑞 ABU16 小时前
新增模块介绍:教师代课统计系统(由社区 @记得微笑 贡献)
开源·html·ai编程
孟健17 小时前
产品做完了不会推广?这份海外冷启动渠道清单,建议收藏!
ai编程
袋鼠云数栈UED团队20 小时前
智能体分析
aigc·ai编程
闲不住的李先森21 小时前
深入解析 Cursor 规则:为团队打造统一的 AI 编程规范
前端·ai编程·cursor
腾讯云云开发21 小时前
极限AI Coding,腾讯云“黑客松”大赛回顾(内有作品开源)
openai·ai编程·小程序·云开发
学习的周周啊1 天前
一人AI自动化开发体系(Cursor 驱动):从需求到上线的全流程闭环与实战清单
运维·人工智能·自动化·ai编程·全栈·devops·cursor
Apifox1 天前
如何在 Apifox 中通过 AI 一键生成几十个测试用例?
前端·后端·ai编程