c#中的位运算

&与  全为1才是1

|或  全为0才是0

!非  两边相同时为1,不同时为0

~取反  0变1,1变0,包括符号位

>>右移 溢出舍掉,正数补0,负数补1,移动n位:原数 / 2的n次方

<<左移 右边补0,移动n位:原数 * 2的n次方

负数的二进制是补码存放(取反+1:先取反,最后整体加1)

0000 0001  1

1111  1111  -1

 

原文地址:https://www.cnblogs.com/1016391912pm/p/11328876.html