作者wa007123456 (大笨羊)
看板Programming
标题[问题] 有关truncation error
时间Tue Oct 28 20:32:46 2014
最近在读计概
有一块地方我不是很清楚
那就是"舍位误差"(truncation error)
比如说0.3好了(十进位)
0.01001
用定点数来看
假设8bit的数字
bit4~7表示小数
得小数部分0.1001 (二进位)
但因超过4digit( 8 digit 代表正负)
经过舍位 变成 0100
而这里就是我想问的
第五位是1 为什麽不可以进位成0101
而是 0100 呢?
感谢回答!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.128.194.56
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Programming/M.1414499570.A.845.html
1F:推 s25g5d4: 这问题就像是无条件舍去法为什麽不进位140.117.205.159 10/28 21:22
2F:推 s25g5d4: 另外如果你是用 IEEE 754 的方法表示浮点140.117.205.159 10/28 21:25
3F:→ s25g5d4: 那小数部分应该是 .001140.117.205.159 10/28 21:25
4F:推 bxxl: 有各种模式啊,ceil, floor, round118.160.221.192 10/28 22:58
5F:→ bxxl: round to nearest even, 等等.118.160.221.192 10/28 22:58
6F:→ bxxl: 讲truncate就是直接把尾巴去掉不进位118.160.221.192 10/28 22:59
7F:→ bxxl: 讲round才有要不要进位的问题118.160.221.192 10/28 22:59