浮点数存储及误差
前提知识十进制小数表示二进制小数表示以此类推。。。浮点数float在计算机的存储IEEE 754 单精度浮点数32 位的结构符号位1 位表示正负。指数位8 位范围为 \(-126 \sim 127\)偏置值 127。尾数位23 位隐含最高位的 1实际表示 24 位有效数字\(2^{24}\) 种组合。示例例 4.25 这个浮点数先将其转换为二进制即 100.01然后再用二进制科学计算法表示,转换过程为100.01 - 1.0001 ^ 2 - 1.0001 ^ 10最终十进制4.25的二进制为 1.0001^10。那么其中的 1.0001 是尾数存放在尾数位10 二进制为 指数存放在指数位符号为0代表正数。存放在符号位整数位表示所以用这种表示方法计算机能从0开始连续精确表示的最大整数值就是1.111...111 小数部分23个1 ≈ 2 * 2^23 ≈ 2 * 2^23 2^24近似等于 将小数点向前移动了23位2^24 - 1 16777215,能精确表示的最大正整数 16777215此时小数位已经发挥到极限了要表示更大的数只能去增加指数位那么此时指数最大能够使小数点向前移动多少位呢哇这空间绰绰有余这时根据木桶原理比较之下发现尾数位的有效数字位数才是制约我们的条件让我们不能随意向后拓展。我能只能精确表示之间的整数。那么如果我们想表示16777217内存中该如何存储呢理论上应该让尾数变为int main() { float a 16777217; return 0; }此时实际的有效数字会默认在末尾多出一个零在我们增加有效数字的同时其实并不是在最末未位置增加的而是在倒数第二位增加的所以计算机存储是连续两个值都用的相同的存储方式。16777218 1.00000...000001 0 * 2^24int main() { float a 16777218; return 0; }int main() { float a 16777219; return 0; }16777220 1.00000...000010 0 * 2^24int main() { float a 16777220; return 0; }所以如果用float保存整数会有误差而且误差会根据具体要表示的整数值发生变化比如当 -16777216 val 16777216时是能精确表示的误差为0当val 16777216时误差为1当继续增加指数位到极限值时127这就是float能表示的最大值了2^(128-1)小数位表示二进制的十分位1表示0.5百分位1表示0.25千分位1表示0.125以此类推。所以说float也不一定能精确表示一个小数类似于搭积木我有很多小积木0.50.250.125...一共有23个尾数位数这23个积木的组合是无法表示无穷无尽的小数的只能有限接近。具体怎么搭这个积木这里不过多介绍只是给出个大致思路首先要明确两点1、同一个积木不能重复利用两次2、所有的积木相加的和约等于1我们拼凑完后的数字S与实际值的差应该小于最小积木的值。所以说用float表示小数也会存在误差不过这个误差需要根据具体值进行计算但始终小于最小积木的值。这也是用号比较浮点数变量和字面量会false的原因

相关新闻

DeepSeek大模型本地部署与优化实战指南

DeepSeek大模型本地部署与优化实战指南

1. 本地部署DeepSeek全流程解析最近在技术社区看到不少同行讨论DeepSeek这个大模型的应用效果,作为长期关注AI落地的开发者,我花了三天时间完整走通了本地部署的全流程。相比云端API调用,本地部署不仅能避免网络延迟,更重要的是可…

2026/10/18 10:11:48 阅读更多 →
AI日报编制3.0:多模态数据整合与智能分析实践

AI日报编制3.0:多模态数据整合与智能分析实践

1. 项目概述"AI日报 - 2026年04月08日"这个标题看似简单,实际上蕴含着一个专业科技媒体或研究机构的核心工作流程。作为长期跟踪AI领域发展的从业者,我深知这类日报的编制远不止是信息汇总那么简单。它需要建立在对行业动态的持续监测、技术趋…

2026/10/18 10:12:00 阅读更多 →
科技型中小企业如何申请政府补贴?申报指南

科技型中小企业如何申请政府补贴?申报指南

一、为什么要看这份榜单 科技型中小企业在发展过程中,政府补贴是重要的资金来源,但申请流程复杂、政策更新快、材料准备繁琐,许多企业因缺乏专业指导而错失良机。本榜单旨在帮助科技型中小企业选择合适的科技咨询服务机构,提高政府…

2026/10/19 16:18:45 阅读更多 →

最新新闻

DeskcommCRM实战:轻量级客户管理与销售跟进全流程落地指南

DeskcommCRM实战:轻量级客户管理与销售跟进全流程落地指南

1. 项目概述:DeskcommCRM 到底是什么,以及为什么值得关注这两年市面上叫 CRM 的产品多得数不过来,但绝大多数都陷入了一个怪圈:功能越做越重,权限越加越细,你要是只为了管好手头几百个客户,得先…

2026/10/19 23:47:06 阅读更多 →
以沟通为核心的轻量级CRM系统设计与实践

以沟通为核心的轻量级CRM系统设计与实践

一个叫 DeskcommCRM 的项目,听起来有点像某个内部系统的代号,但实际上它代表了一类特别值得聊的东西:以“沟通”为核心的客户关系管理工具。我一开始接触这个项目名的时候,第一反应是“Deskcomm”可能是 Desk Communication 的缩写…

2026/10/19 23:47:06 阅读更多 →
从线程池失控到全局限流:高并发系统稳定性实战指南

从线程池失控到全局限流:高并发系统稳定性实战指南

1. 并发失控的第一现场:线程池是怎么被击穿的先说一个我实际排查过的案例场景。某公司核心交易链路的订单服务,平时性能表现很稳定,高峰期单机支撑上千QPS没有任何压力。但一次大促活动中,下游的库存服务因为数据库连接池被打满&a…

2026/10/19 23:39:50 阅读更多 →
STC单片机范例程序实战指南:从点灯到多外设工程搭建

STC单片机范例程序实战指南:从点灯到多外设工程搭建

简介:这是一份面向嵌入式初学者与单片机开发者的STC单片机C语言范例程序合集,围绕ADC采样、串口通信、EEPROM读写、ISP在系统编程、时钟中断、端口测试及优化编程思想等核心功能展开,适合用于课程实验、自学练手与项目参考。资源包共612个文件…

2026/10/19 23:39:50 阅读更多 →
Kafka全链路性能调优:吞吐量与延迟的实战权衡

Kafka全链路性能调优:吞吐量与延迟的实战权衡

前阵子业务告警群里又炸了——消费延迟从平时的几百毫秒一路飙到分钟级,P99 延迟曲线在监控面板上直接拉成一条陡坡。接手这套 Kafka 系统两年,类似的戏码每隔一阵就重演一次。与其每次都临时救火,不如把全链路参数优化这件事系统捋一遍。这篇…

2026/10/19 23:37:47 阅读更多 →
ZXing.Net 0.16.8.0 条码识别实战:从解码链路到性能调优

ZXing.Net 0.16.8.0 条码识别实战:从解码链路到性能调优

简介:ZXing.Net.0.16.8.0 是面向 C# 与 Unity 开发者的开源条码处理库,基于 Zebra Crossing 项目,可在 .NET 框架与 Unity 引擎中实现 QR 码、Aztec、Code 128、EAN 等多种条码的读取与生成。开发者只需调用少量 API 即可为桌面应用、移动端或…

2026/10/19 23:37:47 阅读更多 →

日新闻

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →