版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
一.C語言的語法基礎(chǔ)二.C語言的基本數(shù)據(jù)類型三.常量和變量第二章常量、變量及數(shù)據(jù)類型第二章目錄一、C語言的語法基礎(chǔ)
1、C語言字符集C語言的基本符號可分4個類,歸納如下:(1)英文字母:大小寫各26個,共計52個;(2)阿拉伯?dāng)?shù):0、1、2、3、4、5、6、7、8、9共10個數(shù)字;(3)下劃線:_;(4)特殊符號:通常由1~2個符號組成,主要用來表示運算符。第二章C語言語法基礎(chǔ)
例如:算術(shù)運算符:+-*/%++--關(guān)系運算符:<>>=<===!=邏輯運算符:&&||!位運算符:&|~^>><<條件運算符:?:賦值運算符:=其他分隔符:()[]{}.,;第二章C語言語法基礎(chǔ)2、標(biāo)識符(*)概念:就是用來標(biāo)識變量名、符號常量名、函數(shù)名、類型名、文件名等的有效字符序列。定義規(guī)則:(1)標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符必須為字母或下劃線。如:_1yearmonthstudent_namesum0M.D.Jones$123#a3b?ca=b第二章C語言語法基礎(chǔ)(2)在C語言中,大小寫字母不等效。因此,a和A,I和i,Sum和sum,分別是兩個不同的標(biāo)識符。(3)用戶自定義的標(biāo)識符不能與保留字(關(guān)鍵字)同名。保留字第二章C語言語法基礎(chǔ)3、關(guān)鍵字概念:就是具有特定含義的標(biāo)識符,用戶不能用來作自定義標(biāo)識符。C語言中的關(guān)鍵字較少,由ANSI標(biāo)準(zhǔn)推薦的關(guān)鍵字有32個。常用的有:(1)與數(shù)據(jù)類型有關(guān)的(14):charintfloatdoublesignedunsignedshortlongvoidstructuniontypedefenumsizeof第二章C語言語法基礎(chǔ)(3)
與程序控制結(jié)構(gòu)有關(guān)的(12):dowhileforifelseswitchcasedefaultgotocontinuebreakreturn
(2)與存儲類別有關(guān)的:autoexternregisterstatic第二章C語言語法基礎(chǔ)
1.以下標(biāo)識符是否正確
YearNew_year5abcth#2.以下標(biāo)識符是否等價Abcabc練習(xí)1:第二章C語言語法基礎(chǔ)
標(biāo)準(zhǔn)C數(shù)據(jù)類型基本類型(簡單類型)數(shù)值類型整型短整型(short)基本型(int)長整型(long)實型浮點型單精度型(float)雙精度型(double)字符類型(char)枚舉類型(enum)構(gòu)造類型(組合類型)數(shù)組類型結(jié)構(gòu)體類型(struct)共用體類型(union)文件類型(FILE)指針類型
空類型(void)
二、數(shù)據(jù)類型概述無符號型(正數(shù)、0)數(shù)據(jù)類型字節(jié)個數(shù)(位數(shù))取值范圍short2(16)-32768~+32767unsignedshort2(16)0~+65535int2(16)-32768~+32767unsigned2(16)0~+65535long4(32)-2147483648~2147483647unsignedlong4(32)0~42949672951、實型
數(shù)據(jù)類型(關(guān)鍵字)字節(jié)個數(shù)取值范圍位數(shù)float4約-3.4×10-38~+3.4×103832double8約-1.7×10-308~+1.7×1030864第二章數(shù)據(jù)類型實型二種表現(xiàn)形式:十進(jìn)制形式:由數(shù)字和小數(shù)點組成;例如:3.44.
.3
指數(shù)形式:由“十進(jìn)制小數(shù)”+“e(或E)”+“十進(jìn)制數(shù)整數(shù)”三部分組成。例如:12.5e-6表示12.5×10-6十進(jìn)制小數(shù)e(或E)十進(jìn)制整數(shù)第二章數(shù)據(jù)類型注意:
小數(shù)點不能單獨出現(xiàn);
e或E的兩邊必須有數(shù),且其后面必須為整數(shù);
如:0.、.0應(yīng)為:.
如:6E0.2e56E
二種表現(xiàn)形式:用單引號括起來的由反斜杠(\)引導(dǎo)的轉(zhuǎn)義字符。如:'\n''\101''\x41'在統(tǒng)計字符個數(shù)時,只能記為一個字符第二章數(shù)據(jù)類型用單引號括起來的一個字符;如:'A'、'1'、'?'等。只能是英文的單引號2、字符型(每個字符型數(shù)據(jù)在內(nèi)存中占一個字節(jié))轉(zhuǎn)義字符表字符形式功能\n換行\(zhòng)t、\V橫向跳格、\b、\r豎向跳格退格、\f回車\\、\'、\"8進(jìn)制數(shù)表示的ASCII碼對應(yīng)的字符反斜杠、單引號、雙引號第二章數(shù)據(jù)類型\ddd換頁\xhh16進(jìn)制數(shù)表示的ASCII碼對應(yīng)的字符第二章數(shù)據(jù)類型一個字符的多種表示方法:65D(十進(jìn)制)=41H(十六進(jìn)制)=101O(八進(jìn)制)∴字符A可以表示為'A'、65、0x41、0101。用進(jìn)制數(shù)來如何表示整型數(shù):以數(shù)字0開頭的為八進(jìn)制數(shù);以0x或0X開頭的為十六進(jìn)制數(shù);否則都是十進(jìn)制數(shù)。第二章數(shù)據(jù)類型嵌入式C的常用數(shù)據(jù)類型
數(shù)據(jù)類型
大小無符號(unsigned)數(shù)據(jù)范圍
有符號(signed)數(shù)據(jù)范圍Char(byte)8bits0~255–128~127Shortint(word)16bits0~65535–32768~32767Int(word)16bits0~65535–32768~32767longint(dword)32bits0~4294967295–2147483648~2147483647三、常量與變量1、常量概念:在程序運行中,其數(shù)值不能被改變的量。分類:直接常量和符號常量1)直接常量:是在程序中直接引用的數(shù)據(jù)。分為:整型、字符型以數(shù)據(jù)的原形出現(xiàn)!X=2第二章常量和變量第二章常量和變量2)符號常量特點:在程序中不能給它賦值。概念:是用標(biāo)識符來表示一個數(shù)據(jù)。
定義形式:(1)#define標(biāo)識符常量數(shù)據(jù)例如:#definePI3在程序預(yù)處理時,凡是出現(xiàn)標(biāo)識符PI的地方都將用數(shù)據(jù)3來替換。如:2*2*PI就等價于2*2*3(2)byteconsta=10;a=7;第二章常量和變量2、變量的概念變量是指在程序運行中,其值可以被改變的量。變量代表內(nèi)存中的某一存儲空間,該存儲空間中存放的數(shù)據(jù)就是變量的值。在同一程序塊中,每個變量都有唯一的名字,不能被重復(fù)定義。使用變量時必須“先定義,后使用”。bytea,b,c;wordx,y;
自己設(shè)定,滿足標(biāo)識符的規(guī)定。如:byteword;不可省1)定義形式:類型標(biāo)識符變量名1[,變量名2,變量名3,...];例如:說明:(1)類型標(biāo)識符有時會添加說明關(guān)鍵字(2)用volatile聲明,在嵌入式系統(tǒng)中允許其它操作是:中斷服務(wù)程序的操作、硬件動作的操作。用volatile聲明的變量是不會被編譯器優(yōu)化掉的,例如:volatileunsignedcharPortA@0x0000;a=PORTA;a=PORTA;由于PORTA是用volatile聲明的變量,編譯器不會把它優(yōu)化成一句,而如果不是volatile聲明的編譯器就會將第二句優(yōu)化掉,從而程序?qū)雎暂斎攵丝诘淖兓?。通常把嵌入式設(shè)備的所有外圍器件寄存器都聲明為volatile的。
第二章常量和變量2)變量初始化
在說明變量的同時賦給變量一個初始值。1)變量定義分配存儲空間2)變量初始化分配存儲空間的同時存入數(shù)據(jù)bytea,b;ab??bytea=1,b=2;ab12不確定第二章常量和變量說明:(1)變量名為標(biāo)識符,應(yīng)按照標(biāo)識符要求定義(2)一個變量不能重復(fù)定義(3)變量的初始化不能使用連等bytea=b=c=3;(4)變量的定義必須放在程序之前例1:看一看,下列的定義哪些是正確的?bytea=5,b=3;bytea,b,c;a=b=c=3;bytea=b=c=3;第二章常量和變量第二章常量和變量3)變量的作用范圍
變量根據(jù)其定義方式的不同,作用的范圍也不同.第二章小結(jié)小結(jié)1、數(shù)據(jù)類型的引入及意義2、符號常量的定義形式和引入符號常量的意義3、變量的定義、賦值、初始化第二章小結(jié)練習(xí)1(填寫實訓(xùn)報告)1、練習(xí)2.1中修改錯誤的變量的定義方式(寫你修改的正確答案,不寫源程序)2、在仿真窗口中單步調(diào)試,記錄變量的類型及大小特別注意com的值。(寫你觀察到的com值,并寫明原因)3、練習(xí)定義一個名為ex1的單字節(jié)變量名為ex2的雙字節(jié)變量名為ex3,初始值為20的單字節(jié)變量第二章小結(jié)練習(xí)2(填寫實訓(xùn)報告)1、新建一個工程,按照通用板電路原理圖進(jìn)行端口初始化(參照工程2.2初始化寄存器參考)第二章小結(jié)練習(xí)2(填寫實訓(xùn)報告)附加題:點亮led1第二章小結(jié)練習(xí)2(填寫實訓(xùn)報告)1、什么是單片機(jī)端口?2、什么是單片機(jī)端口的方向?3、單片機(jī)端口有幾種狀態(tài)?4、端口的初始化時先方向、后數(shù)據(jù)?還是先數(shù)據(jù)后方向?2.3知識鏈接1:單片機(jī)MC9S08AC16引腳2.3.1AC16引腳一覽表引腳序號普通I/O特殊功能1特殊功能2引腳序號普通I/O特殊功能1特殊功能21PTC4
12PTE4/SS12
IRQTMPCLK13PTE5MISO13
/RESET14PTE6MOSI14PTF0TPM1CH2
15PTE7SPSCK15PTF1TPM1CH3
16
VSS6PTF4TPM2CH0
17
VDD7PTF5TPM2CH1
18PTG0KBIKP08PTE0
TxD119PTG1KBIKP19PTE1
RxD120PTG2KBIKP210PTE2TPM1CH0
21PTA0
11PTE3TPM1CH1
22PTA1
2.3.2部分特殊引腳介紹VDD和VSS是單片機(jī)主電源的供電引腳,VDD接5V或者3V,VSS接地。實際應(yīng)用時,在VDD和VSS之間應(yīng)該跨接一個10μF的電解電容和一個0.1μF的瓷片電容。VDDAD和VSSAD是單片機(jī)AD(模數(shù))變換模塊的工作電源,AD變換模塊采用自己的工作電源是為了提高AD變換的穩(wěn)定性和精度。實際應(yīng)用時,在VDDAD和VSSAD之間還應(yīng)該跨接一個0.1μF的瓷片電容作為旁路電容。VREFH和VREFL分別是AD變換模塊的高、低參考電壓。2.3.3單片機(jī)的I/O口(1)I/O的作用人體的五官、四肢、皮膚:這些是人體的感官,人體與外界的交互就是靠它們完成的。單片機(jī)的I/O:單片機(jī)的I/O有如人體的感官,單片機(jī)獲取外部的信息、控制外界的部件,就是依賴它們完成的。人體感官與單片機(jī)I/O的區(qū)別:人體感官的功能比較復(fù)雜,不僅負(fù)責(zé)了信號的輸入輸出,而且還有知覺、動作,可以說是一種頂級的傳感器,而單片機(jī)I/O只負(fù)責(zé)芯片電信號的輸入輸出。2.3.3單片機(jī)的I/O口(2)I/O口狀態(tài)的表示方向寄存器。單片機(jī)的I/O口既能作為輸入又能作為輸出,為了確定I/O口的方向,引入了方向寄存器的概念。數(shù)據(jù)寄存器。單片機(jī)的某個I/O口的狀態(tài)既可以為1(高電平)又可以為0(低電平),為了存儲I/O口的狀態(tài),引入了數(shù)據(jù)寄存器的概念。以B口為例,方向寄存器為PTBDD,數(shù)據(jù)寄存器為PTBD。2.3.3單片機(jī)的I/O口(3)I/O的工作原理當(dāng)PTBDD0=1時,三態(tài)緩沖器#1、#2選通,#3截止,單片機(jī)內(nèi)部數(shù)據(jù)總線寫到數(shù)據(jù)寄存器中的信號PTBD0經(jīng)過三態(tài)緩沖器#1緩沖后從引腳PTB0輸出,這時,引腳PTB0就是作為輸出引腳;同時,數(shù)據(jù)寄存器中的信號PTBD0經(jīng)過三態(tài)緩沖器#2緩沖后又送回單片機(jī)的內(nèi)部數(shù)據(jù)總線,使單片機(jī)內(nèi)部能夠了解PTB0當(dāng)前的信號是什么狀態(tài)。PTBDD0PTBD02.3.3單片機(jī)的I/O口(3)I/O的工作原理當(dāng)PTBDD0=0時,三態(tài)緩沖器#3選通,#1、#2截止,引腳PTB0的信號經(jīng)過三態(tài)緩沖器#3緩沖后輸入到單片機(jī)的內(nèi)部數(shù)據(jù)總線中并保存在數(shù)據(jù)寄存器中,這時,引腳PTB0就是作為輸入引腳。PTBDD0PTBD02.3.3單片機(jī)的I/O口(4)上拉電阻與下拉電阻的概念上拉電阻或者下拉電阻電路的目的是使采樣點平常的電位為一個確定的電平。上拉電阻電路下拉電阻電路無上下拉電阻電路2.5.3實驗步驟首先,把原來的LED初始化部分的程序:BCLR0,PTBD;把I/O口PTBD0設(shè)為低電平BSET0,PTBDD;把I/O口
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024內(nèi)貿(mào)集裝箱貨物運輸代理與保險一體化服務(wù)合同
- 2024年度魚池轉(zhuǎn)讓及養(yǎng)殖產(chǎn)業(yè)一體化服務(wù)合同范本3篇
- 采購合同框架協(xié)議的簽訂主體3篇
- 采購合同跟蹤的方法研究3篇
- 采購合同預(yù)付款的會計處理3篇
- 采購合同中的國際商務(wù)禮儀3篇
- 采購合同中的履約保證措施與實踐3篇
- 采購戰(zhàn)略合同的綠色發(fā)展戰(zhàn)略成效3篇
- 2024年度高新技術(shù)成果轉(zhuǎn)化擔(dān)保合同范例3篇
- 采購合同簽訂臺賬3篇
- 【《“雙減”背景下小學(xué)數(shù)學(xué)創(chuàng)新作業(yè)設(shè)計問題研究》(論文)】
- 廉政知識競賽大題庫及答案(共500道)
- 德勤-2023年印度尼西亞投資之窗 (IWI) 中文版
- 電力建設(shè)工程現(xiàn)行主要質(zhì)量標(biāo)準(zhǔn)、規(guī)范清單
- 2023年高校輔導(dǎo)員基礎(chǔ)知識復(fù)習(xí)題(附答案)
- 專題02:名著導(dǎo)讀-2022-2023學(xué)年八年級語文下學(xué)期期中專題復(fù)習(xí)(北京專用)
- 吉林大學(xué)藥學(xué)導(dǎo)論期末考試高分題庫全集含答案
- 2023-2024學(xué)年河北省唐山市灤州市數(shù)學(xué)七年級第一學(xué)期期末教學(xué)質(zhì)量檢測模擬試題含解析
- 高考語文新題型+“文學(xué)短評”相關(guān)寫作(真題+技法+練習(xí))
- 中考數(shù)學(xué)計算題100道
- 集團(tuán)資產(chǎn)重組實施方案
評論
0/150
提交評論