四、位运算符与表达式 ◆位运算符用来对二进制位进行操作 ~(按位取反)) >>(右移)<<(左移) &(按位与) A(异或) 丨(按位或) 位运算符只能对整型和字符型数据进行操作 正数a=4200000000000000000000000000101010 负数a=-4210000000000000000000000000101010 1111111111111111111111111010101 11111111111111111111111111010110 .1
- 1 - ◆位运算符用来对二进制位进行操作 ~ (按位取反) >> (右移) << (左移) & (按位与) ^ (异或) | (按位或) 位运算符只能对整型和字符型数据进行操作 正数 a=42 00000000000000000000000000101010 负数 a=-42 10000000000000000000000000101010 1111111111111111111111111010101 11111111111111111111111111010110 四、位运算符与表达式
(1)按位取反(~) 0 1 1 0 例如: a=4200000000000000000000000000101010 a 11111111111111111111111111010101 10000000000000000000000000101010 10000000000000000000000000101011 -43 a=-4211111111111111111111111111010110 ~a 00000000000000000000000000101001 41 -2-
- 2 - (1)按位取反(~) ~0 1 ~1 0 例如: a=42 00000000000000000000000000101010 ~a 11111111111111111111111111010101 10000000000000000000000000101010 10000000000000000000000000101011 -43 a=-42 11111111111111111111111111010110 ~a 00000000000000000000000000101001 41
(2)按位与(&) 0&0 0 081 0 1&0 0 1&1 1 例如: a=4200000000000000000000000000101010 b=1500000000000000000000000000001111 a&b00000000000000000000000000001010 10 -3-
- 3 - (2) 按位与(&) 0&0 0 0&1 0 1&0 0 1&1 1 例如: a=42 00000000000000000000000000101010 b=15 00000000000000000000000000001111 a&b 00000000000000000000000000001010 10
(3) 按位或(|) 010 0 011 1 1I0 1 1111 例如: a=4200000000000000000000000000101010 b=1500000000000000000000000000001111 a|b00000000000000000000000000101111 47 4-
- 4 - (3) 按位或(|) 0 | 0 0 0 | 1 1 1 | 0 1 1 | 1 1 例如: a=42 00000000000000000000000000101010 b=15 00000000000000000000000000001111 a | b 00000000000000000000000000101111 47
(4)异或(^) 0A0 0 0A1 1 1A0 1 11 0 例如: a=4200000000000000000000000000101010 b=1500000000000000000000000000001111 a^b00000000000000000000000000100101 37 -5-
- 5 - (4) 异或(^) 0 ^ 0 0 0 ^ 1 1 1 ^ 0 1 1 ^ 1 0 例如: a=42 00000000000000000000000000101010 b=15 00000000000000000000000000001111 a ^ b 00000000000000000000000000100101 37