邏輯運算符
簡介
-
& :位於
A爲false,也會判斷B表達式 -
&& :短路與
A爲false,不會判斷B -
| :位或
A爲true,也會判斷B表達式 -
|| :短路或
A爲true,不會判斷B -
^ AB不同則爲true 相當於 !=
-
!取反
位運算符
簡介
-
3 & 5 輸出1
用二進制表示 -
~19 輸出 -20
19 二進制 00010011,求其補碼爲本身
非之後會爲11101100
此時爲補碼,轉爲原碼後10010100 -
位運算都是補碼運算運算完後 首位爲1,即需要求原碼
-
5-3=5+(-3)
5的補碼爲本身(正數)( 00000101)
-3的補碼爲 11111101
相加爲 00000010如果最開始爲0則爲正數,補碼爲本身 -
-5-3=-5+(-3)
-5的補碼爲( 11111011)
-3的補碼爲(11111101)
相加爲 11111000
取其補碼爲10001000 -
總結 運算之前都先求補碼,正數的話爲本身,計算完後爲補碼,首位爲1則需要求原碼,首位爲0即爲結果
移位操作
簡介
- 進行操作前先轉補碼
交換兩個變量值練習
簡介
-
使用算術運算
a爲10,b爲12
先求ab的差存儲在a
然後用b-差得出a存在b,
然後用+差得出12
(重點是存儲差值) -
位運算
任意一個值與另外一個值異或兩次,值不變
a=a^b
b=a^b
a=a^b
存一個差值在a,然後通過異或交換了位置