移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因

本篇文章将阐述移码的概念以及当前业界流行的浮点数标准IEEE754,在下一篇文章中将会详细阐述为什么浮点数的计算总会产生微小误差

1.移码

移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
注:移码无符号位,运用上述的方法将移码得出之后,便直接采用无符号的进制转换方法,全是正整数,因此移码的意义就是可以直观的反映两个值的大小,只要高位对齐后逐个比较便可以十分方便的得到两真值的大小关系

2.IEEE754详解

移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
重要:十进制小数与IEEE754标准的2进制浮点数的相互转换
移码与浮点数标准IEEE754详解,浮点数存储存在误差的原因
重要:浮点数在存储过程中产生误差的原因
16.35 对应的浮点数的二进制表示为0-10000011-000 0010 1100 1100 1100 1101,符号位为正,阶码为131-127=4,即2的4次方16,但是尾数部分的1.000 0010 1100 1100 1100 1101十进制确是1.021875,1.021875*16=16.35000038