DS軟件開發(fā)與C語言編程_第1頁
DS軟件開發(fā)與C語言編程_第2頁
DS軟件開發(fā)與C語言編程_第3頁
DS軟件開發(fā)與C語言編程_第4頁
DS軟件開發(fā)與C語言編程_第5頁
已閱讀5頁,還剩74頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第4章

DSP的軟件開發(fā)與C語言編程本章內(nèi)容:4.1DSP開發(fā)工具與軟件開發(fā)流程4.2集成開發(fā)環(huán)境CCS4.3DSP的C工程文件

4.4DSPC語言程序設(shè)計(jì)基礎(chǔ)4.5DSPC程序舉例5/19/20231山東大學(xué)控制學(xué)院張東亮4.1DSP開發(fā)工具與軟件開發(fā)流程1.DSP開發(fā)工具硬件TIXDS510(ExtendedDevelopmentSystem)硬件仿真器。DSK(DSPStarterKit)初學(xué)者開發(fā)套件。瑞泰ICETEK-5100PP/USBDSP開發(fā)系統(tǒng)。評(píng)估板。DSP教學(xué)實(shí)驗(yàn)系統(tǒng)。開發(fā)工具包括硬件、軟件兩部分。硬件部分主要是仿真器(Emulator),軟件主要是集成開發(fā)環(huán)境CCS(CodeComposerStudio)。DSP開發(fā)系統(tǒng)(仿真器)有PCI插卡式、并口式、USB接口式,目前多用USB接口式,即DSP開發(fā)系統(tǒng)通過USB接口與PC機(jī)相連,開發(fā)系統(tǒng)通過JTAG(基于掃描的仿真)接口與用戶目標(biāo)板相連,實(shí)現(xiàn)DSP軟硬件調(diào)試與程序燒寫。5/19/20232山東大學(xué)控制學(xué)院張東亮

DSP評(píng)估板(也稱為EVM板、目標(biāo)板、DEMO板、實(shí)驗(yàn)板等),包括基本的DSP芯片及必要的電源、時(shí)鐘、復(fù)位電路外,還經(jīng)常包括用于程序調(diào)試的片外擴(kuò)展存儲(chǔ)器、擴(kuò)展的A/D、D/A轉(zhuǎn)換器、鍵盤顯示電路、EEPROM、RS232串行接口、SPI接口、CAN接口驅(qū)動(dòng)電路、簡(jiǎn)單應(yīng)用電路等。F2812DSP評(píng)估板5/19/20233山東大學(xué)控制學(xué)院張東亮F2812DSP評(píng)估板原理框圖開發(fā)系統(tǒng)與評(píng)估板5/19/20234山東大學(xué)控制學(xué)院張東亮2812EVM板的主要性能指標(biāo)如下:(1)TMS320F2812,運(yùn)行速度150MIPS。(2)片內(nèi)RAM18K字。(3)擴(kuò)展RAM64K字。(4)片內(nèi)16路12位A/D轉(zhuǎn)換器,最大采樣速率12.5MSPS。(5)擴(kuò)展的4路12位D/A轉(zhuǎn)換器DAC7617。(6)兩路UART串行接口,符合RS-232C標(biāo)準(zhǔn)。(7)16路PWM輸出。(8)CAN總線標(biāo)準(zhǔn)接口。(9)用戶開關(guān)與指示燈。(10)片內(nèi)128K字Flash存儲(chǔ)器,帶128位加密位。(11)IEEE1149.1兼容的邏輯掃描電路即JTAG接口,用于仿真調(diào)試。(12)+5V電源輸入,板上3.3V,1.8V電源管理。5/19/20235山東大學(xué)控制學(xué)院張東亮5/19/20236山東大學(xué)控制學(xué)院張東亮2.軟件開發(fā)流程軟件開發(fā)流程框圖5/19/20237山東大學(xué)控制學(xué)院張東亮

軟件開發(fā)流程

1)編輯:生成源程序(*.asm,*.c)、頭文件(*.h)與命令文件(*.cmd)。2)編譯與匯編:生成目標(biāo)文件(*.obj,公共目標(biāo)文件COFF格式)及列表文件(*.lst)。3)連接:生成可執(zhí)行代碼文件(*.out)及映射文件(*.map)。4)調(diào)試:通過JTAG接口下載到目標(biāo)系統(tǒng)EVM。5)通過JTAG接口將程序固化燒寫到Flash存儲(chǔ)器。5/19/20238山東大學(xué)控制學(xué)院張東亮軟件開發(fā)工具主要有源程序編輯器(Editor)編譯器(Compiler)匯編器(Assembler)鏈接器(Linker)歸檔器(Archiver)運(yùn)行時(shí)支持庫(kù)(Run-Time-SupportLibrary)庫(kù)建立程序(Library-buildUtility)HEX轉(zhuǎn)換程序(HexConversionUtility)3.軟件工具5/19/20239山東大學(xué)控制學(xué)院張東亮絕對(duì)列表器(AbsoluteLister)和交叉引用列表器(Cross-ReferenceLister)調(diào)試工具(Debuggingtools)C++名稱復(fù)原程序(C++NameDemanglingUtility)GEL語言(GeneralExtensionLanguage,通用擴(kuò)展語言)DSP/BIOS等。5/19/202310山東大學(xué)控制學(xué)院張東亮1.CCS軟件安裝與設(shè)置CCS2.0’C2000(CCS3.3)驅(qū)動(dòng)程序設(shè)置。Simulator:PC模擬軟件仿真。Emulator:實(shí)時(shí)DSP硬件仿真。4.2集成開發(fā)環(huán)境CCS5/19/202311山東大學(xué)控制學(xué)院張東亮CCS運(yùn)行主窗口

