计算机中浮点数的存储

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

相关推荐
我的offer在哪里3 小时前
Hugging Face:让大模型触手可及的魔法工厂
人工智能·python·语言模型·开源·ai编程
威哥爱编程3 小时前
2026年的IT圈,看看谁在“裸泳”,谁在“吃肉”
后端·ai编程·harmonyos
undsky_5 小时前
【n8n教程】:RSS Feed Trigger节点,玩转RSS订阅自动化
人工智能·ai·aigc·ai编程
不会用AI的老炮6 小时前
【AI coding 智能体设计系列-07】规约驱动:让交付可复现的Spec工作流
人工智能·ai·ai编程
AI炼金师6 小时前
claude code 2.1.0 更新日志
ai编程·vibecoding·claudecode
魁首8 小时前
OpenAI Codex 深入剖析:下一代 AI 编程助手的架构与原理
前端·openai·ai编程
初次攀爬者9 小时前
RAG核心升级|多LLM模型动态切换方案
人工智能·后端·ai编程
KaneLogger9 小时前
AI 使用经验分享:从混沌到秩序的提示词工程
aigc·ai编程
腾讯云云开发10 小时前
微信发布AI小程序成长计划:免费云开发资源+1亿token额度!
微信小程序·ai编程·小程序·云开发