C语言很多操作都是以字节为单位进行的,但有时为了节约空间,很多系统程序中要求在比特位级别进行运算处理。C语言一同提供了六种位运算的运算符,分别为&(按位与),|(按位或),~(按位取反),^(按位异或),<<(左移),>>(右移)。本次我们进行移位操作的分析,看看在不同情况下移位操作的情形。
(1)变量为正数的情形
当变量为正数的时候,无论左移还是右移,移动溢出的位丢弃,剩下的位补的都是0。
1.当移位的位数大于,0,并且小于所定义的类型的位数(如变量为整型,那他移位的范围在0~32之间)(左移和右移)
按照正常的情况处理,即将变量的二进制位移动相应的位数,然后在空出来
1