摘要:
在计算机中,浮点数的二进制编码是这样的,一个浮点数由三个部分组成:(1) 1个符号位s;(2) 若干位数,组成指数E;(3) 若干位数,组成小数M.然后浮点数的值等于(-1)^s * M * 2^E。比如32位的浮点数,指数域有8位,小数域23位;而64位的浮点数,指数域有11位,小数域有52位。下面结合32位浮点数,说明一下指数E和小数M是怎么取值的。这里先记指数域组成的无符号整数e = ek-1ek-2...e1e0,记小数域组成的二进制小数f = 0.fn-1fn-2...f1f0,记偏置值Bias =(2^(k-1) - 1)。对于32位浮点数来说,Bias等于2^(8-1) - 1 阅读全文