负数的例子,右移后得到:
-20>>3 = -3;
-6 >> 2 = -2;
按照等于除以2的n次方的说法:
-20 / 8 = -2 ;
-6 / 4 = -1;
那么这种说法是否还有补充?
“右移n位等于除以2的n次方”
正数的左移与右移,负数的无符号右移,就是相应的补码移位所得,在高位补0即可。
负数的右移,就是补码高位补1,然后按位取反加1即可
该问题-20,二进制为1001 0100 ,在计算机中应用补码(按位取反并加1)表示.为:1110 1100,右移三位后为1111 1101,再还原为原码:1000 0011.即-3.
正整数才能这样.
负数会有符号位问题.