




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第7章單片機C語言程序設(shè)計教學(xué)目標(biāo)7.1單片機C51語言概述7.2C51語言基本語法7.3C51語言程序設(shè)計本章小結(jié)思考題與習(xí)題7.1單片機C51語言概述7.1.1單片機支持的高級語言7.1.2C51語言特點7.1.1單片機支持的高級語言程序設(shè)計高級語言PL/MBASICC51 是能夠利用單片機所有特性直接控制硬件的唯一語言,對于一些需要直接控制硬件的場合,匯編語言是必不可少的。但匯編語言不是一種結(jié)構(gòu)化的程序設(shè)計語言,對于較復(fù)雜的單片機應(yīng)用系統(tǒng),它的編寫效率很低。
語言適用于簡單編程而對編程效率、運行速度要求不高的場合,8052單片機內(nèi)固化有BASIC語言解釋器。是一種結(jié)構(gòu)化的語言,很象PASCAL,PL/M編譯器好象匯編器一樣產(chǎn)生緊湊的機器代碼,可以說是高級匯編語言,但它不支持復(fù)雜的算術(shù)運算,無豐富庫函數(shù)支持,學(xué)習(xí)PL/M無異于學(xué)習(xí)一種新的語言。
是一種通用的程序設(shè)計語言,其代碼率高,數(shù)據(jù)類型及運算符豐富,并具有良好的程序結(jié)構(gòu),適用于各種應(yīng)用的程序設(shè)計,是目前使用最廣的單片機編程語言。匯編語言BASICPL/MC51語言單片機的C語言編程稱為C51編程,C51語言本身不依賴機器硬件,不要求編程者對硬件深入了解,應(yīng)用C51編程具有以下優(yōu)點:1.語言簡潔、緊湊,使用方便、靈活。2.運算符、數(shù)據(jù)結(jié)構(gòu)豐富。3.結(jié)構(gòu)化程序設(shè)計。4.可以直接對計算機硬件進行操作。5.生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。6.可移植性好。7.1.2C51語言特點
用C語言開發(fā)系統(tǒng)可以大大縮短開發(fā)周期,明顯增強程序的可讀性,便于改進和擴充。而針對8051的C51語言日趨成熟,成為了專業(yè)化的實用高級語言。1.
對單片機的指令系統(tǒng)不要求了解,僅要求對8051的存貯器結(jié)構(gòu)有初步了解;2.
寄存器分配、不同存貯器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理;3.
程序有規(guī)范的結(jié)構(gòu),可分成不同的函數(shù),這種方式可使程序結(jié)構(gòu)化;4.
提供的庫包含許多標(biāo)準(zhǔn)子程序,具有較強的數(shù)據(jù)處理能力;5.
由于具有方便的模塊化編程技術(shù),使已編好程序可容易地移植;C-51與ASM-51相比,有如下優(yōu)點:7.2C51語言基本語法
7.2.1C51語言的函數(shù)及程序結(jié)構(gòu)7.2.2C51語言的數(shù)據(jù)類型及存儲類型7.2.3C51語言的運算符7.2.4C51語言的語句C51語言的指針7.2.7中斷函數(shù)、頭文件及絕對地址訪問7.2.5C51語言的數(shù)組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)7C51函數(shù)的一般格式
類型函數(shù)名(參數(shù)表)
{
聲明語句;執(zhí)行語句;
}
同C語言程序一樣,C51采用函數(shù)結(jié)構(gòu),每個C51語言程序由一個或多個函數(shù)組成。7.2.1C51語言的函數(shù)及程序結(jié)構(gòu)
其中,函數(shù)往往由“函數(shù)定義”和“函數(shù)體”兩個部分組成。函數(shù)定義部分包括有函數(shù)類型、函數(shù)名、形式參數(shù)說明等,函數(shù)名后面必須跟一個圓括號(),形式參數(shù)在()內(nèi)定義。函數(shù)體由一對花括號“{}”組成,在“{}”的內(nèi)容就是函數(shù)體。如果一個函數(shù)內(nèi)有多個花括號,則最外層的一對“{}”為函數(shù)體的內(nèi)容。函數(shù)體內(nèi)包含若干語句,一般由兩部分組成:聲明語句和執(zhí)行語句。聲明語句用于對函數(shù)中用到的變量進行定義。也可能對函數(shù)體中調(diào)用的函數(shù)進行聲明。執(zhí)行語句由若干語句組成,用來完成一定功能。當(dāng)然也有的函數(shù)體僅有一對“{}”,其中內(nèi)部既沒有聲明語句,也沒有執(zhí)行語句。這種函數(shù)稱為空函數(shù)。C語言美的語怪句規(guī)立則:1.每個穗變量勻必須先說關(guān)明后宵引用。2.書寫瘦時格照式十逮分自帖由,一行饞可以微書寫烈多條重語句,一個佳語句仗也可煙以多樣行書寫渴。但技每個桶語句連必須液以“;受”結(jié)效尾。3.注釋員用/*取……螺*/或者//表示炒。4.懶“{段}”花括惱號必考須成欠對,位吵置隨從意,洲多個牙花括冬號可城同行利書寫秩,也床可逐罷行書農(nóng)寫。5.區(qū)分艱大小各寫字壺母。為層吩次分題明,基增加攝可讀始性,帥同一主層的“{”花括丙對齊飽,采蓋用逐拍層縮豈進方傅式書曲寫。與一悼般C語言予的結(jié)南構(gòu)相蛛同:1、C5鋸1語言桃的函目數(shù)以“{”開字始,曾以“}”結(jié)傍束3、有團且只慣有一茂個ma頌in辨()函數(shù)鄰,以ma發(fā)in際()函數(shù)甘為程封序入怠口,雨中間沃可以額調(diào)用鏟其他遲函數(shù)姑,最緒后在ma真in劍()函數(shù)練結(jié)束2、程陣序體弱中包它含若續(xù)干語伯句還柏可以守包含絲式若干帳函數(shù)睜,均耍以;號結(jié)稼束。4、函躁數(shù)放槽置順減序可獻隨意尊,但晚是調(diào)用縮慧之后芬的函盒數(shù)需丙要先綱聲明。C語言今程序顛的組猛成結(jié)側(cè)構(gòu):全局死變量說明/*可被幫各函尖數(shù)引延用*/ma洪in(哭)關(guān)/喂*主函定數(shù)*/{局部桑變量說明/*只在遼本函也數(shù)引棗用*/執(zhí)行催語句(包括舞函數(shù)軟調(diào)用貓語句);}fu廁n1(形式遷參數(shù)寇表)晨/皂*函數(shù)1*手/形式彈參數(shù)性說明{局部滲變量腳說明執(zhí)行遣語句(包括凍調(diào)用短其他糾函數(shù)努語句)}…fu嚷nn(形式尺參數(shù)貫表)驢/被*函數(shù)n*以/形式牛參數(shù)深說明{局部烈變量驚說明執(zhí)行剛語句}uc交ha鼠r看ke觸ys層ca盆n(示vo矮id齡)貪//按鍵貼掃描勤函數(shù),返回4個按搖鍵值{XX店XX漲XX潮X;re裁tu呢rn批k蟲ey連;播//返回莖按鍵屯值:ke矩y}vo餓id直ma虎in看(v禁oi舟d){uc鄭ha涌r罪i;wh驕il較e(柳1){i=樹ke當(dāng)ys較ca斬n(摸);洗/沿/按鍵吃掃描占函數(shù)}}uc勇ha原r填ke舟ys崇ca培n(現(xiàn)vo滋id彩)徹//按鍵但掃描煉函數(shù),返回4個按歉鍵值{XX耍XX便XX驕X;re受tu遭rn止k長ey稱;咬//返回氏按鍵鳥值:ke芝y}uc才ha啄r折ke可ys丹ca豆n(椅vo錯id貼);//聲明逃函數(shù)vo飛id犬ma腎in鹿(v滾oi盡d){uc殿ha高r安i;wh鳴il航e(懶1){i=垮ke農(nóng)ys將ca桐n(沾);近/剝/按鍵筐掃描箏函數(shù)}}7.待2宅C爛51語言羊基本熔語法C5越1語言修的函腦數(shù)及石程序閱結(jié)構(gòu)C5災(zāi)1語言鞏的數(shù)閃據(jù)類步型及爬存儲石類型7.意2.方3C5鉛1語言不的運拴算符7.尺2.冒4C5梳1語言醉的語筋句C5碰1語言邀的指叨針7.華2.健7中斷針函數(shù)呆、頭桑文件數(shù)及絕里對地裂址訪比問7.擊2.育5C5趁1語言壺的數(shù)笨組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)77.丈2.川2礎(chǔ)C5悅1語言頭的數(shù)借據(jù)類槍型及見存儲涉類型C5冬1的數(shù)快據(jù)有循常量嘩和變攀量之狼分。在程連序運獻行中其值挽不變的量流??梢晕洖槭贿M制運數(shù)、絡(luò)十?dāng)[六進僚制數(shù)(用0x表示,匯編承后綴H)、字益符(‘’澇括訂起)和字婆符串界型常臥量(“”芬括起)。用符辦號表宇示常銅量,拾符號耐常用猜大寫房誠表示姓,此蹦符號已需用籍宏定魄義指鄙令(#宮de嗎fi勵ne兆)對其尚進行奸定義(相當(dāng)竄于匯昌編的拘“EQ膜U”偽指傲令)。#d夠ef趨in孔e抗AA球10忠0;相駕當(dāng)于AA充EQ夏U偏10背0常量——數(shù)值捉型常新量:符號躍型常補量:——在程則序運長行中劣其值可切以改督變的反量,常伶用小蠟寫字禿母表撥示。巨一個昏變量俊由兩筍部分森組成柳:變崖量名沾和變您量值爹。定義你一個擇變量椒,編者譯系牽統(tǒng)就勢會自這動為鵝它安綢排一糠個存覆貯區(qū)籌,具帳體的頑地址交值薯,用刑戶不忽必在粗意。變量在C5浮1中,室變量聾在使罪用前枯必須奇對變隔量進濤行定月義,標(biāo)指出水變量孟的數(shù)汽據(jù)類柜型和批存儲縫模式啄。以菜便編系譯系許統(tǒng)為亦它分指配相川應(yīng)的唯存儲吳單元莫。定豈義的精格式革如下伶:C5椅1的變沫量聲基明的仿一般然格式愈如下[數(shù)據(jù)誦類型][存儲曉類型]變量棚名[=初值];例如固:un堵si爛gn眾ed斥c毅ha繩r季co績de玻F至la請g嚇=曬0x雅0f胡;聲明資一個繪無符布號的ch派ar型變舊量Fl唐ag,賦勾初值0x遺0f;所監(jiān)在的叨存儲撿空間皆在的RO耕M中。C語言置中的到基本墓數(shù)據(jù)橋類型類型符號關(guān)鍵掃字?jǐn)?shù)的捉表示腔范圍所占淘位數(shù)整型字符虧型實型有無(s約ig窩ne圍d)亦i撐nt16-3回27鐘68絕~3叫27悶67(s徹ig陷ne第d)全s痛ho擔(dān)rt16-3筍27追68相~3差27程67(s疼ig倚ne柱d)鏡l濱on扭g32-2疼14統(tǒng)74星83還64笑8~喊21優(yōu)47迷48娃36張4716un鉆si粉gn先ed臘i法nt0~畏65災(zāi)53筒5320~養(yǎng)42插94鄭96伙72切95un賽si初gn已ed基l燦on洽g嘗in飄tun今si撫gn仗ed猜s獨ho脹rt悶i階nt160~步65幸53采5有fl濾oa纖t32有ch暖ar8-1卻28兄~1味27無un請si褲gn課ed轟c筍ha院r80~包25批5±1堆.1煩76找E–38敏~±作3.艦40供E+北38一、C5蠶1的數(shù)廣據(jù)類尚型:表明繡該數(shù)餓據(jù)有循無符誤號、涼位數(shù)影多少賠位,獨整數(shù)幫還是賠小數(shù)扁等信鼻息(續(xù))汗C5路1的數(shù)液據(jù)類管型擴竿充定舊義sf兵r:特殊貢功能存寄存例器聲跡明sf慮r1伐6:sf爛r的1絨6位蒸數(shù)據(jù)米聲明sb鬧it惡:特殊負(fù)功能溜位聲曠明bi樹t:位變提量聲竄明例:sf掠r領(lǐng)S環(huán)CO稈N約=寇0x放98長;sf泰r1滿6誘T桌2頁=寨0x答CC弄;sb樂it病OV辛=勾P膛SW^2;bi褲t級ke書ys準(zhǔn)ca弦nf長la阻g=濟1;二、C5玻1數(shù)據(jù)認(rèn)的存畜儲類曾型:存儲類型尋址空間數(shù)據(jù)長度值域范圍data直接尋址片內(nèi)RAM低128B,訪問速度快80~127idata間接尋址訪問的片內(nèi)RAM,允許訪問全部片內(nèi)RAM80~255bdata片內(nèi)RAM的可位尋址區(qū)(20H~2FH)10~127pdata用Ri間接訪問的片外RAM的低256B80~255xdata用DPTR間接訪問的片外RAM,允許訪問全部64k片外RAM160~65535code程序存儲器ROM64k空間160~65535指明肌變量源所處馬的單襯片機淋的存垂儲器奶區(qū)域艱情況冠。MC沫S-仆51存儲霸器結(jié)等構(gòu)圖(a趕)程序犁存儲煎器地彼址分近配;(b慨)數(shù)據(jù)堤存儲脫器地嚷址分陶配FFFFH1000H外部ROM0000H內(nèi)部ROMEA=1外部ROMEA=0工作寄存器區(qū)
位尋址區(qū)
數(shù)據(jù)緩沖區(qū)00H20H30H80H
外部
RAM0000HFFFFH0FFFHSFR2FH7FHFF佩H1F料H00港FF逼HC5虛1的變井量聲拍明的言一般禽格式霉如下[數(shù)據(jù)舞類型][存儲倒類型]變量架名[=初值],,;例如院:un察si究gn營ed慰c用ha裂rco迫deFl風(fēng)ag=底0x村0f曬;就是易聲明烘一個極無符劫號的ch貼ar型變戒量Fl慘ag,并棍給他煌賦初東值為0x涉0f;并禁且聲竿明他勿所在賣的存激儲空耐間在孝片內(nèi)蓄統(tǒng)一暑編址偷的RO旦M中。聲明鴉中,柄如果沒有存儲泥類型,則旅數(shù)據(jù)趨默認(rèn)務(wù)的存莫儲空裳間為da平ta型,過也就礦是在令片內(nèi)RA移M中。ch蟲ar泡d屆at棋a夾va如r;/*字符杜變量va捎r定位月在片到內(nèi)RA刷M區(qū)ch運ar半c粗od康e附MS菊G[]=″策EN夜TE蛋R絮PA屋RA恰ME攏TE源R:醬″/*字符贊數(shù)組柄定位吐在程萍序存泊貯區(qū)課*/un鄰si遷gn泄ed歐l丟on蓮g財xd余at妙a玩ar樣ra枕y[10閘0];/*無符肅號長匆型數(shù)漂組在蛋片外RA寄M區(qū),懶每付元素舒占4b喬yt絨es穴*/fl晴oa罰t逝id爸at重a信x,靈y,繁z;/*實型茂變量x,挖y,菊z,在派片內(nèi)補用間汁址訪暈問的密內(nèi)部RA掛M區(qū)*/bi奔t創(chuàng)l朱oc君k;/*位變歪量lo在ck定位假在片姐內(nèi)RA含M可位俘尋址再區(qū)*/un兔si輕gn游ed擊i增nt崗p蹄da闊ta逗d詳im銷en冶si機on;/*無符蒙號整蕩型變銅量di旬me燙ns陸io埋n定位炸在分漢頁的獻外部RA倆M區(qū)嚼*/un掩si毯gn歲ed刷c值ha道r晉xd思at辱a踩ve船ct業(yè)or吧[民10涉][蜂4]晴[4矩];/*無符蕩號字貫符型骨三材維勻數(shù)組值,肅定位蹄在片蔽外RA遞M區(qū)*/7.麻2風(fēng)C胡51語言享基本盤語法7.雷2.爹1C5鑰1語言葵的函撇數(shù)及奶程序碑結(jié)構(gòu)7.貪2.瓣2C5摸1語言傅的數(shù)膚據(jù)類避型及脈存儲押類型C5雙1語言就的運值算符7.橋2.墨4C5速1語言委的語儲句C5諒1語言確的指裹針7.嫩2.搜7中斷比函數(shù)萍、頭哥文件很及絕食對地純址訪趙問7.堡2.賠5C5房誠1語言客的數(shù)逗組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)7與C語言印基本皂相同骨:+疑-楊*陪/泥%(加旺減備乘醒除螞取頁余)>賭>=乏<慎<渾=(大聾于燙大廟于等域于仆小謠于貸小窩于等全于)==泛!=(測巾試等光于育測尤試不統(tǒng)等于分)&&予||猾!(邏效輯與莖邏輯嘩或涂邏救輯非?。?(賦攏值)>>刷<<(位怖右移糠位左隊移)&驚|(按位帶與平按斷位或蕩)^乘~(按位萬異或權(quán)按位尤取反瞞)7.踐2.羊3床C盛51語言污的運翁算符(&&)耀邏輯毅與揮和鍋(&)按軟位與巷有什雀么區(qū)惕別?即判燭斷&&兩側(cè)膨的表脂達(dá)式唉是否膽都為足真,分都為敲真則桑此&&表達(dá)循式值責(zé)為真劉;即將&兩側(cè)旁的數(shù)板用二慰進制繪展開荒,每膜一位位都求邁與運硬算最報后得倒到的信二進險制數(shù)述即為敲結(jié)果紛;邏銷輯與仿結(jié)果斬只講壺真和傅假,殲而按籮位與負(fù)得出嗓的卻扁是實作實在偷在的緩一個脾數(shù)9符=斯00狠00奮10奇01紡(父&)勾8遠(yuǎn)=永00寫00圣10伍00屯0競00蠢01烤00禽01艘(刷&&刻)皮0服09柴(冬&&脖)豎8鐵1&&是邏穴輯與些:&是按苗位與猴:C5膝1的左邀右移宏動命疲令(<<、>>)與改匯編盒指令倘環(huán)移有什怖么區(qū)唱別?C5棵1語言駕的左化右移請位都發(fā)是邏尾輯移質(zhì)位,啟也就呢是不刪循環(huán)泊,左移丟總是擁補0,但具右移倆就不胸同了爸,如般果被迫移位依的變兩量是扔一個有符猛號變碼量,型右移冰是補巨符號跌位,也垂就是榨最高利位是1就補1,是0就補0,如鍵果被謊移位閃的數(shù)障是一里個無符堆號變際量,窗則右劍移補0。x<較<y,表續(xù)示將疤數(shù)據(jù)x左移y位,樓低位端補0高位值丟棄匯編任指令較移位汪都是羅循環(huán)作移位膊,數(shù)板據(jù)不果丟失騰。A10111101RL玩Ai10111101i<<去1007.房誠2孕C緣瑞51語言?;緩B語法7.個2.解1C5彼1語言韻的函捧數(shù)及挺程序智結(jié)構(gòu)7.駕2.灘2C5轎1語言壇的數(shù)紐奉據(jù)類糟型及繁存儲迫類型7.朋2.資3C5撇1語言直的運努算符C5旬1語言殺的語脫句C5憐1語言孩的指約針7.晨2.蹦7中斷富函數(shù)豎、頭獸文件提及絕瓶對地槳址訪驚問7.貢2.爐5C5找1語言偵的數(shù)兆組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)71、控總制語釣句if悲(崖)訴…e材ls疫e…條件薯語句fo潔r(蟲)循環(huán)陵語句wh聰il幟e(狼)循環(huán)欺語句do索-w炊hi業(yè)le木()循環(huán)本語句sw塑it避ch裝/c艘as固e多分樂支選潮擇句co宏nt暗in呢ue結(jié)束侮本次綿循環(huán)舟語句br燈ea與k終止完執(zhí)行覽循環(huán)翠語句go盞to跳轉(zhuǎn)抗語句re吧tu隆rn從函議數(shù)返稅回值志語句7.油2.掌4冶C規(guī)51語言賭的語螺句2、空望語句它僅品是由秘一個排分號“;呢”構(gòu)成馳,什杜么也迅不做功,用慨于消睛耗機蛾器周膚期,瘦類似NO親P3、表毯達(dá)式漂語句一個探表達(dá)陶式和棟一個裹分號租構(gòu)成鉤,如su貢m=繞x+鋪y;4、復(fù)富合語防句一些朝語句卻用{}括起也來就記構(gòu)成喝復(fù)合殿語句5、函斥數(shù)調(diào)州用語舉句調(diào)用憐已經(jīng)蟻定義繁過的鐮函數(shù)7.觸2撫C走51語言弦基本酬語法7.產(chǎn)2.撓1C5鏟1語言癢的函紋數(shù)及閥程序疤結(jié)構(gòu)7.曲2.否2C5苦1語言上的數(shù)滿據(jù)類追型及檢存儲籌類型7.危2.茫3C5趟1語言堵的運德算符7.匠2.李4C5凱1語言肯的語鍵句C5汪1語言捉的指殼針7.惠2.希7中斷午函數(shù)員、頭諷文件晃及絕象對地甜址訪沿問C5浮1語言污的數(shù)握組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)77.軌2.撓5亦C5躍1語言梢的數(shù)寄組數(shù)組概是同鈔一類勤型的土一組不變量搞的有書序集倡合,錯利用貢數(shù)組冷名加貿(mào)下標(biāo)懸形式父引用種數(shù)組氧各個離元素梯。一維數(shù)據(jù)脹類型逐數(shù)今組名[常量算表達(dá)外式];多維課數(shù)苦據(jù)類蓋型悠數(shù)組健名[常量傍表達(dá)李式1]披..量.痰[,常熊量表釘達(dá)式N]喝;定義漏一維抹或多旱維數(shù)芹組的蘋方式森:un吉si愉gn棚ed答i奶nt弱x泰co隨un退t緊[1侍0]油;//定義墳無符遼號整掀形數(shù)栗組,有10個數(shù)敲據(jù)單葬元fl搜oa箏t垂ou申tn沃um祝[致10觀],鐘[1平0]訂;//定義阻浮點掛型數(shù)皺組,婦有10躲0個數(shù)柏?fù)?jù)單科元7.您2夾C豬51語言賤基本蒙語法7.宏2.高1C5互1語言事的函鋤數(shù)及飼程序沉結(jié)構(gòu)7.駐2.貸2C5只1語言咬的數(shù)焰據(jù)類活型及娃存儲族類型7.私2.森3C5嚴(yán)1語言斜的運伙算符7.罩2.載4C5理1語言污的語屠句C5任1語言扁的指刪針7.碼2.劃7中斷堅函數(shù)經(jīng)、頭循文件比及絕孕對地農(nóng)址訪在問7.箭2.區(qū)5C5伴1語言羊的數(shù)虜組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)77.尾2.瞇6藥C5管1語言薦的指昌針一、橋指針淺與指答針變量量內(nèi)存護中每貸一個演單元嗓都有貌一個含地址盆編號態(tài),指針倆就是焦存儲頂單元乳地址,存扛儲這騰個地籠址的崗變量浮稱為成指針綱變量茫。指針機的值?。褐羔樅虻念惡裥停褐羔樉o的定弟義:指針價存放升的是匠某個跌變量撕在內(nèi)獄存中庫的地課址指針攝的類踩型就樹是該鵲指針叢所指暑向的激變量長的類勢型被指紋數(shù)據(jù)伸類型[被指絹存貯批類型]籌*指針腔變量硬名;Px為指針型變量被指向的數(shù)據(jù)類型為長型被指向的數(shù)據(jù)在存貯器的類型為romlongcode*px;被指抗數(shù)據(jù)跳類型[被指瞎存貯包類型]貌*指針皮變量慣名;C5獵1中提逼供了斜兩個辨專門符的運企算符睛:*次指甚針運宜算符&取地腳址運兩算符取地紫址運雄算符“&”放在碰變量奧的前醉面,價通過訴它取報得變笨量的秧地址捕。例如竄:設(shè)旱變量x的內(nèi)扇容為12民H,地狀址為20側(cè)00奔Hp=蛋&x;//實現(xiàn)跑將x變量技的地惱址20艇00爽H送給彈指針嘗變量p,指概針變匹量p指向熔變量x,以童后可儉以通釣過*p訪問犧變量x。指針種運算吳符“*”放在食指針抹變量萬前面抖,通服過它綁實現(xiàn)扮訪問猾以指宅針變口量的代內(nèi)容訊為地催址所報指向可的存萍儲單良元。例如貌:x=證*p;//實現(xiàn)講把地淹址為20跳00墾H的存念儲單都元的內(nèi)播容送票給變袋量x直接尋址
間接尋址匯編語言C語言匯編語言C語言MOVn,m
傳送語句n=m;賦值語句MOVR1,#m;m的地址送R1MOVn,@R1;m的內(nèi)容送nP=&m;;/*m的地址P*/n=*P;;/*m的內(nèi)容n*/注:匯編憐語言棋程序戀中對紗符號倡地址n和m需用EQ遙U偽指輩令進窩行地獵址定鼻義。C語言懲應(yīng)對凡變量n、m和指辨針變腎量P需進神行類隆型定射義。表中&為取川地址餓運算陵符,疲*為困取內(nèi)洗容運勸算符敢。下面蓄表格治表示辦兩種慕語言排將m單元孩的內(nèi)炊容送n單元絕的對跌照語鐮句。7.挨2停C柿51語言牧基本矩語法7.肅2.哲1C5女1語言飛的函濃數(shù)及亮程序少結(jié)構(gòu)7.掙2.傭2C5僅1語言頌的數(shù)直據(jù)類字型及涌存儲夠類型7.違2.謹(jǐn)3C5么1語言惹的運碰算符7.氏2.跪4C5完1語言蓬的語悼句C5目1語言糟的指貝針中斷蜜函數(shù)艘、頭糞文件棚及絕墓對地非址訪銹問7.寫2.饒5C5打1語言掠的數(shù)置組實戰(zhàn)1實戰(zhàn)2實戰(zhàn)3實戰(zhàn)4實戰(zhàn)5實戰(zhàn)6實戰(zhàn)7一、C5勉1的包孩含的運頭文詞件C5塊1強大骨功能嗎及高業(yè)效率紐奉在于劇提供供了豐季富的暴可以貴直接沒調(diào)用床的庫購函數(shù)圣,包畏括I/意O操作覽、內(nèi)舊存分饒配、識字符刺串操晚作、嬌數(shù)據(jù)貞類型魄轉(zhuǎn)換些、數(shù)梢學(xué)計萄算等沙函數(shù)儀,都偵在相憶應(yīng)的上頭文隸件里蠶面。通常馬有:r茅eg訂51誓.h您m輩at冬h.荒h槍ct服yp椒e.億h吼st卷di喇o.網(wǎng)h兆s列td優(yōu)li禮b.首h恒a鴿bs脅ac偏c.賠h性i秋ns勵ti梅ns叼.h7.妥2.歇7頭文懷件、扔中斷銜函數(shù)宣及絕和對地刺址訪孩問包含挎的頭紛文件晃的方咽法#i慣nc趁lu襯de煎<r匙eg樂52丹.h攪>#i歷nc遲lu梯de陰<i經(jīng)nt井ri墾ns首.h饒>re渣g5且1.城h-量--座51的特彈殊寄糠存器爆定義re楚g5墾2.泊h-烤--甜52的特敏殊寄方存器猛定義ab肥sa幅cc煎.h挑--矩-包含看訪問80漢51不同新存儲配區(qū)的確宏定麻義ct糧yp循e.濫h-柜--字符牽轉(zhuǎn)換科和分囑類程膏序in杰ti且ns咽.h嘉--臣-包含除左右舞環(huán)移呆、空錢操作翠等匯岸編程柴序ma槍th蔥.h丈--墊-數(shù)學(xué)節(jié)程序st咬dl巧ib坊.h如--創(chuàng)-存儲煮器分墾配程困序st躺di針o.禍h-頂--流輸灘入和仰輸出科程序st忙ri恢ng理.h是--臣-字符栽轉(zhuǎn)操緊作程旺序,緩沖患區(qū)操束作程猶序二、覺中斷座服務(wù)土程序vo逼id函數(shù)炎名(vo雄id)in匆te鋒rr紋up販t子nus段in糟g遠(yuǎn)m{}中斷源nINT00定時器T01INT12定時器T13串行口中斷4二、成中斷旋服務(wù)朵程序vo申id函數(shù)愧名(vo雜id)in務(wù)te督rr頑up佛t邊nus夾in木g篇m{}工作寄存器組m00112233三、四絕對牲地址報訪問C5答1對存貯仆器和摔外接I/耍O口的境絕對就地址爛訪問可以頃通過崗指針欲訪問治,也駝可以息通過棟庫函絮數(shù)訪攏問。1.通過圓指針顧訪問閣絕對亦地址*zi嫌we揭im戀a=優(yōu)0x巖01千;//指針戶就是涉變量邪的地仗址,造前加喇*表部示該訂地址曲的變海量,則將01堵H送給櫻指針妄所指罪向的則片外RA獵M8番00紫2H單元uc凍ha矩r緞xd橋at轎a塵*御zi瓣we久im蛙a=序0x翅80皺02惡;//定義問了一計個指貿(mào)向片援外RA團M8知00才2H單元蹦的指巡壽針,uc欲ha細(xì)r類型笛說明疼指針卡所指慈向的性單元財?shù)膬?nèi)博容是鼓無符藍(lán)號八叢位的2.通過悲庫函網(wǎng)數(shù)訪佩問絕跳對地躺址利用絕對繡地址淘訪問恢的頭夜文件ab掠sa么cc漸.h可對嗽不同郊的存瞞貯區(qū)姥進行組訪問角。該存頭文倦件的善函數(shù)之有:CB失YT姜E(訪問co測de區(qū)RO聯(lián)M字符稿型)DB壟YT刺E(訪問da扛ta區(qū)字粘符型)PB乎YT智E(訪問pd摩at僚a或外猴部I/戒O口)XB嚷YT目E(訪問xd掙at白a或外先部I/為O口)例:#i神nc憤lu幸de舉<a壘bs遇ac喚c.肉h>信#閱de蒙fi芝ne止z偶iw撞ei酒ma戶X耀BY復(fù)TE[0x顆80重02]zi框we棒im更a=桂0x墓01掉;7.爹3款C掏51語言專程序噸設(shè)計思實戰(zhàn)實戰(zhàn)1從點墾亮一蟲個LE姑D開始實戰(zhàn)2閃爍陽一個LE誘D實戰(zhàn)3玩轉(zhuǎn)虹流水援燈實戰(zhàn)4中斷歡控制末流水金燈實戰(zhàn)5定時況器控放制流年水燈實戰(zhàn)6計數(shù)葵器控定制流盛水燈實戰(zhàn)7片外RA燭M數(shù)據(jù)輩讀取充控制禿流水?dāng)罒魧崙?zhàn)1、P1摩.0發(fā)光拳二極嚴(yán)管陰撿極,墻二極季管陽速極通木過電糧阻接VC店C,向假引腳攏送0則該悟二極位管發(fā)鴉光。劣要求點亮P1角.0上的罪發(fā)光齡二極腸管(0亮1滅)塔。修改段程序箭,P1斷.0輸出頸方波針,發(fā)殖光二蠶極管躬閃爍b、匯裂編語銹言實糕現(xiàn)c、C5買1語言輝實現(xiàn)a、Pr誓ot雄eu釀s仿真格圖a、Pr巧ot畜eu嗓s仿真予圖c、C5瓶1語言也實現(xiàn)b、匯勝編語叫言實算現(xiàn)實戰(zhàn)2、P1償.0發(fā)光呈二極濤管陰滾極,星二極反管陽菠極通繼過電著阻接VC師C,向?qū)僖_盾送0則該復(fù)二極樸管發(fā)錘光。禍要求P1主.0輸出褲方波皺,發(fā)瓣光二蜂極管L1閃爍辮。修改纖程序黨,P1口八舟個發(fā)釘光二妙極管既循環(huán)征左右胡移b、匯棍編語不言實吵現(xiàn)c、C5規(guī)1語言捎實現(xiàn)a、Pr遍ot猴eu腦s仿真葛圖a、Pr穗ot床eu脫s仿真掠圖b、匯苗編語冒言實蔬現(xiàn)c、C5貧1語言稱實現(xiàn)描方法潔一c、C5們1語言月實現(xiàn)蟻方法曲二實戰(zhàn)3、
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)作物種子買賣合同(蔬菜類)6篇
- 銷售業(yè)務(wù)外包合作協(xié)議
- 醫(yī)院信息保密承諾協(xié)議書
- 產(chǎn)品物流配送計劃書
- 智能電網(wǎng)改造合作協(xié)議
- 專業(yè)人力資源管理服務(wù)合同
- 招商代理委托協(xié)議書
- 2025年博爾塔拉道路貨運輸從業(yè)資格證模擬考試題庫
- 小學(xué)英語試卷總體評價
- 高壓化成箔競爭策略分析報告
- 第一課+追求向上向善的道德【中職專用】中職思想政治《職業(yè)道德與法治》高效課堂(高教版2023·基礎(chǔ)模塊)
- 生豬屠宰獸醫(yī)衛(wèi)生檢驗人員理論考試題庫及答案
- 教師的五重境界公開課教案教學(xué)設(shè)計課件案例試卷
- 軟基處治面積四方聯(lián)測測量記錄表(清淤后)
- 考試通用答題卡word模板
- 尾礦庫安全檢查表
- 解除、終止勞動合同通知書范本
- 深信服桌面云方案
- 2021年深圳實驗學(xué)校初中部七年級入學(xué)分班考試數(shù)學(xué)試卷及答案解析
- 海克斯康三坐標(biāo)測量儀的使用課件
- 高血壓臨床路徑
評論
0/150
提交評論