^异位运算

^(异或运算)

  二进制位运算 对应位的值相同为0 不同为1,  例子:0011 ^ 1100 = 1111

  十进制运算中任何数与0进行^运算 都为它本身 不分前后位置 例子:12^0 = 12;0^12 = 12 任何数^相同的数 都为0 12^12 = 0;

  可以应用于,数组取出唯一单独的值 [1,1,2,3,3] 取出2

  翻转指定位 0011翻转低2位 0010 ^ 0011 = 0001

  异或0取本身

&(与运算)

  二进制位运算 1&1为1 其余的为0 例子:1111 & 0001 = 0001;

  应用于:清零操作 任何数与0与运算都为0 1111&0000 = 0000 ,取指定位的数,0101 取低2位 0101 & 0011 = 0001

|(或运算)

  二进制运算0 | 0 = 0 其余为1  例子:0100 | 1010 = 1110

  应用于: 将指定位置为1 0001执行低2位为1 0001 | 0010 = 0011 

<<(左移)

  二进制位左移0补位 左移相当于*2^n

>>(右移)

  二进制位右移 符号位正数左补0 负数左补1 相当于/2^n

<<<(无符号左移)

posted @ 2020-10-20 11:42  rudynan  阅读(276)  评论(0)    收藏  举报