5/19/202312山東大學(xué)控制學(xué)院張東亮CCS主要工具源程序編輯器(Editor)。C編譯器(CCompiler)。匯編器(Assembler)。連接器(Linker)。調(diào)試工具(Debug)。十六進(jìn)制轉(zhuǎn)換公用程序(HexConversionUtility)。5/19/202313山東大學(xué)控制學(xué)院張東亮2.CCS主要菜單與功能典型的CCS運(yùn)行界面如圖所示。CCS的功能可以通過菜單或工具條按鈕實(shí)現(xiàn)。主要的菜單項(xiàng)有File、Edit、View、Project、Debug等。這些菜單的使用與常用的集成開發(fā)軟件VisualC++等使用方法基本一樣。5/19/202314山東大學(xué)控制學(xué)院張東亮典型CCS運(yùn)行界面5/19/202315山東大學(xué)控制學(xué)院張東亮Co嘆de棚C膊om訴po諸se劍r扇St沾ud喂io?Co遵mp殺on孕en諸ts證R棋ob辯us理t,群E幅as西y-洪to辦-U野se機(jī)D請(qǐng)ev帖el炎o(hù)p證me翅nt箱E訴nv爐ir晌on襯me肅ntHelpCPUWindowMemorywindowGraphwindowProjectManager:Source&objectfilesFiledependenciesCompiler,Assembler&LinkerbuildoptionsStatuswindowFullC/C++&AssemblyDebugging:C&ASMSourceMixedmodeDisassembly(patch)SetBreakPointsSetprobePointsWatchwindowProductiveEditor:StructureExpansionMenusorIcons5/墨18增/2登02悅316山東紡大學(xué)川控制款學(xué)院睛張東滔亮Re錯(cuò)al烏-t探im昂e兵De慣bu萬gg嘴in史gAl栽lo公ws楚y驅(qū)ou疼t陽o芝ha餅lt洽i徒n浙no脈n-扣cr糧it今ic晉al碧c畢od怕e欲fo削r憑de俯bu村g狡wh臘il最e碼ti繡me雖-c丘ri兔ti睡ca畏l毒in穩(wěn)te墳rr院up辰ts憐c齊on滲ti互nu燃e介to警b信e繭se車rv健ic宴ed咸.Ac這ce怎ss戶m嘗em蔥or否y嫌an陜d隸re默gi孝st傾er擱s蚊wi嘩th瞧ou丟t銳st垂op那pi沫ng任t覽he果p炒ro最ce餅ss丙or冶.Im胸pl共em屋en車te桿d難in愛s浪il乏ic聲on翅,晉no司t綱by稀a蹲d鏟eb吸ug紗m福on動(dòng)it穴or昌:碧E禿as鼓y-嶼to子-u聾se抄,俱no鉤a撕pp朋li塘ca熱t(yī)i前on恰r領(lǐng)es曬ou塘rc熄es鐮r數(shù)eq終ui考re蝴dInterruptvoidISR_1(){………}Main(){……}function(){

……}Ha陪lt佩a秀nd婆s側(cè)in睡gl賊e怕st紙ep份n效on螞-t計(jì)im劍e務(wù)cr欠it丟ic梳al犧c圾od吉eTi餓me歇-c皮ri頭ti噸ca賞l謠in繼te廊rr可up沾ts厘a蟲re亡s燥ti集ll黑s東er債vi帝ce繭d.In扇C余on辱tr職ol糊,襯If戴T溜he驢P演ro綁ce咬ss奴or川S代to射ps刑,侮Th折e猶Sy悄st像em僚C惰an姓G季o的Ou宣t渠Of框C此on年tr劣ol5/怪18已/2決02犁317山東罰大學(xué)歪控制威學(xué)院歪張東茫亮Fi旬le菜單5/竄18晉/2薦02數(shù)318山東哀大學(xué)炭控制鵝學(xué)院傻張東賺亮Pr丈oj覽ec德t菜單5/屈18門/2禽02域319山東辣大學(xué)林控制鍋學(xué)院杰張東醬亮Vi仁ew菜單5/騾18六/2壞02脂320山東融大學(xué)猶控制朱學(xué)院陰張東蝦亮De姨bu銀g菜單5/姥18扇/2早02問321山東礙大學(xué)脹控制嶄學(xué)院狐張東牲亮3.采用CC愚S開發(fā)庫(kù)應(yīng)用振程序挎的步熊驟創(chuàng)建牽一個(gè)乖新工絲式程(p框ro寸je屈c(diǎn)t共)。編輯附源程炭序(*堤.as耗m,炸*.洲c)與連畏接命萍令文戚件(*參.cm國(guó)d)。將文浪件添曉加到護(hù)該工句程中(*僚.as判m,本*.京c,衣*亂.h抖,芹*.cm敲d)。編譯惠匯編情連接棋。裝載啦程序腫。調(diào)試查程序吃。程序偉固化椒。5/棉18鼠/2搶02擇322山東制大學(xué)之控制軋學(xué)院優(yōu)張東退亮調(diào)試火程序連續(xù)援運(yùn)行手與單儀步運(yùn)懶行。設(shè)置碧斷點(diǎn)惠。查看弟與修想改存遮儲(chǔ)單賺元。查看陜與修臂改寄輪存器縫內(nèi)容減。觀察孔和編鋼輯變僵量。程序An脹im冶at淺e運(yùn)行添和數(shù)遲據(jù)圖窗形顯竟示。5/策18卸/2值02邁323山東嶼大學(xué)斜控制零學(xué)院勺張東姻亮C工程(P祝ro兩je鑒ct雹)幾種懷基本款文件CC因S工程笨文件(擴(kuò)展政名為.pj水t)。由CC狀S自動(dòng)奏生成伸。在CC再(C刊od惱eCo宰mp臂os過er看)軟件屬環(huán)境勵(lì)中,夢(mèng)擴(kuò)展頸名為.ma畝k。源程賭序:匯編宮語言戶文件(*富.as騰m),側(cè)C文件(*待.c筑)。頭文芳件(*玻.h編):定義叮寄存禾器映渡射地勵(lì)址,糕用戶脾自定可義的赤常量?jī)舻?。賽例如點(diǎn),頭波文件DS好P2間81忽x_艙Ad餓c.英h定義通了AD阿C寄存鄭器,頭文阿件DS服P2恩81間x_眾Pi岸eV來ec追.h定義嗚了PI妹E中斷柜矢量距。鏈接匙命令碰文件(*.cm昂d)。庫(kù)文壘件(*.l執(zhí)ib)。膚運(yùn)餡行時(shí)縫支持逗庫(kù)rt叛s2較80亂0_拴ml幅.l蛙ib。目標(biāo)淺文件(*營(yíng).ob物j):CO賊FF公共宵目標(biāo)靈文件兔格式丑。列表緊文件(*體.ls理t):匯編孫生成饒的文破件。映射座文件(*腸.m倆ap暈):存儲(chǔ)殖器分儀配。可執(zhí)抽行代并碼文逐件(*樂.o陽ut果)。4.關(guān)3換D辛SP的C工程酷文件5/快18拉/2以02疤324山東創(chuàng)大學(xué)醫(yī)控制班學(xué)院鵲張東刷亮4.蟲3.暗1公共箏目標(biāo)猾文件饞格式CO視FF編譯半、匯槐編與堅(jiān)鏈接驗(yàn)程序愚建立攻的目俱標(biāo)文漢件采案用共篇用目顯標(biāo)文興件格叔式(Co狠mm蔑on左O船bj僵ec架t飛Fi窮le齡F妨or勇ma癢t,籌C騾OF征F),狂便于療模塊荷化編吩程、厲管理敢代碼慰段和臥存儲(chǔ)貸器,宅即不桿必為塑程序賓代碼觀或變串量指都定目距標(biāo)地沙址。匯編闖器根薯據(jù)命煎令用步適當(dāng)炸的段國(guó)將各蛋部分琴程序疫代碼猛和數(shù)怎據(jù)連形在一蹲起,制構(gòu)成帆目標(biāo)憤文件行。鏈捎接器我分配能存儲(chǔ)六單元甩,即繡把各樂個(gè)段股重新笑定位永到目桂標(biāo)存豆儲(chǔ)器搶中。段(s裳ec效ti剩on,也歌稱為謊塊)是目希標(biāo)文啄件的拳最小匪單位暢,是溜在存晉儲(chǔ)器升中占習(xí)據(jù)連批續(xù)空折間的狀代碼碎和數(shù)拘據(jù)塊動(dòng),各你段相和互獨(dú)吸立。5/槍18裂/2數(shù)02頓325山東允大學(xué)昨控制鄭學(xué)院銳張東旅亮目標(biāo)邁文件搖中段敞與目擺標(biāo)存紗儲(chǔ)器頸之間粥的關(guān)指系匯編震器的CO希FF文件漁格式魯包括壞三個(gè)摧默認(rèn)廚的段壓:.t撿ex賀t段,勤即程謠序段,該段麗通常竄包含晴可執(zhí)跌行代卵碼即道程序昏。.d仆at禾a段,陜即數(shù)駕據(jù)段,該段瞇通常你包含霸已初欣始化助的數(shù)尿據(jù)。.bs艦s段,漁即保武留數(shù)冤據(jù)空夕間段,該段娃通常晶為未劇初始致化的槐數(shù)據(jù)從保留推空間腹。5/設(shè)18材/2藥02賤326山東界大學(xué)佳控制盯學(xué)院息張東搏亮匯編什器和筋鏈接牲器允鐵許用什戶建吉立和閑鏈接文自定貼義的乒段。劣所有晃段可所以分神為初系始化獵段和同未初運(yùn)始化奮段兩貍類。報(bào)初始陸化段糖包含葛程序毯代碼鳥和數(shù)示據(jù)。選未初匪始化獵段則劇為未詢初始續(xù)化的塊數(shù)據(jù)煌保留幼存儲(chǔ)霜空間繩。匯戲編命律令.s閑ec百t和.us翻ec違t可以媽分別萄用來塌創(chuàng)建蕉自定浮義的債初始觀化段夏和未青初始絡(luò)化段賤。C編譯撥器對(duì)C程序卡編譯線后也馬產(chǎn)生膨初始列化段感和未哨初始堡化段掠兩類張,具譽(yù)體的熟段名犬稍有燥不同磚,除寬了不涂使用.d彩at嚴(yán)a段之偉外,獻(xiàn)還產(chǎn)達(dá)生一榮些新釘?shù)亩胃铩?/虹18碌/2碎02慚327山東明大學(xué)陣控制胳學(xué)院翼張東毛亮編譯狐器對(duì)C語言煎編譯巨后除瞞了生樓成2個(gè)基灶本段駐,即.t喜ex嚇t、.bs顧s外,還生艱成其餃他一推些段瓦。莖可釣分為項(xiàng)初始器化段沸和未饞初始詢化段啟。初始禿化段包含誼可執(zhí)袋行代茄碼或輝常數(shù)掌表。C編譯談器產(chǎn)輕生的陵初始緩化段友有.p館in藏t、.c敏on蒼st、.ec諒on姥st、.t墻ex房誠(chéng)t、.ci期ni賤t、.s弟wi智tc份h。.t而ex憤t段,砌包含準(zhǔn)可執(zhí)薦行代玻碼和績(jī)常量(c劈燕on皂st蕉an拌t)。.ci臘ni杯t段和.p床in否t段,捷包含補(bǔ)初始音化變汗量和抽常量喊。.c扔on建st段,摔包含西串常檔量,謊全局貌變量攻、靜磚態(tài)變風(fēng)量的拿聲明計(jì)和初帖始化策。.ec剝on音st段,愧包含嚼串常巴量,爽全局靈變量予、靜臣態(tài)變算量的斬聲明啦和初折始化廊。變青量由fa塌r系co祖ns岡t修飾慨,或派用大明存儲(chǔ)產(chǎn)器模扁型,遣初始哈化后兩放進(jìn)陽遠(yuǎn)(f趨ar忍)存儲(chǔ)販器。.s仗wi越tc重h段,走包含sw鼠it鉗ch語句停表。5/俯18部/2廟02冒328山東發(fā)大學(xué)杠控制位學(xué)院攪張東匙亮未初順始化劉段用于蜓保留踢存儲(chǔ)踏器(通常慢為RA暑M)空間禁。C編譯困器產(chǎn)令生的拋為初佛始化球段有.bs投s、.eb鞠ss、.s插ta間ck、.sy堂sm泰em和.es釣ys腦me跳m段。.bs廳s段,鋪為全稅局和墳靜態(tài)腹變量猴保留阻空間咸。.eb根ss段,懶為全頂局和寒靜態(tài)禁變量恩保留深空間紅。變才量由fa化r修飾保,或坊用大晝存儲(chǔ)咳器模齡型使稠用。.s壇ta醋ck段,埋為C系統(tǒng)咱堆棧算。用豆于保諸護(hù)函產(chǎn)數(shù)的土返回幕地址銷、分罵配局牧部變趕量、乓調(diào)用投函數(shù)沈時(shí)傳妥遞參部數(shù)。.sy鴿sm扮em段,為動(dòng)記態(tài)存翅儲(chǔ)器暫分配結(jié)保留時(shí)空間,ma菠ll殼oc函數(shù)距使用瓦。.es方y(tǒng)s劍me預(yù)m段,為動(dòng)寬態(tài)存搖儲(chǔ)器枯分配夫保留屢空間伐,fa萌rma榨ll級(jí)oc函數(shù)滾使用飼。5/醫(yī)18飯/2掘02族329山東陣大學(xué)毯控制笑學(xué)院斗張東倉(cāng)亮初始籮化段阿鏈接段名稱描述限制.text可執(zhí)行代碼和常量程序.cint已初始化的全局與靜態(tài)變量的C初始化記錄低64K數(shù)據(jù).pint全局構(gòu)造器(C++constructor)表程序.switch實(shí)現(xiàn)switch語句表程序/低64K數(shù)據(jù).const已初始化的全局與靜態(tài)const修飾變量,串常量低64K數(shù)據(jù).econstfarcostant變量數(shù)據(jù)任何位置5/拌18通/2聚02蹲330山東蛇大學(xué)嗚控制面學(xué)院?jiǎn)垨|助亮未初宮始化磁段鏈跡接段名稱內(nèi)容限制.bss全局與靜態(tài)變量低64K數(shù)據(jù).ebssfar全局與靜態(tài)變量數(shù)據(jù)任何位置.stack堆棧空間低64K數(shù)據(jù).sysmemmalloc函數(shù)存儲(chǔ)區(qū)低64K數(shù)據(jù).esysmemfarmalloc函數(shù)存儲(chǔ)區(qū)數(shù)據(jù)任何位置5/廳18隙/2梁02斬331山東旬大學(xué)喇控制顏學(xué)院減張東陵亮存儲(chǔ)桐器映迫射表段(Section)存儲(chǔ)器類型(TypeofMemory)頁面(Page).textROM或RAM0.cintROM或RAM0.pintROM或RAM0.switchROM或RAM0,1.constROM或RAM1.econstROM或RAM1.bssRAM1.ebssRAM1.stackRAM1.sysmemRAM1.esysmemRAM15/蘋18濱/2綢02寶332山東取大學(xué)撇控制峽學(xué)院說張東豆亮4.論3.駐2鏈接而命令撐文件CC城S的鏈惑接器之可以耗有很凝多選碑項(xiàng),全如-l妙(包含依庫(kù)文搭件)、-s壺ta類ck泊(定義偶堆棧)、-o根(定義濕輸出糊文件)等,桿并且翁將用同戶軟下件定朽義的好段與檢目標(biāo)違系統(tǒng)非存儲(chǔ)戚器物大理地油址對(duì)誦應(yīng)關(guān)限系定澡義清朝楚。鏈接航器選倒項(xiàng)的首實(shí)現(xiàn)諒?fù)ǔ<{采用旁工程店選項(xiàng)獄菜單耽或鏈因接器秋命令才文件(.cm清d)兩種肅方法弓。編寫踢一個(gè)爸鏈接拌器命貴令文著件,陣將所您有鏈環(huán)接器筑選項(xiàng)總寫在恐文件油中,駱并將梅此文寒件加護(hù)入到組工程督,這批樣CC鋼S在進(jìn)談行編很譯鏈如接時(shí)狼,會(huì)潤(rùn)自動(dòng)廳按照灰鏈接刃器命槳令文禽件中刮的選導(dǎo)項(xiàng)進(jìn)摟行。有兩槐條鏈淚接器抖命令ME助MO急RY和SE輛CT依IO糧NS可以莖實(shí)現(xiàn)尿?qū)Τ碳剐虼娣竷?chǔ)器妖和數(shù)皂據(jù)存定儲(chǔ)器避空間舌的分央配。ME六MO宇RY命令煌定義墨目標(biāo)成存儲(chǔ)障器的委配置質(zhì),SE蘇CT戀IO眼NS命令帝定義融編程上段與賣目標(biāo)炊存儲(chǔ)估器的鍬關(guān)系槍。5/攔18晚/2珠02而333山東關(guān)大學(xué)字控制站學(xué)院詞張東卷亮ME擦MO盟RY命令ME奏MO劉RY命令扎定義旋目標(biāo)蒜系統(tǒng)牛中可帖以使匠用的憂存儲(chǔ)嘴器范卵圍,盒每個(gè)熟存儲(chǔ)防器范談圍具婚有名嘉字、疫起始左地址戶和長(zhǎng)宴度。香一般濾形式焰為ME占MO梨RY{PA暫GE未0:na襲me予:詠or得ig皆in爽=c賽on立st勤an師t,吧l襪en廣gt屋h=這co聽ns虎ta挺nt與;…PA退GE株n:na件me般:羊or惑ig劃in求=c弊o(hù)n泡st叢an渣t,卷l財(cái)en棍gt偏h=灰co鞏ns程ta麥nt岔;}PA逗GE役n:定師義存怨儲(chǔ)器盆空間獻(xiàn)。n=贊0~傍25子4.通常PA劣GE承0定義饞程序原存儲(chǔ)不器,PA體GE扯1定義漲數(shù)據(jù)陡存儲(chǔ)偷器。na翁me:存烈儲(chǔ)器敬范圍攏名字壞??善且允?~解8個(gè)字奶符。or白ig踏in或簡(jiǎn)想寫為o:存卻儲(chǔ)器貓范圍誰的起信始地頌址。le現(xiàn)ng死th或簡(jiǎn)買寫為l:存疊儲(chǔ)器咽范圍吃的長(zhǎng)銷度。5/億18滴/2牧02協(xié)334山東征大學(xué)燭控制觸學(xué)院坦張東多亮SE賊CT賭IO舟NS命令SE肺CT羊IO糞NS命令侵用于拒將輸涼出各珠段定帥位到蘭所定甜義的類存儲(chǔ)瞞器。紅一般譯形式就為SE鄰CT嘆IO攀NS{na刃me該:祥[p肅ro頑pe此rt案y,奔p泛ro輔pe盒rt棗y,檢…衛(wèi)]na撫me金:汁[p磨ro嫂pe蛛rt消y,邊p躬ro偵pe籠rt晚y,勇…逝]…}在段肚名之瘋后是遷是特垂性列石表,克定義學(xué)段的耳內(nèi)容模以及尚是怎欣樣分級(jí)配的嚇。段軌的特深性(p折ro繳pe仔rt天y)是裝賤載位碗置、向運(yùn)行煎位置訓(xùn)、輸正入段蹦、段煎類型袍等。滿通常溪的特桂性符揪號(hào)“>”表示陵輸出堡段裝株載位剩置。5/借18駁/2景02毛335山東督大學(xué)析控制壇學(xué)院衰張東誘亮4.襯4蓋D黑SP俯C語言興程序膝設(shè)計(jì)熊基礎(chǔ)4.佩4.攔1數(shù)據(jù)梨類型4.要4.蛙2立C語言隆運(yùn)算香符與陰基本側(cè)語句4.省4.促3函數(shù)4.嫌4.聰4指針4.濱4.頃5編譯萍預(yù)處教理命鈴令4.攔4.矛6酒C語言丑與匯礦編語埋言混科合編寺程4.回4.損7溝C2點(diǎn)8x及D臥SP編譯于器的督關(guān)鍵秋字5/斧18遵/2饑02頁336山東命大學(xué)纏控制影學(xué)院剛張東責(zé)亮C語言滔程序盛設(shè)計(jì)辛優(yōu)缺外點(diǎn)匯編猾語言才程序貍設(shè)計(jì):執(zhí)行罰速度卡快。開發(fā)淡周期杏長(zhǎng)、礙移植辮性和量可讀萌性差軌。C語言屢程序牛設(shè)計(jì):開發(fā)催周期霜短、朽移植蛇性和珍可讀奸性好辯。執(zhí)行嬌速度柱可以尋滿足倘要求偏。5/復(fù)18杠/2所02掛337山東漲大學(xué)揀控制察學(xué)院貓張東孕亮C2磚8x愁D咐SP具有珍優(yōu)化跟的C編譯館器,愿它支瓶持AN謊SI媽C標(biāo)準(zhǔn)白。還烘具有圾一些微不同泥于標(biāo)閉準(zhǔn)C的特肥征。DS講P的基之本數(shù)何據(jù)類敲型如溪表所低示,租還具撫有數(shù)身組、恭結(jié)構(gòu)橫、聯(lián)諒合等兄構(gòu)造受類型悟數(shù)據(jù)靜。4.江4.神1數(shù)據(jù)序類型5/哀18度/2償02居338山東策大學(xué)戒控制泥學(xué)院君張東幸亮TM間S3辨20啞C2劑8x封C的數(shù)膜據(jù)類捎型1.謙C賢28斑x編譯隸器基系本數(shù)缸據(jù)類擔(dān)型5/聯(lián)18淘/2號(hào)02爹339山東皆大學(xué)良控制蟻學(xué)院咳張東服亮片內(nèi)遞外設(shè)騙寄存堤器通望常通仇過結(jié)繡構(gòu)與亞聯(lián)合貴變量訊的方脫法進(jìn)各行訪晶問。2.結(jié)構(gòu)例如駛,GP腸IO天A口的MU諷X復(fù)用蹲控制腐寄存禁器可勁用位督段(b網(wǎng)it棋f巖ie爆ld搖)結(jié)構(gòu)拔表示st勺ru樓ctGP對(duì)AM通UX飾_B絲式IT艷S僑{un椒si近gn賊edin痛tPW曉M1梢_G暮PI奏OA得0:陜1;艙//第0位un斃si籍gn歡edin輸tPW萄M2銜_G摟PI征OA店1:滔1;堂…瞇u伴ns布ig齡ne棍din芒tC2虎TR均IP啊_G改PI粉OA游14榨:1朱;杜un湯si晌gn測(cè)edin冠tC3對(duì)TR寄IP薄_G膏PI任OA稱15爐:1末;通//第15位};5/株18勵(lì)/2裳02兼340山東壞大學(xué)界控制不學(xué)院爪張東稼亮例如叫,GP茂IO值D口的MU階X復(fù)用染控制暈寄存懷器結(jié)鞏構(gòu)st財(cái)ru補(bǔ)ctGP臨DM舅UX蚊_B他IT驚S華{un遣si農(nóng)gn堂edin濫tT1槐CT倆RI雹P_晚PD哈PA私_G別PI姥OD鋤0:老1;織/餃/第0位un恩si信gn露edin齒tT2鋼CT句RI凳P_遺PD受PA躲_G繡PI泥OD萍1:吵1;擔(dān)/誓/1崖u獸ns趟ig狹ne胡din民trs望vd但1:炕3;秒//鳴4:毫2,保留un旁si貴gn臨edin曲tT3薦CT快RI估P_佛PD買PA杠_G瘦PI房誠(chéng)OD兵5:抄1;諒/灣/5唇u碗ns儀ig包ne筆din殲tT4晃CT憲RI憶P_遍PD伙PA哀_G浸PI旋OD填6:繪1;倚/甩/6鳴u芒ns普ig拒ne涌din睬trs鄉(xiāng)豐vd嗎2:泊9;很//介15掠:7抓,保留};當(dāng)一線個(gè)結(jié)折構(gòu)中須有效欣字段(位段)的長(zhǎng)役度不請(qǐng)足16位時(shí)唉,可型以加騎入保異留字呀段,飄以保閑證數(shù)寨據(jù)的莊完整淘性。結(jié)構(gòu)濃變量救的定躍義與蘭成員嚴(yán)變量堤的引瓦用,鹿例如步,st脈ru泛ctGP巾DM完UX疲_B勿IT晶S進(jìn)b酬it汽;梨//免bi堂t為GP啟DM拜UX過_B日IT隔S類型須變量bi泡t.梅T燥1C浴TR旦IP桌_P飾DP幻玉A_畏GP土IO累D0轟=1瘡//將D0位定蕩義為PD緣瑞PA功能5/添18爛/2籠02紀(jì)341山東遇大學(xué)角控制娛學(xué)院包張東崖亮聯(lián)合圓體(也稱小為共強(qiáng)用體)類型殖,可痕以將敗不同肆類型成的數(shù)戰(zhàn)據(jù)存材放在塞同一妄個(gè)地聽方,仇且占運(yùn)據(jù)同晉樣大豪小的喂存儲(chǔ)獅空間營(yíng)。例如均,定命義聯(lián)倘合體隱類型GP游DM挎UX尺_(dá)R叉EG,un春io傅nGP拳DM篩UX角_R裝EG壁{un嚴(yán)si襖gn搖edin秧tal結(jié)l;得//下al做l為無室符號(hào)叫整型美變量st呈ru潑ctGP套DM杯UX久_B謝IT獅S渾bi帥t;險(xiǎn)/說/b必it為結(jié)界構(gòu)型慮變量};聯(lián)合沉變量背的定盈義與讀成員山變量四的引脾用,南例如交,un揀io司n尾GP歸DM抓UX喇_R貝EG納GP易DM召UX收;泉//吳G糧PD梨MU閣X為聯(lián)鞭合類飛型變掩量GP蹄DM搞UX境.a抬ll種=1齡;矩/笛/將D0引腳潮定義介為PD鬼PA功能,其他天為數(shù)更字I/芒O3.聯(lián)合5/犁18縮慧/2巡壽02卡342山東壺大學(xué)禮控制雕學(xué)院敢張東目亮聯(lián)合趕可以接出現(xiàn)嘆在結(jié)緣瑞構(gòu)和擁數(shù)組冬中,營(yíng)結(jié)構(gòu)紹和數(shù)刃組也途可以府出現(xiàn)甲在聯(lián)粉合中陸。例肉如,勒結(jié)構(gòu)江類型GP悄IO肺_M膚UX圣_R毯EG淋S,st書ru澡ctGP鋼IO爐_M勿UX噴_R均EG某S激{un已io忍nGP瀉AM盤UX遼_R肢EG煮GP括AM物UX鵲;un緒io培nGP座DM犁UX田_R贊EG秒GP格DM著UX灘;拔};結(jié)構(gòu)照變量紡的定挖義與瓦成員絞變量燙的引時(shí)用,氧例如眉,st姐ru野ctGP褲IO說_M想U(xiǎn)X原_R雹EG歷SGp枯io殊Mu貿(mào)xR住eg徑s;秩//表示Gp亮io糖Mu調(diào)xR召eg對(duì)s是結(jié)騙構(gòu)GP鑰IO首_M撥UX至_R年EG媽S的一歸個(gè)變灰量代可以驚采用絮點(diǎn)運(yùn)株算符喝的方輝法引滴用各棉成員薄變量導(dǎo),Gp童io皮Mu皇xR卸eg某s.雹GP閃AM墾UX邀.a疾ll=0斃x0敬77柏F;職//謙CA久P1雷-3戚,機(jī)PW出M1劇-6是,野T1扛pw獄m理Gp版io毯Mu鼓xR如eg傭s.胸GP嘆DM身UX蓋.b炎it咽.T血1C施TR孟IP勤_P典DP窮A_勸_G肆PI儀OD旅0=藍(lán)1;有/脆/P平DP猴A均Gp閃io獸Mu宅xR量eg堅(jiān)s.仁GP滔DM碌UX價(jià).b濫it勺.T會(huì)2C熟TR營(yíng)IP迅_S撤OC擋A_爛_G瞇PI慶OD匙1=財(cái)0;責(zé)/衣/G羞PI坐OD肅1水Gp饒io驗(yàn)Mu芹xR耳eg奏s.潑GP戴DM姿UX眉.b鉆it盯.T場(chǎng)3C俯TR架IP副_P相DP間B_痰_G籌PI劑OD帶5=碧0;勒/務(wù)/G稈PI燒OD餅5嫂Gp駕io勺Mu肉xR融eg倘s.賴GP昌DM響UX娛.b辭it館.T怒4C唱TR陶IP凈_S濕OC懷B_獲_G賀PI嶼OD姨6=蒜0;糧/懼/G金PI藝OD核6定義GP榴IO棗A口時(shí)眼,采匙用了譽(yù)一條C語句澤。而湖定義GP盡IO穿D口時(shí)浪,采層用了4條C語句視。艇編程納風(fēng)格浮可以燈編程角者自呆己決鼠定。5/仿18董/2座02城343山東玻大學(xué)森控制喜學(xué)院澆張東愛亮4.讓4.管2休C語言計(jì)運(yùn)算敵符與荷基本散語句1.應(yīng)C語言晴運(yùn)算走符2.捕C語言愛基本毀語句C語言茶運(yùn)算也符有給算術(shù)聾運(yùn)算久符、鬼關(guān)系澆運(yùn)算獻(xiàn)符、織邏輯紅運(yùn)算卡符、取位操體作運(yùn)障算符攝等。秋不同銷的運(yùn)仆算符墻可以偏有不辯同的墨優(yōu)先慰級(jí)、喊運(yùn)算偏對(duì)象近個(gè)數(shù)丈與結(jié)除合方練向。C語句京有控鏟制語鞏句、氏表達(dá)爪式語輪句、扶函數(shù)勿調(diào)用脈語句羊、空劫語句閣和復(fù)傻合語翠句五譯類。倍控制獅語句左有9種。5/創(chuàng)18掩/2淘02巨344山東燙大學(xué)臭控制植學(xué)院榮張東誕亮與普胖通的C語言寇程序攀類似敞,DS雕P捐C程序贈(zèng)是由佩若干飲模塊把化的漿函數(shù)沸構(gòu)成雕。函仙數(shù)是C程序榆的基威本模印塊,器子程灰序就愧是由耽函數(shù)際來實(shí)潔現(xiàn)的征。用戶拒可以赴根據(jù)攝需要陪定義善自己祝的功庭能函顫數(shù),名也可舒以調(diào)氧用C編譯蘭器提得供的抽標(biāo)準(zhǔn)精函數(shù)酬(庫(kù)新函數(shù)象)來換完成鹿某種概特定斃的功洞能。注意走函數(shù)北調(diào)用羊的規(guī)腦則。4.象4.散3函數(shù)5/談18掉/2獄02辟345山東罵大學(xué)飛控制案學(xué)院榜張東赤亮C函數(shù)套的一斗般格叼式為類型早函數(shù)歷名(與形式高參數(shù)抵及其虎類型會(huì)表){變量地聲明悠部分價(jià);執(zhí)行墨語句希部分刊;}一個(gè)索函數(shù)準(zhǔn)在程牲序中鍛可以蛙三種痰形態(tài)鬧出現(xiàn)盾:函榜數(shù)定怒義(De撒fi晃ni懂ti準(zhǔn)on)、才函數(shù)隙調(diào)用適和函析數(shù)聲史明(De拳cl輛ar礎(chǔ)at防io萄n)。麻函數(shù)濕定義剃相當(dāng)元于匯截編語捕言中呆的一冰般子誓程序沫。函禮數(shù)調(diào)行用相款當(dāng)于圓調(diào)用憲子程奶序。柴函數(shù)鍬定義狂和函步數(shù)調(diào)因用不格分先忍后,這但若戲調(diào)用嶼在定嬌義之勸前,點(diǎn)那么坐在調(diào)埋用前串必須噸先進(jìn)蜓行函你數(shù)聲烈明。顫函數(shù)咬聲明禿是一頑個(gè)沒炒有函送數(shù)體絹的函敞數(shù)定核義,售而函仗數(shù)調(diào)掘用則傻要求謀有函墳數(shù)名洲和實(shí)旨際參脅數(shù)表杏。5/量18森/2示02夜346山東風(fēng)大學(xué)宅控制抽學(xué)院棚張東淺亮可以案用指提針的艙方法葬訪問榨變量浸,用拿指針冰訪問敢數(shù)組珍、結(jié)詠構(gòu)、港聯(lián)合米變量夸非常變方便深。4.搭4.糕4指針例如肢,指閑向結(jié)擺構(gòu)類員型的株指針螞變量pst裹ru故ctGP夕DM數(shù)UX默_B修IT升S蔑*p晃;st份ru室ctGP吃DM畝UX體_B荒IT佩S凱bi滔t;績(jī)p=器&b村it痕;條b擴(kuò)it的成香員T1疑CT鬧RI情P_最PD驗(yàn)PA因_G勤PI域OD毛0可用謙下述3種形趨式之為一訪找問bi綿t.再T1圣CT睛RI喘P_經(jīng)PD筍PA怒_G堤PI庫(kù)OD斥0灘(悅*p旗).樓T債1C單TR加IP帖_P冷DP秧A_贊GP無IO鉛D0扔p-羊>T畏1C樣TR炭IP帳_P懂DP追A_創(chuàng)GP柄IO雕D05/榴18臟/2慕02衣347山東嶺大學(xué)惡控制洋學(xué)院蚊張東蘇亮AN學(xué)SI臥C新標(biāo)炭準(zhǔn)增宏加了澆一種vo急id茶*指針滑類型尤,即避可以劈燕定義用一個(gè)托指針住變量句,但鈔不指紐奉定它脫是指朋向哪躍一種夠數(shù)據(jù)垂類型病,例un擇si賭gn假ed否lo成ng*So璃ur蘋ce潔=(委vo氧id蛾*)套&Pi霧eV懼ec海tT曲ab含le啊In里it;地址&Pi返eV棚ec牢tT候ab敗le披In博it被(v設(shè)oi藝d*寄)強(qiáng)制小成了vo冬id仁*類型精。指出針So捐ur跌ce為un衣si俗gn梨ed予lo掉ng類型匪。例如脂,描布述中賽斷矢逗量表越的指私針PI臥NTty戴pe尊de漁fun狠si童gn梢edin量tUi掩nt叢16巨;痰//定義贊一種日類型Ui住nt搏16Ui確nt漿16借i;ty窮pe散de習(xí)fin農(nóng)te羞rr蕩up宴t閱v額oi劈燕d四(*曠PI建NT飛)(扇vo染id炎);針//指針PI足NT指向共中斷愉函數(shù)st揚(yáng)ru番ctPI儲(chǔ)E_餅VE音CT哭_T血AB親LE焰{PI靠NT木P蹄IE屈1_迅RE村SE哄RV紡ED峰;PI角NT進(jìn)P賺IE媽2_守RE必SE造RV給ED挨;…}5/悠18志/2拒02蒼348山東延大學(xué)省控制貨學(xué)院?jiǎn)釓垨|惜亮C語言乳用指磨針訪疲問數(shù)披據(jù)存越儲(chǔ)器診(或設(shè)片內(nèi)變外設(shè)架寄存壘器)可以丟用指塞針方槳法實(shí)掌現(xiàn)。例如猴,從騰擴(kuò)展以的外腦設(shè)接鉗口讀甚取開日關(guān)狀膊態(tài),饅然后轟輸出欣到擴(kuò)白展的僑指示每燈外昆設(shè)接匠口。#d榆ef乒in誕e飼LB觀DS嘴(*客((奇un燦si摸gn笨edin捎t*)握0x鉛c0沫00梁0)垃)栗/缸/擴(kuò)展仆的外呼設(shè)寄傭存器雪,指臂示燈#d辜ef柄in算e紫DI給PS糞(*卻(u展ns絕ig潔ne撐din奇t*)編0x兇c0皮00頑1)聾/霧/擴(kuò)展妖的外襖設(shè)寄崗存器贏,開森關(guān)LB幣DS福=D策IP毛S;益/汽/讀取示撥碼磁開關(guān)去狀態(tài)幕直接堂送指米示燈止顯示一般退將這匙些定榨義放教到一碑個(gè)頭臟文件仍,使稍用時(shí)調(diào),用報(bào)編譯則預(yù)處撞理命劫令in動(dòng)cl柿ud搶e包含惹該頭畫文件犯即可寇。5/己18頓/2鬧02縫349山東蛙大學(xué)姥控制筍學(xué)院射張東隨亮ma奴in漁(乎){in霉ti;un茂si梅gn洲edin括t*px,恢*py,螺*pz;px=(傘un印si載gn耳edin懇t*)盞0x吉80離00途0;py=(競(jìng)un堅(jiān)si裂gn哄e(cuò)din遍t*)乞0x肚80嘴10西0;fo聞r衰(齊i=炸0,爸pz謙=px;璃i<旅16舍;i僻++昨,p碑z+蔽+巷)(*pz)=派i;fo萬r梯(吩i=爐0,彼pz聰=py;挨i<喘16茶;i運(yùn)++火,p神z+能+汗)(*pz)=挖0x飄12肌34糧;fo賭r停(輔i=抹0;呈i<杠16懼;i+付+,拐px秋++凳,p棒y++燒)(*py)=紋(*px);wh屋il飲e(佛1)養(yǎng){兆;}}例4-勤3,將曠數(shù)據(jù)扭存儲(chǔ)骨器80嚴(yán)00坦0H開始系的16個(gè)單乘元復(fù)層制到80菊10辛0H開始莫的單章元。5/沉18朋/2源02債350山東雜大學(xué)沖控制孝學(xué)院細(xì)張東涂亮例4-腸4擴(kuò)展存外部左接口連,聾編寫C程序倦將4個(gè)開費(fèi)關(guān)狀央態(tài)反術(shù)應(yīng)到4個(gè)指術(shù)示燈噸。#i柳nc孔lu斷de額"鑒DS秒P2冊(cè)81訴x_冶De桑vi謎ce盯.h番"笛//妨D握SP暗28斷1x桃H禾ea仍d磁fi貓le桑I貌nc各lu川de脹F谷il息e//定義始指示相燈控在制寄伙存器鞋地址妨和寄雅存器并類型#d星ef斷in鹿e槐LB奇DS搬(幣*(岡(u脾ns嗓ig床ne河d后in圣t廊*)障0x遲c0移00裂0)刮)//定義撥碼花開關(guān)志控制窮寄存艙器地萌址和寄考存器沒類型#d還ef尺in菊e海DI音PS婦(降*(價(jià)un暴si店gn兇ed提i硬nt沾*架)0椒xc準(zhǔn)00引01虛)ma送in遇(妹){In奶it界Sy袋sC歌tr昌l()啦;電/奶/初始輛化DS語P運(yùn)行叔時(shí)鐘,自定話義函回?cái)?shù)wh胡il辨e夸(書1洽)LB包DS濤=D戲IP狼S;在//讀取扯撥碼笛開關(guān)臭狀態(tài)縮慧直接鋸送指象示燈游顯示}5/宿18轟/2油02燃351山東塘大學(xué)都控制閑學(xué)院歷張東狠亮宏定握義#d系ef柱in豎e#d折ef可in偷e齡P箏I挪3.熱14常15餓9#d節(jié)ef潑in知e慢U者in忍t1疏6域un版si完gn國(guó)edin著t(ty島pe聾de藍(lán)fun便si禮gn匠edin貧tUi秀nt喜16角;蠻)#d鄭ef優(yōu)in餃e救EI抓NTas已m(“cl蛛rcIN裂TM附”)EI扮NT松;#d命ef滋in咱e筑EA逃LL柏OWas映m(“晃E葬AL上LO假W”迷)4.誼4.兩5編譯織預(yù)處吉理文件袍包含#i誤nc掌lu時(shí)de#i湯nc洪lu屈de掘<ma執(zhí)th虛.h>#i敢nc段lu縣de借“D尚SP濾28憐1x冷_D潛ev由ic蝕e.根h”1.宏定叔義、苦文件暮包含牽與條上件編消譯5/跳18勝/2陜02祥352山東怠大學(xué)挑控制久學(xué)院朽張東濕亮條件陳編譯#if閣de曬f標(biāo)識(shí)蹤蝶符程序摸段1#e五ls念e程序譯段2#en為di拳f5/鏈18輩/2訂02烘353山東李大學(xué)蠢控制技學(xué)院委張東透亮pr爺ag員ma是一鋸類編知譯預(yù)董處理欺命令拒(di犁re府ct貸iv剖e),通知停編譯恩預(yù)處蔬理器顯如何旬處理驚函數(shù)浩。C2蓬8x涂C帝/C圾++支持肚如下pr渠ag辮ma命令飲,CO舍DE沫_S考EC負(fù)TI美ON息(f蕉un害c,哈“s然ec磚ti芽on搬n崇am碎e”蹄)DA博TA嚇_S異EC策TI皆O(shè)N島(s減ym謠bo扁l,塑“壺se悔ct撐io誰n撇na史me掏”)IN遼TE換RR吳UP竟T(牧fu賓nc)FU棒NC攀_E耕XT淚_C殿A(yù)L忽LE她D(廈fu艱nc)FA眼ST投_C到AL貨L(買fu杠nc)2.pr爆ag土ma命令5/梅18蓄/2喘02旺354山東暗大學(xué)倦控制嚷學(xué)院撒張東晴亮CO壓DE剩_S上EC窩TI潛ON代碼比段它為陵函數(shù)fu鍛nc在一全個(gè)名共為se菠ct消io功n偉na嶼me的段(s靜ec梁ti箱on施)中指銷定空粥間。坡將一遺個(gè)代辯碼對(duì)唐象連挎接到朗一個(gè)擔(dān)不同偷于.t鄙ex柳t段的火空間飄時(shí),辟該語贏法非驢常有晌用。丟例如ch高ar利b禮uf并fe關(guān)rA革[8倆0]冰;#pr毫ag濃maCO碎DE顯_S厭EC洞TI晝ON鮮(f靈un膚A,摧“co曬de詢A”)ch羊arfu嘉nA誼(i瞞nti)齒;vo擋id詢m被ai榨n(禿){啟ch挑ar笑c屑;c=術(shù)fu搭nA題(1暑);}ch陵arfu陵nA隔(i矩nti){re乳tu傅rnbu尚ff潛er牙A[瞇i[]學(xué);}5/熟18近/2勵(lì)02抱355山東樓大學(xué)車控制梳學(xué)院霧張東填亮DA阻TA殼_S斤EC有TI召ON數(shù)據(jù)計(jì)段它為染符號(hào)sy羽mb吉ol在一桑個(gè)名盞為se激ct肉io足n誘na薪me的段圍中指塵定空第間。半將一元個(gè)數(shù)跨據(jù)對(duì)茂象連號(hào)接到測(cè)一個(gè)興不同面于.bs范s段的疤空間酒時(shí),術(shù)該語鏟法非呼常有勝用。未例如#pr蹦ag燃maDA綢TA澆_S富EC去TI學(xué)ON脂(b炕uf食fe象rB,替“m命y_撲se他ct決”)ch佛ar千b伍uf沸fe梁rB挪(5掠12估);數(shù)據(jù)睛塊bu鐵ff慰er擔(dān)B被定旋位于my蓄_s址ec蒸t段中世,my屯_s觸ec象t段在.cm體d文件碧中規(guī)漁定物逗理地巾址。5/永18掃/2嗓02貝356山東榆大學(xué)民控制鋤學(xué)院渠張東亂亮4.戚4.唱6妻C語言良與匯貝編語澡言混增合編款程在C程序悄中直氣接嵌鞠入?yún)R撞編語笛句。獨(dú)立寄的C模塊煉和匯晴編模迫塊接號(hào)口。獨(dú)立詢編寫C程序藝與匯窩編程律序,賢分別汁編譯紫、匯漂編生扁成目隔標(biāo)代壞碼模脂塊,天然后壘用連洪接器絡(luò)連接梨起來處。從C程序奏中訪候問匯芒編程交序變綁量。5/對(duì)18尖/2恩02閱357山東陸大學(xué)絕控制評(píng)學(xué)院脾張東紹亮1.在C程序先中直若接嵌溪入?yún)R在編語箭句C程序理嵌入?yún)R匯編委語句慰是一迫種直忽接的C模塊法和匯逐編模旨?jí)K接濟(jì)口方異法。舅可以易在C程序煩中實(shí)讓現(xiàn)用C語言異難以竿實(shí)現(xiàn)扇的一宋些硬戀件控吉制功炮能。鋤另一蓋方面路,也結(jié)可以刺用這方種方回法在C程序散中的隨關(guān)鍵也部分富用匯制編語宴句代樸替C語句然以優(yōu)淋化程籠序。這種接方法突的一鵲個(gè)缺物點(diǎn)是嬌它比窄較容看易破寶壞C環(huán)境創(chuàng),因東為C編譯構(gòu)器在苦編譯何嵌入維了匯阻編語顆句的C程序烤時(shí)并懂不檢位查或霧分析驗(yàn)所嵌壟入的誕匯編忍語句列。直接悠在C語言時(shí)程序診中相齒應(yīng)位久置嵌福入?yún)R威編語志句,賢只需銹在匯為編語縱句加?jì)缮想p攝引號(hào)太和小牛括號(hào)躁,前區(qū)面加as我m標(biāo)識(shí)合符號(hào),雙引緣瑞號(hào)內(nèi)攜第一諒個(gè)字桶符應(yīng)桌是空陽格。浮即,as捕m(“匯編垂語句責(zé)”)例如as四m(“NO將P”);#d名ef撈in籠e閉EI恥NTas很m(“間CL拐RC填I(lǐng)尸NT坡M”糾)誘/妄/開放軍中斷EI抬NT耗;5/辛18偵/2董02律358山東稿大學(xué)訪控制衛(wèi)學(xué)院謀張東著亮2.獨(dú)立普的C模塊謝和匯獎(jiǎng)編模拾塊接鎖口在編涂寫?yīng)毜淞⒌姆祬R編增程序圍時(shí),蠅必須耽注意勺以下策幾點(diǎn)語:(1)不礎(chǔ)論是概用C語言你編寫新的函蹈數(shù)還源是用埋匯編紋語言適編寫斤的函撕數(shù),星都必程須遵忌循寄附存器隱使用戶規(guī)則稈。(2)必定須保捧護(hù)函剛數(shù)要期用到字的幾靠個(gè)特施定寄乖存器鼠。(3)中池?cái)喑虈樞虮貦C(jī)須保下護(hù)所蝦有用研到的梨寄存忽器。(4)從冶匯編愉程序愉調(diào)用C函數(shù)悼時(shí),漆第一拘個(gè)參排數(shù)(稍最左議邊)董必須勇放入叉累加孩器A中,初剩下奸的參贊數(shù)按塌自右本向左切的順址序壓款入堆奔棧。(5)調(diào)些用C函數(shù)勉時(shí),宜注意C函數(shù)臘只保拌護(hù)了裝幾個(gè)消特定未的寄覺存器傅,而美其他送寄存鹿器可優(yōu)以自萍由使晌用。(6)長(zhǎng)麻整型駱和浮到點(diǎn)數(shù)做在存嘩儲(chǔ)器務(wù)中存逐放的機(jī)順序折是低扒位字停在高餃地址冰,高帶位字號(hào)在低旬地址咳。5/斧18拖/2揪02六359山東宵大學(xué)丟控制礙學(xué)院抹張東當(dāng)亮(7)如賺果函毯數(shù)有塔返回漢值,燒返回脫值存顧放在怨累加缸器中箭。(8)匯錫編語稼言模慎塊不抹能改嚇變由C模塊后產(chǎn)生甲的.ci立ni雞t段,賤如果僻改變托其內(nèi)允容將嚷會(huì)引癥起不查可預(yù)捆測(cè)的稿后果攔。(9)編溉譯器偶在所折有標(biāo)事識(shí)符兵(函客數(shù)名彩、變尿量名暴等)簡(jiǎn)前加擊下劃嫌線“_”。(10)任世何在淚匯編亞程序柳中定桂義的總對(duì)象蛋或函串?dāng)?shù),燥如果妖需要猜在C程序掙中訪毒問或誦調(diào)用遼,則偷必須抓用匯廈編指苦令.g制lo胡ba厲l定義貫。5/塵18押/2揮02俗360山東睬大學(xué)弄控制障學(xué)院警張東秀亮3.從C程序象中訪定問匯骨編程貸序變槐量從C程序味中訪秋問在遭匯編瘡程序淹中定工義的較變量球或??軘?shù),胸可以客分為翁以下3種情溪況:(1)訪者問在.bs仔s段中按定義論的變悠量。(2)訪革問不忽在.bs絨s段中繼定義輕的變似量。(3)對(duì)椒于在規(guī)匯編她程序課中用.s陪et和.g副lo壺ba茫l偽指廢令定滿義的滾全局脆常數(shù)鏡,也網(wǎng)可以葉使用楚特殊眼的操宗作從C程序胖中訪宣問它跌們。5/型18黎/2誕02旋361山東柴大學(xué)校控制雅學(xué)院捏張東銜亮例4-犬5,在C程序敗中訪賞問在.bs背s段中悔定義匯的變壞量。匯編通程序場(chǎng):.bs游s_v后ar濱,1嫩;定義禿變量.g上lo漏ba斯l天_va廳r;聲明宇為外嫌部變沫量C程序碗:ex米te靜rnin議tva限r(nóng)//聲明液為外襪部變焦量va冒r=1鋪//訪問江變量5/用18席/2遍02蠅362山東卻大學(xué)慘控制房誠(chéng)學(xué)院玩張東置亮例4-哭6,在C程序攜中訪腸問不晶在.bs饑s段中薦定義醋的變導(dǎo)量。匯編徐程序融:.g麥lo求ba陽l蘭_s碎in經(jīng)e斬;聲明篩為外殼部變嘆量.s辰ec將t焦“si勺ne衣_t彼ab”言;建立價(jià)一個(gè)寧獨(dú)立心的段_s宮in柄e:劑;常數(shù)臺(tái)表起步始地濕址.f沫lo忙at渠0.吩0.f望lo免at是0.葉01連59億87.f河lo草at旱0.面02備21刊45C程序糾:ex笑te疏rn撕f布lo踢at刺s烘in蒙e[劇]癥/澤/聲明顧為外偏部變卡量fl踩oa跪t睜*si必ne際_p=s畢in柴e;守//聲明揮一個(gè)艦指針雖指向跨該變蠢量f=粉si譯ne膏_p中[4縱];岸/職/作為顛普通隨數(shù)組莖訪問si希ne數(shù)組5/澡18風(fēng)/2勿02租363山東浩大學(xué)昏控制容學(xué)院臣張東紗亮4.撲4.莫6城C2牙8x儉D垂SP編譯崖器的歐關(guān)鍵萬字C2走8x忠D自SP騎C扶/C擠++編譯敏器,適支持盈標(biāo)準(zhǔn)福的co盾ns丈t、re疤gi椅st身er、vo揉l(xiāng)a涌ti舅le等關(guān)槽鍵字,還擴(kuò)乏展了cr汽eg濫is容te倆r、in燭te蒸rr涂up組t、fa械r、ne練ar等關(guān)慶鍵字賽。關(guān)鍵低字co憤ns跡t該關(guān)苗鍵字闖可以慨優(yōu)化響存儲(chǔ)劉器的講分配尼。加co植ns極t到任何物變量膽的定析義可污以確佛保其意內(nèi)的版值不褲變。5/瞞18外/2管02名364山東掀大學(xué)適控制次學(xué)院饑張東娘亮關(guān)鍵棗字vo晌la析ti植le該關(guān)肝鍵字像所定亞義的臟變量捐是可草變的低,可曬以被膊其他楊硬件救修改組,而鞏不僅躬僅只亂能由C程序盜修改粉。優(yōu)薄化器潤(rùn)會(huì)盡牌量減夫少存爆儲(chǔ)器層的訪擾問,忽所以掩有時(shí)鮮必須危禁止昨優(yōu)化仰,特鬼別是府循環(huán)赤控制戲變量丟。例謠子vo絮la蹈ti說leun逢si物gn泳ed鉛i瞇nt壘*圾ct輝rl象;wh拜il互e(擺*c刷tr陪l玻!=礎(chǔ)0荒xf熊f)濾;//循環(huán)皺等待續(xù),直鄙到ct略rl地址基的內(nèi)局容為0x忌ff5/龍18紅/2漂02射365山東腳大學(xué)叼控制似學(xué)院破張東征亮關(guān)鍵哥字cr劉eg隨st延er該擴(kuò)辱展關(guān)喉鍵字服允許芳高級(jí)兄語言昏讀/寫控壘制寄待存器竄。在F2額81燙x隆C中,cr肢eg鴨is跌te撇r僅限負(fù)于中做斷使筐能寄增存器IE坐R和中譽(yù)斷標(biāo)團(tuán)志寄畏存器IF烈R,程序離中應(yīng)猶有如麻下聲名明ex俱te腐rncr歷eg返is綢te澆rvo揪la翻ti膏l(xiāng)e記u繪ns窩ig記ne盜din輝tIE踏R;ex揉te耀rncr赤eg慎is皂te勉rvo辣la董ti顏le岔u遠(yuǎn)ns奶ig鉤ne多din踏tIF州R;可以單用|(位寒或)腦和&(位與)進(jìn)行仇操作秤,例披如IF鼠R|榴=0灣x1沿00敞;IF磚R&銅=0愧x1氣00脹;5/測(cè)18換/2廈02屆366山東鏈大學(xué)脈控制牌學(xué)院旨張東咐亮關(guān)鍵屆字in削te謊rr職up坐t該擴(kuò)團(tuán)展關(guān)火鍵字宏用來滲說明航函數(shù)料是一合個(gè)中滑斷函逆數(shù)。中斷涌函數(shù)潛被定血義成膨返回vo扇id類型智,而悟且無田參數(shù)哀調(diào)用袍,例已如,in惑te載rr悲up肌tvo紋idin亡t_錢ha略nd笑le單r(蠻){un悄si晌gn浴edin窯tfl業(yè)ag拳s;…}5/隨18撤/2腹02籮367山東饅大學(xué)肥控制潮學(xué)院榜張東悔亮關(guān)于飼中斷奏函數(shù)中斷就的使記能和尋屏蔽金必須脈由程乖序員仗自己渡設(shè)置候。中斷橋程序塑沒有椒參數(shù)袋傳遞粘,既盒使說縣明,掠也會(huì)兩被忽核略。中斷賓處理痰程序生不能教被正說常的C程序遮調(diào)用牙。為了艷使中捐斷程菌序與驚中斷架一致裂,在聞相應(yīng)擠的中精斷矢絲式量中情必

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論