标签:
当左移的时候 是乘法*2^n
A << 1 ,A * 2^1 当左移的时候,末位为0填充,不断左移,A最后就会等于0
当右移的时候,是除法/2^n
A >>1 ,A / 2^1 当右移的时候,若是负数则最高位为1,正数为0,所以负数右移,永远都不会为0,当所有数都为正电平,例如1111 1111,可以称为等于-1
与:&& 或:||
1,异或: ^
1 ^ 0 = 1
1 ^ 1 = 0
0 ^ 1 = 1
0 ^ 0 = 0
int a = 10; int b = 20; if (a ^ b) { printf("dddd"); }else { printf("bbbb"); } a = a ^ b ; printf("a:%d",a); b = a ^ b ; printf("b:%d",b); a = a ^ b ; printf("a:%d",a); /* 如果都是异,那就是 a < b c = a + b a > b c = a - b */
2,取反: ~
将0-->1,1-->0
标签:
原文地址:http://my.oschina.net/u/2346786/blog/496904