C++中右移一位和除以2的区别
在负奇数的时候得出的计算结果是不一样的
原因在于:
-
右移一位的时候,数字的二进制右移n位相当于乘以2的n次方,左一一位相当与乘以2
-7 二进制: ?1111111111111111111111111111111111111111111111111111111111111001?
右移一位
在负奇数的时候得出的计算结果是不一样的
原因在于:
右移一位的时候,数字的二进制右移n位相当于乘以2的n次方,左一一位相当与乘以2
-7 二进制: ?1111111111111111111111111111111111111111111111111111111111111001?
右移一位