嵌入式C學習第一次任務

2021-10-18 19:38:02 字數 845 閱讀 2419

&:數學中的並且,遇0則清0

|:數學中的或者,1或0為1、1(0)或1(0)為1(0)

^:按位異或,如果兩個相應的二進位制位值不同則為1,否則為0。

~:取反,1變0   0變1

>>:右移,是將乙個二進位制位的運算元按指定移動的位數向右移動,移出位被丟棄,左邊移出的空位或者一律補0或者補符號位

<<:左移,是將乙個二進位制位的運算元按指定移動的位數向左移位,移出位被丟棄,右邊的空位一律補0

1.靜態變數:靜態變數屬於靜態儲存方式,其儲存空間為記憶體中的靜態資料區(在 靜態儲存區內分配儲存單元),該區域中的資料在整個程式的執行期間一直占用這些儲存空間(在程式整個執行期間都不釋放),也可以認為是其記憶體位址不變,直 到整個程式執行結束(相反,而auto自動變數,即動態區域性變數,屬於動態儲存類別,佔動態儲存空間,函式呼叫結束後即釋放)。靜態變數雖在程式的整個執 行過程中始終存在,但是在它作用域之外不能使用。

1.關鍵字extern:extern最基本的用法是宣告全域性變數的。這裡需要注意兩點,一是「宣告」,二是「全域性變數」;我們先來分析這兩個概念。

宣告:宣告和定義是有區別的。宣告不等於定義,宣告只是指出了變數的名字,並沒有為其分配儲存空間;定義指出變數名字同時為變數分配儲存空間,定義包含了宣告。例如:

extern  int  i;  //宣告變數i,但沒分配儲存空間,還不能使用。

int  i;         //定義了變數i,並分配了空間,可以使用。

extern  int  i = 5; //定義了變數5

2.關鍵字const:const 是定義常變數的關鍵字。用 const 定義的變數的值是不允許改變的,即不允許給它重新賦值,即使是賦相同的值也不可以。

嵌入式C學習第一次任務

位運算 用於對整數型別 int,char,long 等 變數的二進位制形式的 某一位 bit 或者若干位進行操作。按位與 按位或 按位異或 按位取反 左移 左邊消失,右邊補0 右移 右邊消失,左邊補符號位 位運算的運算元是整數型別或字元型.1.將參與運算的兩運算元各對應的二進位制位進行與 操作,只有...

嵌入式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運算子描述 按位或運算子,按二進位制位進行 或 運算。...

第一次嵌入式C 學習

資料 乘法 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...