☰
浮点型数据的储存
2026/10/3 14:59:10 网站建设 项目流程

浮点型数据的储存

  • float 单精度浮点型

float型数据占4个字节,32位

1位符号位,8位表示阶码,后23位表示尾数

在IEEE 754浮点数标准中,float型数据阶码有8位,可以表示的阶码范围为0~ 255,偏置常数为127,阶的范围为-127 ~ 128,因为全零阶码和全1阶码有其他用处(下面写),所以可以表示的阶实际上为-126~127

尾数用原码表示,规格化尾数第一位总为1(对阶),因而可以在尾数中缺省第一位的1,该缺省为为隐藏位,隐藏一位后是的单精度格式的23位尾数实际上表示了24位尾数。


例如float型数据1.25在内存中的储存:

1.25:

首先符号为正,所以符号位为0,1.25转换为2进制为1.01,1.10*2º不需要对阶,首位1省去,23尾数为尾数中只写小数部分,阶为0,所以阶码为0+127,转换为二进制为0111 1111

所以1.25在内存中的储存为0011 1111 1101 0000 0000 0000 0000 0000


0.375:

符号位正,符号位为0,0.375 转换为二进制为0.011,即1.10*2^(-1),阶为-1,阶码为0111 1110

所以0.375在内存中储存为0011 1111 0110 0000 0000 0000 0000 0000


十进制小数转换为2进制


十进制小数 * 2 取整,自上而下取整数

例如:0.375转换为二进制


全0阶码,全0尾数

表示:+0/-0,一般情况下+0和-0是等效的。

全0阶码,非0尾数

表示:非规格化尾数

全1阶码,全0尾数

表示:+∞/-∞

全1阶码,非0尾数

表示:NaN(非数)


可表示的十进制小数精度

因为float型数据有23位尾数,2²³ = 8,388,608,是七位数字,所以float最多可以保留7位有效数字,但绝对能保证的只有6位,所以说float型数据可以保留6~7位小数


  • double 型数据

double型数据占8个字节,64位

1位符号位,11位阶码,后面52位为尾数,偏置常数为1023

其他大致与float型数据相同

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询