2.3整数运算
由于整数在计算机中存储时采取精确、有限的表示,因此使得在进行整数运算时有可能出现算术运算溢出,即完整的整数结果不能放到数据类型的字长限制中去。解决这个问题通常有两种方法:一种是再存储器允许的位长限制下不限制精度,如Lisp;另一种是采取固定精度,截断溢出位的方式,这时候相当于对结果进行mod运算。
加法:x+y=(x+y)mod 2^w
乘法:x*y=(x*y)mod 2^w
求反:unsigned--- -x= x, x=0;
2^w-x, x>0;
two's-complement--- -x= 2^(w-1), x=2^(w-1);
-x, x belongs to (2^(w-1), 2^(w-1)-1)
阅读(1472) | 评论(0) | 转发(0) |