移位运算符<<与>>

程序设计中,我们有时会看到两种运算符:<<和>>,这两种运算符均为移位运算符,属于位操作运算符中的一种,分别为<<(左移)和>>(右移)。

其中,左移运算是将一个二进制位的操作数按指定的移动位数向左移动,移出位被丢弃,右边的空位一律补0;右移运算是将一个二进制位的操作数按指定的移动位数向右移动,移出位被丢弃,左边的空位一律补0,或者补符号位(与被移位的数据是否带符号有关)。

实例1:1<<4结果为16(对应二进制为00010000),相当于1*2^4=16;

实例2:设一无符号短整型变量a=0111(对应二进制为0000000100010001),则a<<3结果为0888(对应二进制为0000100010001000);a>>4结果为0011(0000000000010001)。