关于位运算
4<<2
4的二进制是:0000 0100
<<表示往左移两位:00 010000
只要把4转换成二进制,往左移两位,再转换成10进制得出结果既是:16
更简单的计算方法就是 4<< n 等效于 4 乘以 2的 N 次方
更简单的计算方法就是 4>> n 等效于 4 除以 2的 N 次方(适用于正整数)
十进制负数转二进制方法总结如下:
①除2取余,逆序排列
②01互换,原码取反码
③反码+1,得补码
我们可以逆向操作得出十进制:
总结:>>和>>>的区别
如果>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1。如:int i=15; i>>2的结果是3,移出的部分将被抛弃。
如果>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。
如果是正数>>和>>>相似 对于负数不同。