1.>> -- 右移操作符
1)算术右移
右边丢弃,左边补原符号位
2)逻辑右移
右边丢弃,左边补0
2.<< -- 左移操作符
左边丢弃,右边补0
位移操作符只能由于整数,且移动的是二进制位
数据是以补码的形式存储在内存中的
正整数的原码,反码,补码相同
负整数的反码等于原码的符号为不变,其他为按位取反,补码等于反码加1
右移操作符
左移操作符
注:对于位移操作符,不能移动负数为,这个标准是未定义的
例如以下代码时错误的
include<stdio.h>
int main()
{
int num = 10;
num >> -1;
//error
}