位運算和移位運算
提問人:ylm發(fā)布時間:2020-09-25
(1)& :如果兩個相應的二進制位都為1,則該位的結果值為1;否則為0.
(2) | :兩個相應的二進制位中只要有一個為1,該位的結果值為1.
(3)^ :若參加運算的兩個二進制位同號則結果為0(假)異號則結果為1(真).
(4)~ :~是一個單目(元)運算符,用來對一個二進制數按位取反,即將0變1,將1變0.
(5)>> :表示將a的各二進制位右移N位,移到右端的低位被舍棄,對無符號數,高位補0.
(6)<< :左移運算符是用來將一個數的各二進制位全部左移N位,右補0.
注意
a.任何一個數和0異或是它的本身,和自身異或為0.
b.左移運算:x << y.將x左移y位,將x最左邊的y位丟棄,在右邊補y個0.
c.右移運算:x >> y.將x右移y位,這需要區(qū)分x是有符號數還是無符號數。在x是無符號數時,只需將x的最右邊的y位丟棄,在左邊補上y個0。在x是有符號數時,又分為x是正數還是負數。正數時,同無符號數的處理相同;負數時,將將x的最右邊的y位丟棄,在左邊補上y個1.
繼續(xù)查找其他問題的答案?
相關視頻回答
點擊加載更多評論>>