112位运算 11.21位运算及其运算符 1.按位与—& (1)格式:x&y (2)规则:对应位均为1时才为1,否则为0:3&9=1 例如,3&9=1:0011 &1001 (3)主要用途:取(或保留)个数的某(些)位,其余各位置0。 2.按位或一 (1)格式 (2)规则:对应位均为0时才为0,否则为1:39=11 例如,39=11:001 11001 1011=11 (3)主要用途:将1个数的某(些)位置1,其余各位不变
11.2 位 运 算 11.2.1 位运算及其运算符 1.按位与──& (1)格式:x&y (2)规则:对应位均为1时才为1,否则为0:3&9=1。 例如,3&9=1: 0011 & 1001 ──── 0001=1 (3)主要用途:取(或保留)1个数的某(些)位,其余各位置0。 2.按位或──| (1)格式:x|y (2)规则:对应位均为0时才为0,否则为1:3|9=11。 例如,3|9=11: 0011 | 1001 ──── 1011=11 (3)主要用途:将1个数的某(些)位置1,其余各位不变
3.按位异或— (1)格式:xy (2)规则:对应位相同时为0,不同时为1:3^9=10。 (3)主要用途:使1个数的某(些)位翻转(即原来为1的位 变为0,为0的变为1),其余各位不变 4.按位取反 (1)格式:~x (2)规则:各位翻转,即原来为1的位变成0,原来为0的 位变成1:在 IBM-PC机中,~0=0xf,9=0xf6 (3)主要用途:间接地构造一个数,以增强程序的可移 植性。 5.按位左移—<< (1)格式:x<位数 2)规则:使操作数的各位左移,低位补0,高位溢出 5<<2=20
3.按位异或──^ (1)格式:x^y (2)规则:对应位相同时为0,不同时为1:3^9=10。 (3)主要用途:使1个数的某(些)位翻转(即原来为1的位 变为0,为0的变为1),其余各位不变。 4.按位取反──~ (1)格式:~x (2)规则:各位翻转,即原来为1的位变成0,原来为0的 位变成1:在IBM-PC机中,~0=0xffff,~9=0xfff6。 (3)主要用途:间接地构造一个数,以增强程序的可移 植性。 5.按位左移──<< (1)格式:x<< 位数 (2)规则:使操作数的各位左移,低位补0,高位溢出: 5<<2=20