摘要: c中float精度问题float存储格式为:S E M1位符号位 8位指数 23位尾数转成数值即为:V=(-1)^S * 1.M * 2^(E-127)对于16.5转成二进制为00010000.1==>1.00001*2^4,那么在内存的表示为:符号位 指数4+127 = 131 尾数0 10000011 00001 000000000000000000在转换过程中由于需要往右移位, 可见对于float数整数部分越大,小数部分的精度就越低对float数来说有效数字约为7位(2^23约等于10^7),所以整数部分占的位数越多,小数部分的精度就越低,当整数部... 阅读全文
posted @ 2013-09-14 17:39 果丁 阅读(445) 评论(0) 推荐(0) 编辑