freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機(jī)c語言簡介ppt課件-文庫吧資料

2025-05-18 07:02本頁面
  

【正文】 句 C語言是一種結(jié)構(gòu)化的程序設(shè)計語言 , 它提供了十分豐富的程序控制語句 。 實際上 , 字節(jié)數(shù)的計算在程序編譯時就完成了 , 而不是在程序執(zhí)行的過程中才計算出來的 。 強(qiáng)制類型轉(zhuǎn)換運算符的一般使用形式為: ( 類型 ) = 表達(dá)式 例如:需要在外部存儲器 ( xdata) 中定義一個字符型指針變量 xp, 并賦初值 0xC000, 可以寫成: xp = (char xdata * )0xC000;這種方法特別適合于用標(biāo)識符來存取地址 。 其余的數(shù)據(jù)類型不能進(jìn)行隱式轉(zhuǎn)換 。 隱式轉(zhuǎn)換是在對程序進(jìn)行編譯時由編譯器自動處理的 。 C語言程序中進(jìn)行算術(shù)運算時 ,需要注意數(shù)據(jù)類型的轉(zhuǎn)換 。 需要注意的是 , 指針變量中只能存放地址 ( 即指針型數(shù)據(jù) ) , 不要將一個非指針類型的數(shù)據(jù)賦值給一個指針變量 。 變量的指針就是該變量的地址 , 可以定義一個指向某個變量的指針變量 。例如: max = ( a b ) ? a : b;執(zhí)行這條命令的結(jié)果是把兩個數(shù) a、 b中的最大值賦給 max。 9. 條件運算符 條件運算將 “ ? : ” 是 C語言中唯一的一個三目運算符 ,它要求有三個運算對象 , 用它可以將三個表達(dá)式連接構(gòu)成一個條件表達(dá)式 。 逗號表達(dá)式的一般形式為: 表達(dá)式 1, 表達(dá)式 2, … , 表達(dá)式 n 程序運行時對于逗號表達(dá)式的處理 , 是從左至右依次計算出各個表達(dá)式的值 , 而整個逗號表達(dá)式的值是最右邊表達(dá)式 ( 即表達(dá)式 n) 的值 。 復(fù)合運算的一般形式為: 變量 復(fù)合賦值運算符 表達(dá)式 采用這種復(fù)合賦值運算符 , 可以使程序簡化 , 同時還可以提高程序的編譯效率 。y x|y x^y 0 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 0 1 1 0 7. 復(fù)合賦值運算符 在賦值運算符 “ = ” 的前面加上其它運算符 , 就構(gòu)成了所謂復(fù)合賦值運算符: += 加法賦值 , >>= 右移位賦值 , =減法賦值 &= 邏輯與賦值 *= 乘法賦值 , |=邏輯或賦值 , /=除法賦值 ^= 邏輯異或賦值 % =取模賦值 , ~=邏輯非賦值 , <<= 左移位賦值 。 位運算符的一般形式如下: 變量 1 位運算符 變量 2 按位取反 ( ~ ) 、 按位與 ( & ) 、 按位或 ( | ) 、 按位異或( ^ ) 操作的運算取值關(guān)系如表 。 另外位運算符不能用來對浮點型數(shù)據(jù)進(jìn)行操作 。 6. 位運算符 C語言有 6種位運算符: ~ ( 按位取反 ) & ( 按位與 ) << ( 左移 ) >> ( 右移 ) ^ ( 按位異或 ) | ( 按位或 ) 運算符的作用是按位對變量進(jìn)行運算 , 并不改變參與運算的變量的值 。 當(dāng)條件式的結(jié)果為真時 , 邏輯非的結(jié)果為假 , 反之 , 則為真 。 邏輯表達(dá)式的一般形式為: 邏輯與:條件式1 && 條件式2 邏輯或:條件式1|| 條件式2 邏輯非: ! 條件式 當(dāng)連接的兩個條件式都為真時 , 邏輯與的結(jié)果為真 ( 1) ,否則為假 ( 0) 。 scanf函數(shù)中的每個參數(shù)都必須為指針 , 并且指針參數(shù)所指向的數(shù)據(jù)類型必須與格式控制串中所指定的格式相匹配 , 否則 scanf函數(shù)輸入的數(shù)據(jù)將不正確 。 scanf函數(shù)的一般形式: scanf( 格式控制 , 指針參數(shù)表 ) 其中指針參數(shù)是指指針變量或者用取地址運算符 “ amp。 關(guān)系運算符通常用來判別某個條件是否滿足 , 關(guān)系運算的結(jié)果只有 0和 1兩種值 。 用關(guān)系運算符將兩個表達(dá)式連接起來即成為關(guān)系表達(dá)式 。 4. 關(guān)系運算符 C語言中有 6種關(guān)系運算符:> ( 大于 ) 、 < ( 小于 ) 、 > =( 大于等于 ) 、 < =( 小于等于 ) 、 = =( 等于 ) 、 ! =( 不等于 ) 。 由于 8051單片機(jī)存儲器結(jié)構(gòu)有限 , 在 SMALL和 COMPACT 編譯模式下 , 最多可傳遞 15個字節(jié)的參數(shù) ( 即 5個指針 , 或 1個指針和 3個長字 ) , 在 LARGE編譯模式下 , 最多可傳遞 40個字節(jié)的參數(shù) 。 printf函數(shù)的一般形式: printf( 格式控制 , 輸出參數(shù)表 ) 格式控制又稱為轉(zhuǎn)換控制字符串 , 它是用雙引號括起來的一些字符串 , 通常這些字符由格式說明 、 普通字符和轉(zhuǎn)義字符三部分組成 。 ++ i( 或-- i) 是先執(zhí)行 i+ 1( 或 i- 1) 操作 , 再使用 i的值 , 而 i++ ( 或 i-- ) 是先使用 i的值 , 再執(zhí)行 i +1( 或 i- 1) 操作 。例如:++ i, i++, -- j, j--等。 例如:由于‘ +’ 和 ‘ ’ 優(yōu)先級別相同 , 計算時按 “ 從左至右 ” 的結(jié)合方向 , 這種 “ 從左至右 ” 的結(jié)合方向稱為 “ 左結(jié)合性 ” ,而 “ 從右至左 ” 的結(jié)合方向稱為 “ 右結(jié)合性 ” 。 需要時可 在算術(shù)表達(dá)式中采用圓括號來改變運算符的優(yōu)先級 。 在求一個表達(dá)式的值時 , 要 按運算符的優(yōu)先級別進(jìn)行 。 2. 算術(shù)運算符 C語言中的算術(shù)運算符有: +:加或取正值運算符 , -:減或取負(fù)值運算符; * :乘運算符 , /:除運算符 , % :取余運算符 用算術(shù)運算符將運算對象連接起來的式子稱為算術(shù)表達(dá)式 。 1 . 賦值運算符 賦值語句的格式: 變量 = 表達(dá)式; 符號 “ = ” 是 賦值運算符 , 其作用是將一個數(shù)據(jù)的值賦給一個變量 。 運算符按其在表達(dá)式中與運算對象的關(guān)系 , 又可分為單目運算符 、雙目運算符 、 三目運算符等 。 用 typedef重新定義數(shù)據(jù)類型 , 定義的方法如下: typedef 已有的數(shù)據(jù)類型 新的數(shù)據(jù)類型名 已有的數(shù)據(jù)類型是指 C語言的所有數(shù)據(jù)類型 , 新的數(shù)據(jù)類型可按用戶自己的習(xí)慣或根據(jù)任務(wù)需要決定 。 例如: int bdata ibase / * 在位尋址區(qū)定義一 個整型變量 ibase */ char bdata array[4]; / * 在位尋址區(qū)定義一個數(shù)組 array [ 4] */ 使用關(guān)鍵字 sbit可以獨立訪問可位尋址對象中的某一位 。 當(dāng)位對象位于 8051單片機(jī)內(nèi)部存儲器的可位尋址區(qū)時稱之為 “ 可位尋址對象 ” 。 “ 位位置 ” 是一個 0~ 7之間的常數(shù) 。 例如: sbit OV = 0xD2; 2. sbit 位變量名 = 特殊功能寄存器名位位置; 當(dāng)可尋址位位于特殊功能寄存器中時可采用這種方法 ,“ 位位置 ” 是一個 0~ 7之間的常數(shù) 。 在 8051單片機(jī)應(yīng)用系統(tǒng)中經(jīng)常需要訪問特殊功能寄存器中的某些位 , C51編譯器為此提供了一種擴(kuò)充關(guān)鍵字sbit, 利用它可以訪問可位尋址對象 。 在新一代的 8051單片機(jī)中 , 特殊功能寄存器經(jīng)常組合成 16位來使用 。 定義方法如下: sfr 特殊功能寄存器名 = 地址常數(shù); 例如: sfr P0 = 0x80;/ * 定義 I/ O口 P0, 其地址為 80H */ 這里需要注意的是,在關(guān)鍵字 sfr后面必須是一個名字,名字可任意選取,但應(yīng)符合一般習(xí)慣。 需要特別指出的是 , 變量的存儲種類與存儲器類型是完全無關(guān)的 。 這種訪問數(shù)據(jù)的方法效率是不高的 , 尤其是對于 2個或多個字節(jié)的變量 , 用這種數(shù)據(jù)訪問方法相當(dāng)影響程序的代碼長度 。 因此 , 在采用這種模式的同時 , 必須適當(dāng)改變啟動程序 STARTUP. A51中的參數(shù): PDATASTART和PDATALEN;用 L51進(jìn)行連接時還必須采用連接控制命令 PDATA來對 P2口地址進(jìn)行定位 , 這樣才能確保 P2口為所需要的高 8位地址 。 這時對變量的訪問是通過寄存器間接尋址 ( MOVX @ Ri) 進(jìn)行的 , 堆棧位于 8051單片機(jī)內(nèi)部數(shù)據(jù)存儲器中 。 另外 , 所有的對象 ,包括堆棧 , 都必須嵌入內(nèi)部數(shù)據(jù)存儲器 , 而堆棧的長度是很重要的 , 實際棧長取決于不同函數(shù)的嵌套深度 。 定義變量時如果省略 “ 存儲器類型 ” 選項 , 則按編譯模式 SMALL、 COMPACT或 LARGE所規(guī)定的默認(rèn)存儲器類型確定變量的存儲區(qū)域 , 不能位于寄存器中的參數(shù)傳遞變量和過程變量也保存在默認(rèn)的存儲器區(qū)域 。 定義一個變量時除了需要說明其數(shù)據(jù)類型之外 , C51編譯器還允許說明變量的存儲器類型 。 變量的存儲種類有四種: 自動 ( auto) 、 外部 ( extern) 、靜態(tài) ( static) 和寄存器 ( register) 。 在使用一個變量之前 , 必須先對該變量進(jìn)行定義 , 指出它的數(shù)據(jù)類型和存儲模式 , 以便編譯系統(tǒng)為它分配相應(yīng)的存儲單元 。 變量及其存儲模式 和常量相比 , 變量是另一種量 , 在程序執(zhí)行過程中其值能不斷變化 。 一個函數(shù)中可以包含 “ bit” 類型的參數(shù) , 函數(shù)的返回值也可為 “ bit” 型 。 5. 位標(biāo)量 這是 C51編譯器的一種擴(kuò)充數(shù)據(jù)類型 。 如: “ I say:\ “ goodbye! \ ”” —— 字符串為 I say:“ goodbye! ” 另外 , C語言將字符串常量作為一個字符類型數(shù)組來處理 , 在存儲字符串常量時 , 要在字符串的尾部加一個轉(zhuǎn)義字符\ 0作為該字符串常量的結(jié)束符 。 當(dāng)雙引號內(nèi)的字符個數(shù)為 0時 , 稱為空串常量 。 利用轉(zhuǎn)義字符可以完成一些特殊功能和輸出時的格式控制 。 3. 字符型常量 字符型常量是單引號內(nèi)的字符 , 如 ‘ a’ 、 ‘ b’ 等 。 ] 數(shù)字 [ . 數(shù)字 ] e [177。 在這種表示形式中 , 如果整數(shù)或小數(shù)部分為 0可以省略不寫 , 但必須有小數(shù)點 。 十進(jìn)制表示形式又稱定點表示形式 , 由數(shù)字和小數(shù)點組成 。 分別說明如下: 1. 整型常量 整型常量就是整型常數(shù) , 可表示為以下幾種形式:十進(jìn)制整數(shù);十六進(jìn)制整數(shù):以 0X開頭的數(shù)是十六進(jìn)制數(shù) , ANSI C標(biāo)準(zhǔn)規(guī)定十六進(jìn)制數(shù)的數(shù)字為 0~ 9, 再加字母 a~ f;長整數(shù):在數(shù)字后面加一個字母 L就構(gòu)成了長整數(shù) 。 常量 常量是在程序執(zhí)行過程中其值不能改變的量 。一般來說,如果有幾個不同類型的數(shù)據(jù)同時參加運算,先將低級別類型的數(shù)據(jù)轉(zhuǎn)換成高級別類型,再作運算處理,并且運算結(jié)果為高級別類型數(shù)據(jù)。 在 C語言程序中的表達(dá)式或變量賦值運算中,有時會出現(xiàn) 運算對象的數(shù)據(jù)不一致 的情況, C語言允許任何標(biāo)準(zhǔn)數(shù)據(jù)類型之間的 隱式轉(zhuǎn)換 。 9. sbit 可尋址 位 。 8. sfr16 16位特殊功能寄存器 。 這也是 C 51編譯器的一種擴(kuò)充數(shù)據(jù)類型 , 利用它 可以訪問 8051單片機(jī)的所有內(nèi)部特殊功能寄存器 。 這是 C 51編譯器的一種擴(kuò)充數(shù)據(jù)類型 , 利用它可定義一個位標(biāo)量 , 但 不能定義位指針 , 也不能定義位數(shù)組 。 使用指針型變量可以方便地 對 8051單片機(jī)的各部分物理地址直接進(jìn)行操作 。 如 char *Pointl;表示 Pointl是一個字符型的指針變量 。 指針變量也要占據(jù)一定的內(nèi)存單元 , 在 C51中指針變量的長度一般為1~ 3個字節(jié) 。 5. * 指針型 。 需要指出的是,對于浮點型數(shù)據(jù)除了有正常數(shù)值之外,還可能出現(xiàn)非正常數(shù)值。它是符合 IEEE— 754標(biāo)準(zhǔn)的單精度浮點型數(shù)據(jù),在十進(jìn)制中具有 7位有效數(shù)字。 數(shù)值的表示范圍是 ?2147
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1