1. 程式人生 > >C語言中的位運算子主要有哪些?邏輯右移與算術右移的區別?

C語言中的位運算子主要有哪些?邏輯右移與算術右移的區別?

邏輯右移與算術右移的區別?

邏輯右移就是不考慮符號位,右移一位,左邊補零即可。
算術右移需要考慮符號位,右移一位,若符號位為1,就在左邊補1,;否則,就補0。


所以算術右移也可以進行有符號位的除法,右移n位就等於除2的n次方。


例如,8位二進位制數11001101分別右移一位。
邏輯右移就是[0]1100110
算術右移就是[1]1100110

 

C語言中的位運算子主要有哪些?