在C语言标准中,有两种位移分别为算术位移和逻辑位移。
逻辑位移:在位移运算符(>>和<<)之前的数是无符号数,编译产生的汇编指令是逻辑位移。
算术位移:在位移运算符之前的数是有符号数,编译产生的汇编指令是算术位移。
左移:两种位移都在右边补0。
右移:逻辑位移在左边补0,算术位移在左边补符号位。
在C语言标准中,有两种位移分别为算术位移和逻辑位移。
逻辑位移:在位移运算符(>>和<<)之前的数是无符号数,编译产生的汇编指令是逻辑位移。
算术位移:在位移运算符之前的数是有符号数,编译产生的汇编指令是算术位移。
左移:两种位移都在右边补0。
右移:逻辑位移在左边补0,算术位移在左边补符号位。