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

正文內(nèi)容

單片機(jī)c51語(yǔ)言及程序設(shè)計(jì)(已修改)

2025-08-27 21:01 本頁(yè)面
 

【正文】 單片機(jī) C51語(yǔ)言基礎(chǔ) 及 C51程序設(shè)計(jì) 主要內(nèi)容: ? C51語(yǔ)言概述 ? C51的標(biāo)識(shí)符與關(guān)鍵字 ? C51的變量及數(shù)據(jù)類(lèi)型 ? C51的運(yùn)算符及表達(dá)式 ? C51的程序結(jié)構(gòu) ? C51開(kāi)發(fā)環(huán)境 ? C51編程實(shí)例 一、 C51語(yǔ)言概述 – 單片機(jī) C51語(yǔ)言是 ANSI C的擴(kuò)展。 – C51語(yǔ)言除了具有 C語(yǔ)言的優(yōu)點(diǎn)外,同時(shí)具有匯編語(yǔ)言的硬件操作能力。 – 運(yùn)行于單片機(jī)平臺(tái),支持的微處理器種類(lèi)繁多,可移植性好。對(duì)于兼容的 8051系列單片機(jī),只要將一個(gè)硬件型號(hào)下的程序稍加修改,甚至不加改變,就可移植到另一個(gè)不同型號(hào)的單片機(jī)中運(yùn)行。 – 具有高級(jí)語(yǔ)言的特點(diǎn),盡量減少底層硬件寄存器的操作。 – 單片機(jī) C51語(yǔ)言提供了完備的數(shù)據(jù)類(lèi)型、運(yùn)算符及函數(shù)供使用。 – C51語(yǔ)言代碼執(zhí)行的效率方面十分接近匯編語(yǔ)言,且比匯編語(yǔ)言的程序易于理解,便于代碼共享。 二、 C51的標(biāo)識(shí)符與關(guān)鍵字 ? 標(biāo)識(shí)符即特定的字符或字符串,用來(lái)給變量、函數(shù)、符號(hào)常量、自定義類(lèi)型等命名。用標(biāo)識(shí)符給 C語(yǔ)言程序中各種對(duì)象命名時(shí),要用字母、下劃線(xiàn)和數(shù)字組成的字符序列,并要求首字符是字母或下劃線(xiàn),不能是數(shù)字。字母的大小寫(xiě)是有區(qū)別的。 ? 通常下劃線(xiàn)開(kāi)頭的標(biāo)識(shí)符是編譯系統(tǒng)專(zhuān)用的,因此在編寫(xiě) C語(yǔ)言源程序時(shí)一般不使用以下劃線(xiàn)開(kāi)頭的標(biāo)識(shí)符,而將下劃線(xiàn)用作分段符。 C51編譯器規(guī)定標(biāo)識(shí)符最長(zhǎng)可達(dá) 255個(gè)字符,但只有前 32個(gè)字符在編譯時(shí)有效,因此標(biāo)識(shí)符的長(zhǎng)度一般不要超過(guò) 32個(gè)字符。 ? 關(guān)鍵字是一種已被系統(tǒng)使用過(guò)的具有特定含義的標(biāo)識(shí)符。用戶(hù)不得再用關(guān)鍵字給變量等命名。 C語(yǔ)言關(guān)鍵字較少,ANSI C標(biāo)準(zhǔn)一共規(guī)定了 32個(gè)關(guān)鍵字,見(jiàn)表 關(guān)鍵字 用途 說(shuō)明 auto 存儲(chǔ)種類(lèi)說(shuō)明 用以說(shuō)明局部變量,缺省值為此 break 程序語(yǔ)句 退出最內(nèi)層循環(huán) case 程序語(yǔ)句 Switch語(yǔ)句中的選擇項(xiàng) char 數(shù)據(jù)類(lèi)型說(shuō)明 單字節(jié)整型數(shù)或字符型數(shù)據(jù) const 存儲(chǔ)種類(lèi)說(shuō)明 在程序執(zhí)行過(guò)程中不可更改的常量值 continue 程序語(yǔ)句 轉(zhuǎn)向下一次循環(huán) default 程序語(yǔ)句 Switch語(yǔ)句中的失敗選擇項(xiàng) do 程序語(yǔ)句 構(gòu)成 do… while循環(huán)結(jié)構(gòu) double 數(shù)據(jù)類(lèi)型說(shuō)明 雙精度浮點(diǎn)數(shù) else 程序語(yǔ)句 構(gòu)成 if… else選擇結(jié)構(gòu) enum 數(shù)據(jù)類(lèi)型說(shuō)明 枚舉類(lèi)型 extern 存儲(chǔ)種類(lèi)說(shuō)明 在其他程序模塊中說(shuō)明了的全局變量 float 數(shù)據(jù)類(lèi)型說(shuō)明 單精度浮點(diǎn)數(shù) for 程序語(yǔ)句 構(gòu)成 for循環(huán)結(jié)構(gòu) goto 程序語(yǔ)句 構(gòu)成 goto轉(zhuǎn)移結(jié)構(gòu) ANSI C語(yǔ)言的關(guān)鍵字 if 程序語(yǔ)句 構(gòu)成 if… else選擇結(jié)構(gòu) int 數(shù)據(jù)類(lèi)型說(shuō)明 基本整型數(shù) long 數(shù)據(jù)類(lèi)型說(shuō)明 長(zhǎng)整型數(shù) register 存儲(chǔ)種類(lèi)說(shuō)明 使用 CPU內(nèi)部寄存器的變量 return 程序語(yǔ)句 函數(shù)返回 short 數(shù)據(jù)類(lèi)型說(shuō)明 短整型數(shù) signed 數(shù)據(jù)類(lèi)型說(shuō)明 有符號(hào)數(shù),二進(jìn)制數(shù)據(jù)的最高位為符號(hào)位 sizeof 運(yùn)算符 計(jì)算表達(dá)式或數(shù)據(jù)類(lèi)型的字節(jié)數(shù) static 存儲(chǔ)種類(lèi)說(shuō)明 靜態(tài)變量 struct 數(shù)據(jù)類(lèi)型說(shuō)明 結(jié)構(gòu)類(lèi)型數(shù)據(jù) switch 程序語(yǔ)句 構(gòu)成 Switch選擇結(jié)構(gòu) typedef 數(shù)據(jù)類(lèi)型說(shuō)明 重新進(jìn)行數(shù)據(jù)類(lèi)型定義 union 數(shù)據(jù)類(lèi)型說(shuō)明 聯(lián)合類(lèi)型數(shù)據(jù) unsigned 數(shù)據(jù)類(lèi)型說(shuō)明 無(wú)符號(hào)數(shù)數(shù)據(jù) void 數(shù)據(jù)類(lèi)型說(shuō)明 無(wú)類(lèi)型數(shù)據(jù) volatile 數(shù)據(jù)類(lèi)型說(shuō)明 該變量在程序執(zhí)行中可被隱含地改變 while 程序語(yǔ)句 構(gòu)成 while和 do… while循環(huán)結(jié)構(gòu) Keil C51編譯器除了有 ANSI C標(biāo)準(zhǔn)的 32個(gè)關(guān)鍵字外,還根據(jù) 51單片機(jī)的特點(diǎn)擴(kuò)展了相應(yīng)的關(guān)鍵字。在 Keil C51開(kāi)發(fā)環(huán)境的文本編輯器中編寫(xiě) C程序,系統(tǒng)可以把保留字以不同的顏色顯示,缺省顏色為藍(lán)色。下表為 Keil C51編譯器擴(kuò)展的關(guān)鍵字。 關(guān)鍵字 用途 說(shuō)明 bit 位標(biāo)量聲明 聲明一個(gè)位標(biāo)量或位類(lèi)型的函數(shù) sbit 位變量聲明 聲明一個(gè)可位尋址變量 sfr 特殊功能寄存器聲明 聲明一個(gè)特殊功能寄存器( 8位) sfr16 特殊功能寄存器聲明 聲明一個(gè) 16位的特殊功能寄存器 data 存儲(chǔ)器類(lèi)型說(shuō)明 直接尋址的 8051內(nèi)部數(shù)據(jù)存儲(chǔ)器 bdata 存儲(chǔ)器類(lèi)型說(shuō)明 可位尋址的 8051內(nèi)部數(shù)據(jù)存儲(chǔ)器 idata 存儲(chǔ)器類(lèi)型說(shuō)明 間接尋址的 8051內(nèi)部數(shù)據(jù)存儲(chǔ)器 pdata 存儲(chǔ)器類(lèi)型說(shuō)明 “分頁(yè) ” 尋址的 8051外部數(shù)據(jù)存儲(chǔ)器 xdata 存儲(chǔ)器類(lèi)型說(shuō)明 8051外部數(shù)據(jù)存儲(chǔ)器 code 存儲(chǔ)器類(lèi)型說(shuō)明 8051程序存儲(chǔ)器 interrupt 中斷函數(shù)聲明 定義一個(gè)中斷函數(shù) reentrant 再入函數(shù)聲明 定義一個(gè)再入函數(shù) using 寄存器組定義 定義 8051的工作寄存器組 1. C51的變量 在程序執(zhí)行過(guò)程中,數(shù)值可以發(fā)生改變的量稱(chēng)為 變量 。 變量名與存儲(chǔ)單元地址相對(duì)應(yīng),變量值與存儲(chǔ)單元的內(nèi)容相對(duì)應(yīng)。 例如 三、 C51的變量及數(shù)據(jù)類(lèi)型 【 存儲(chǔ)類(lèi)別 】 數(shù)據(jù)類(lèi)型 【 存儲(chǔ)器類(lèi)型 】 變量名 (標(biāo)準(zhǔn) C) ( 標(biāo)準(zhǔn) C) * 括號(hào)項(xiàng) ——可以缺?。ǖ栌腥笔≈担? C51變量定義的四要素 : ( C51特有) (標(biāo)準(zhǔn) C+C51) 【 存儲(chǔ)類(lèi)別 】 數(shù)據(jù)類(lèi)型 【 存儲(chǔ)器類(lèi)型 】 變量名 共有四個(gè)說(shuō)明符: auto(自動(dòng)型) ——變量的作用范圍在定義它的函數(shù)體或語(yǔ)句塊內(nèi)。執(zhí)行結(jié)束后,變量所占內(nèi)存即被釋放。 extern(外部型) ——在一個(gè)源文件中被定義為外部型的變量,在其它源文件中需要通過(guò) extern說(shuō)明方可使用。 static(靜態(tài)型) ——利用 static可使變量定義所在的函數(shù)或語(yǔ)句塊執(zhí)行結(jié)束后,其分配的內(nèi)存單元繼續(xù)保留。 register(寄存器型) ——將變量對(duì)應(yīng)的儲(chǔ)存單元指定為通用寄存器,以提高程序運(yùn)行速度。 缺省存儲(chǔ)種類(lèi)為 auto (自動(dòng) )型變量 數(shù)據(jù)的不同格式叫做數(shù)據(jù)類(lèi)型 * 有符號(hào)數(shù)類(lèi)型可以忽略 signed標(biāo)識(shí)符 標(biāo)準(zhǔn) C語(yǔ)言的數(shù)據(jù)類(lèi)型 【 存儲(chǔ)類(lèi)別 】 數(shù)據(jù)類(lèi)型 【 存儲(chǔ)器類(lèi)型 】 變量名 C51擴(kuò)充 數(shù)據(jù)類(lèi)型: bit、 sfr或 sfr1 sbit bit 型 關(guān)鍵詞 bit用于定義一 個(gè)位變量 , 語(yǔ)法規(guī)則: bit bit_name [= 0或 1]。 例如: bit door = 0 。 //定義一個(gè)叫 door的位變量且初值為 0 標(biāo)準(zhǔn) C的變量定義舉例: int a = 5 。 //定義一個(gè)初值為 5的整形變量 a 語(yǔ)法規(guī)則: int int_name [ = 常數(shù) ]。 注意 :上述變量的物理地址是由編譯器分配的 sfr或 sfr16型 關(guān)鍵詞 sfr或 sfr16用于定義 SFR字節(jié)地址變量 ,語(yǔ)法規(guī)則: sfr 或 sfr16 sfr_name = 字節(jié)地址 常數(shù) 。 51MCU中有 21個(gè) SFR,如何定義與這些單元相關(guān)的變量? 例如, sfr P0 = 0x80。 //定義 P0口地址 80H sfr PCON = 0x87。 //定義 PCON地址 87H
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1