[資料]乘法 * 2 (二進位制下的移位)
例如:m<< 1 = m*2
m << n = m * 2^n
4 : 0 0 1 0 0
8: 0 1 0 0 0
第一位與符號變數有關
除法 m>> n = m / 2^n
int a; a>> n
unsigned int a; a >>n
a & 0 ====> 0 (&:遮蔽,遮蔽低八位)
a & 1 *****> 1 (&:取出,取出高八位)
&:清0器
a | 0 *****> a (| : 保留)
a | 1 ====> 1
| : 設定器
int a;
a | (0x1a & ~(0x1<1 ^ 1 = 0 (相同取0,為假;不同取1,為真)
用於交換 a ,b 的值
int a=20;
int b=30;
a = a ^ b;
b = a ^ b;
a = a ^ b;
a = 30, b = 20
~ : 逐位取反 (與!不同)
1)函式內的變數
int fun(){
int a; ====> static int a;
2) 函式外部的變數(全域性變數)
int a ; ====> static int a ;
int fun() {
3) 函式的修飾符
int fun() ===> static int fun()
const int a = 100 (a不能變)
嵌入式C學習第一次任務
位運算 用於對整數型別 int,char,long 等 變數的二進位制形式的 某一位 bit 或者若干位進行操作。按位與 按位或 按位異或 按位取反 左移 左邊消失,右邊補0 右移 右邊消失,左邊補符號位 位運算的運算元是整數型別或字元型.1.將參與運算的兩運算元各對應的二進位制位進行與 操作,只有...
嵌入式C學習第一次任務
數學中的並且,遇0則清0 數學中的或者,1或0為1 1 0 或1 0 為1 0 按位異或,如果兩個相應的二進位制位值不同則為1,否則為0。取反,1變0 0變1 右移,是將乙個二進位制位的運算元按指定移動的位數向右移動,移出位被丟棄,左邊移出的空位或者一律補0或者補符號位 左移,是將乙個二進位制位的運...
嵌入式C學習第一次任務
運算子描述 按位與操作,按二進位制位進行 與 運算。運算規則 0 0 0 0 1 0 1 0 0 1 1 1 假設a 的值為 60 0011 1100 變數 b 的值為 13 0000 1101 則 a b 將得到 12,即為 0000 1100運算子描述 按位或運算子,按二進位制位進行 或 運算。...