IEEE-754 浮点数的格式以及通讯
1、为什么说单精度float 浮点数的精度只有7位 ?这个解释起来轻松一点,精度这里指的是最大有效数字的位数,即只需要考虑尾数部分就可以啦。对于float类型,尾数部分是23,转换成10进制的精度,223=10x223=10x –> x=23log2≈6.92 x=23log2≈6.92,所以23位2进制最多只能表示6位10进制数,这里就是头文件中FLT_DIG=6的来由。但还有一种说法,也是网上的主流说法,二进制小数点的第一位永远都是1,可以省略,实际上二进制的精度为24,所以10进制的精度为7。单精度浮点数所能表示数据的范围:以传统的32位为依据 不是IEEE754 的指数形式。指数位 占用 8位 (包含一位符号位) 尾数部分 占用24位(包含一位符号位)


4、观察到用二进制表示十进制小数0.7 出现了 循环十进制的23.7度用二进制表示10111.10110 0110 0110 0110 0110 0110 0110 0110把上面的数表示成规范化小数形式1.0111 1011 0011 0011 0011 001故23位的尾数为0111 1011 0011 0011 0011 001指数为4 加上偏移量127 为131 对应 1000 0011

