闲人草堂

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年4月18日

摘要: 最近代码中用到很多无符号整数的二元运算,一直提心吊胆的,生怕什么时候加法运算就溢出了。所以有必要加个溢出检测。关于溢出,http://www.phrack.com/issues.html?issue=60&id=10,这篇文章讲的很清楚。检测无符号整数相加溢出的方法比较简单:首先在无符号表示中 a + 2^n = a;如果a,b两个无符号整数,都未溢出:a < 2^n, b < 2^n, 且a+b > 2^n,那么sum = a + b - 2^n , 即sum - a = b - 2^n < 0==> sum < a,同理可得 sum < b 阅读全文
posted @ 2012-04-18 19:34 闲人草堂 阅读(7225) 评论(0) 推荐(0) 编辑