浮点数的存储简述

📅 2026/7/3 2:27:02 👁️ 阅读次数 📝 编程学习
浮点数的存储简述

十进制整数存储我们都知道,采取的是短除法,那么浮点类型的小数又是怎么存储的呢?硬件存储的数据都是都准确的吗?答案是不一定,但是具体又是怎么回事呢?下面我将明确浮点型存储的方法,并通过举例说明硬件为什么不能保证精确存储呢
一、计算方法
十进制数拆分成整数部分和小数部分,分别转换后合并
1、整数部分:采用短除法–不断除以2,取余数,倒叙排列
2、小数部分:采用短乘法—不断乘以2,取整数部分(0或1),正序排列,直到结果为0或达到所需精度
二、示例
1、小数部分可计算到结果为0 的例子

2、小数部分不可计算结果为0的例子

通过上面计算,我们发现十进制0.2的二进制小数是无限循环小数,计算机空间有限,无法完整保存无限循环小数,只能截断近似存储,所以说计算中的存储实际是一个近似值,不能保证完全的精确。这也是在平时常见直男表达0.2+0.1不等于0.3的根源。