



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、編譯原理實(shí)驗(yàn)教學(xué)大綱一、課程基本信息中文名稱Compiler Principle英文名稱Compiler Principle適用專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)先修課程離散數(shù)學(xué)、匯編語(yǔ)言課程類別專業(yè)拓展課程修讀性質(zhì)必開學(xué)分/學(xué)時(shí)0.5學(xué)分/18學(xué)時(shí)考核方式考查二、教學(xué)目標(biāo)通過實(shí)驗(yàn)使學(xué)生對(duì)比較抽象的編譯理論內(nèi)容產(chǎn)生一個(gè)具體的感性認(rèn)識(shí),能把編譯原理的相關(guān)理論運(yùn)用到軟件開發(fā)中。在學(xué)生手動(dòng)生成詞法分析器及完成一些小的語(yǔ)法分析器的過程中,使學(xué)生對(duì)這些部份的工作機(jī)理有一個(gè)詳細(xì)的了解,達(dá)到“知其然,且知其所以然”,從而提高學(xué)生的應(yīng)用程序設(shè)計(jì)能力,提高分析問題、解決問題的能力。 三、教學(xué)內(nèi)容實(shí)驗(yàn)項(xiàng)目一:源程序的輸入和掃描
2、實(shí)驗(yàn)(6學(xué)時(shí))1.實(shí)驗(yàn)屬性:設(shè)計(jì)實(shí)驗(yàn)2.修讀性質(zhì):必開3.教學(xué)目標(biāo):理解源程序被編譯器讀取的過程,掌握掃描程序的方法4.實(shí)驗(yàn)方法:上機(jī)操作5實(shí)驗(yàn)儀器設(shè)備: 計(jì)算機(jī)6.實(shí)驗(yàn)內(nèi)容:編制一個(gè)源程序的輸入過程,從鍵盤、文件或文本框輸入若干行語(yǔ)句,依次存入輸入緩沖區(qū)(字符型數(shù)據(jù));編制一個(gè)掃描子程序,該掃描程序能刪除無(wú)用的空白字符、回車字符以及其他與輸入介質(zhì)相關(guān)的非實(shí)質(zhì)性字符,用“#”分隔單詞流。刪除注釋信息。實(shí)驗(yàn)步驟準(zhǔn)備:確定開發(fā)工具,如TC、VC、VC+、Delphi等;花一周時(shí)間熟悉開發(fā)工具。花一周時(shí)間確定被處理的語(yǔ)言的語(yǔ)法特點(diǎn)(初步確定,也可使用現(xiàn)成語(yǔ)言如Pascal、C等)。寫好實(shí)驗(yàn)報(bào)告,編好
3、程序。上機(jī):安裝所需的開發(fā)工具,輸入或拷貝程序,調(diào)試。程序要求:如源程序?yàn)镻ascal語(yǔ)言。輸入如下一段:PROGRAM source;This little source program is used to illustrate compiling procedure VAR x,y,z:integer;a:integer;BEGIN This program has only 4 statement x:=23+5; z:=x DIV -3; y:=z+18*3; a:=x+(y-2) DIV 4;END.要求輸出如下:# PROGRAM # source # ; # VAR # x #
4、 , # y # , # z # : # integer # ; # a # : # integer # ; # BEGIN # x # := # 23 # + # 5 # ; # z # := # x # DIV # - # 3 # ; # y # := # z # + # 18 # * # 3 # ; # a # := # x # + # ( # y # - # 2 # ) # DIV # 4 # ; # END # . #7.成績(jī)?cè)u(píng)定程序通過測(cè)試并提交實(shí)驗(yàn)報(bào)告。8.其他必要說明實(shí)驗(yàn)報(bào)告要求寫出編程思路、源代碼;寫出上機(jī)調(diào)試時(shí)發(fā)現(xiàn)的問題,以及解決的過程;寫出你所使用的測(cè)試數(shù)據(jù);談?wù)勀愕捏w會(huì)
5、。實(shí)驗(yàn)項(xiàng)目二:詞法分析實(shí)驗(yàn)(6學(xué)時(shí))1.實(shí)驗(yàn)屬性:設(shè)計(jì)實(shí)驗(yàn)2.修讀性質(zhì):必開3.教學(xué)目標(biāo)了解詞法分析器的內(nèi)部工作原理,通過本次實(shí)驗(yàn),掌握對(duì)字符進(jìn)行靈活處理的方法。4.實(shí)驗(yàn)方法上級(jí)操作5實(shí)驗(yàn)儀器設(shè)備計(jì)算機(jī)6.實(shí)驗(yàn)內(nèi)容編制一個(gè)讀單詞過程,從輸入的源程序中,識(shí)別出各個(gè)具有獨(dú)立意義的單詞,即基本保留字、標(biāo)識(shí)符、常數(shù)、運(yùn)算符、分隔符五大類。并依次輸出各個(gè)單詞的內(nèi)部編碼及單詞符號(hào)自身值。(遇到錯(cuò)誤時(shí)可顯示“Error”,然后跳過錯(cuò)誤部分繼續(xù)顯示)。7.成績(jī)?cè)u(píng)定實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)報(bào)告。8.其他必要說明實(shí)驗(yàn)報(bào)告要求實(shí)驗(yàn)報(bào)告中應(yīng)包含以下內(nèi)容:功能描述:該程序具有什么功能?程序結(jié)構(gòu)描述:函數(shù)調(diào)用格式、參數(shù)含義、返回值
6、描述、函數(shù)功能;函數(shù)之間的調(diào)用關(guān)系圖、程序總體執(zhí)行流程圖。實(shí)驗(yàn)過程記錄:出錯(cuò)次數(shù)、出錯(cuò)嚴(yán)重程度、解決辦法摘要。實(shí)驗(yàn)總結(jié):你在編程過程中花時(shí)多少?多少時(shí)間在紙上設(shè)計(jì)?多少時(shí)間上機(jī)輸入和調(diào)試?多少時(shí)間在思考問題?遇到了哪些難題?你是怎么克服的?你對(duì)你的程序的評(píng)價(jià)?你的收獲有哪些?實(shí)驗(yàn)項(xiàng)目三:語(yǔ)法分析實(shí)驗(yàn)(6時(shí))1.實(shí)驗(yàn)屬性:設(shè)計(jì)實(shí)驗(yàn)2.修讀性質(zhì):必開3.教學(xué)目標(biāo)了解語(yǔ)法分析器的內(nèi)部工作原理,通過在本次實(shí)驗(yàn)中運(yùn)用一定的編程技巧,掌握對(duì)表達(dá)式進(jìn)行處理的一種方法。4.實(shí)驗(yàn)方法上級(jí)操作5實(shí)驗(yàn)儀器設(shè)備計(jì)算機(jī)6.實(shí)驗(yàn)內(nèi)容(宋體五號(hào),加粗)語(yǔ)法分析實(shí)驗(yàn)可以選擇自上而下的LL(1)語(yǔ)法分析方法,也可以選擇自下而上
7、的算符優(yōu)先分析法。(學(xué)生自行選擇)算術(shù)表達(dá)式的文法可以是(可以根據(jù)需要適當(dāng)改變): EE+E|E-E|E*E|E/E|(E)|i根據(jù)算符優(yōu)先分析法,將表達(dá)式進(jìn)行語(yǔ)法分析,判斷一個(gè)表達(dá)式是否正確。7.成績(jī)?cè)u(píng)定(宋體五號(hào),加粗)實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)報(bào)告。8.其他必要說明(可選項(xiàng),宋體五號(hào),加粗)實(shí)驗(yàn)報(bào)告要求功能描述:該程序具有什么功能?程序結(jié)構(gòu)描述:函數(shù)調(diào)用格式、參數(shù)含義、返回值描述、函數(shù)功能;函數(shù)之間的調(diào)用關(guān)系圖、程序總體執(zhí)行流程圖。實(shí)驗(yàn)過程記錄:出錯(cuò)次數(shù)、出錯(cuò)嚴(yán)重程度、解決辦法摘要。實(shí)驗(yàn)總結(jié):你在編程過程中花時(shí)多少?多少時(shí)間在紙上設(shè)計(jì)?多少時(shí)間上機(jī)輸入和調(diào)試?多少時(shí)間在思考問題?遇到了哪些難題?你是
8、怎么克服的?你對(duì)你的程序的評(píng)價(jià)?你的收獲有哪些?四、考核形式及成績(jī)?cè)u(píng)定(一)考核形式: 程序通過測(cè)試,得出實(shí)驗(yàn)結(jié)果并提交實(shí)驗(yàn)報(bào)告(二)成績(jī)?cè)u(píng)定: 實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)報(bào)告。 評(píng)分方法:考核學(xué)生程序設(shè)計(jì)能力、獨(dú)立分析解決問題的能力和創(chuàng)新精神,實(shí)驗(yàn)報(bào)告水平以及學(xué)習(xí)態(tài)度綜合考評(píng)。成績(jī)分優(yōu)、良、中、及格和不及格五等。 考核標(biāo)準(zhǔn)包括:1.系統(tǒng)設(shè)計(jì)的可用性 2.實(shí)用性3.可擴(kuò)充性 4. 學(xué)生的動(dòng)手能力5.創(chuàng)新能力 6. 文檔水平五、教材與參考書教 材:陳火旺等編. 程序設(shè)計(jì)語(yǔ)言編譯原理(第三版). 國(guó)防工業(yè)出版社,2001參考書:1 張素琴編著,編譯原理(第2板),清華大學(xué)出版社,2005年2 蔣立源編著,編譯原理,西北工
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公路波形欄桿施工合同范本
- 小學(xué)音樂教學(xué)中體態(tài)律動(dòng)的應(yīng)用
- 全款買房房屋合同范本
- 單位訂制酒瓶合同范本
- 北京租地種菜合同范本
- 動(dòng)力變檢修合同范本
- 農(nóng)家菠菜售賣合同范本
- 醫(yī)院建筑改造合同范本
- 農(nóng)村水果收購(gòu)合同范本
- 修車工合同范本模板
- 關(guān)節(jié)鏡可行性報(bào)告
- 中老年口腔保健知識(shí)講座
- 《讀懂財(cái)務(wù)報(bào)表》課件
- 《瘋狂動(dòng)物城》全本臺(tái)詞中英文對(duì)照
- 建筑施工安全管理及揚(yáng)塵治理檢查投標(biāo)方案(技術(shù)方案)
- 六年級(jí)毛筆書法教案(下冊(cè))
- 秘魯農(nóng)村公路
- 五年級(jí)下冊(cè)勞動(dòng)全冊(cè)教案人教版貴州人民出版社
- 吉利質(zhì)量協(xié)議
- 空調(diào)系統(tǒng)的應(yīng)急預(yù)案
- 2023玻纖增強(qiáng)聚氨酯門窗工程技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論