資源描述:
《編譯原理實驗課的實踐探索》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、萬方數(shù)據(jù)第25卷第6期2004年12月大連大學學報JOURNALOFDAUANUNIVERSITYV01.25No.6DOC.2004編譯原理實驗課的實踐探索毛玉萃(大連大學信息工程學院,遼寧大連116622)摘要:編譯原理是計算機專業(yè)的重要專業(yè)課之一,設計一組合理的實驗并很好地實施,對理解和掌握這門課是十分重要的.設計的實驗是以簡單的算術表達式為處理對象,進行詞法分析、語法分析和語義分析,兼有表格處理和出錯處理.本組實驗具有與理論相呼應、操作性強、適用范圍廣等特點.關鍵詞:編譯原理;課程實踐;課程實驗中圖分類號:G420文獻標識碼:A文章編號:10
2、08-2395(2004)06—01lO-03ResearchontheexperimentcourseofCompilerPrinciplesMA0Yu—cai(CollegeofInformationEngincefing,DalianUniversity,Dalian116622,China)Abstract:CompilerPrinciplesisoneoftheimportantspecializedcoursesinthecomputerspecialty.Todesignaseriesofreasonableexperimentsand
3、topracticetheminthecourseteachingareveryimportantforthestudentstowellunderstandandmasterthiscourse.Inthedesignedexperiments,thesimplearithmeticexpressionswereana-lyzedthroughlexicalanalysis,syntaxanalysis,semanticanalysis,tableprocessandeiTorprocess.Thecharacteris·ticsofthedesi
4、gnedexperimentsareidentitywiththetheory,easytooperate,andcallbeusedinthewiderange.Keywords:CompilerPrinciples;practiceofthecourseCompilerPrinciples;experimentsofCompilerPrinciples編譯原理是計算機專業(yè)的重要專業(yè)課之一,它與計算機學科中的眾多課程是緊密相聯(lián)的,并在很多領域有著廣泛的應用,其基本原理與技術不僅對軟件的開發(fā)有很大的啟發(fā)和指導作用,而且在系統(tǒng)結構設計中降低功耗方面有著
5、巨大的指導作用和研究價值[1'2】.編譯原理是集理論與實踐于一體的一門課程,在理論課中所介紹的基本概念、原理、方法和算法,一定要通過實驗加以理解和吸收,才能能夠達到真正的理解、吸收和掌握.為此設計一組與理論內容相配套的實驗是十分必要的.編譯原理這門課的主要講述是把編程語言書寫的程序等價轉換為目標代碼過程中所涉及的概念、算法、方法和理論,具體包括文法、詞法分析和語法分析、語義分析、中間代碼生成、中間代碼優(yōu)化和目標代碼的生成.實驗內容應放在對詞法分析和語法分析、中間代碼生成、中間代碼優(yōu)化和目標代碼的生成的方法上.在文獻[3,4]中介紹的實驗是以c語言子集
6、或PASCAL語言子集為處理對象,進行詞法分析、語法分析、語義分析、中間代碼生成、優(yōu)化和目標代碼的生成.作為一門課的實驗,這一實驗內容多,龐雜,容易使學生陷入程序編制和調試中,而忽略了對這門課的實驗目的.另外PASCAL語言已經(jīng)很少列入計算機專業(yè)本科教學計劃中.根據(jù)多年的教學實踐,設計了一組編譯原理課程的實驗,本組實驗含蓋了這門課的重點內容詞法分析、語法分析、語義分析、表格和出錯處理,操作性強,與理淪涮丑呼應.1實驗設計本組實驗共設置了三個實驗,這組實驗既與理論課內容相輔相承,同時相互之間又互相關聯(lián),構成收稿日期:2004.09—26;修訂日期:20
7、04.11.27基金項目:大連大學重點建設專業(yè)項目作者簡介:毛玉萃(1964一),女,副教授.萬方數(shù)據(jù)第6期毛玉萃:編譯原理實驗課的實踐探索了一體化實驗的.現(xiàn)對這三個實驗進行說明.實驗一題目:詞法分析目的:通過該實驗使學生掌握描述詞法的文法,同時能夠進行詞法分析.要求:對輸入的字符串進行詞法分析,形成詞法分析產生的符號表.內容:給定描述詞法的文法為:文法一:(整型數(shù)值型數(shù)據(jù))_[+l一](數(shù)字)(數(shù)字)+(數(shù)字)珈111213141516171819文法二:<算符)_+f—I:I=I/i(I)I^利用以上二個文法對從鍵盤輸人的字符串進行詞法分析,對符
8、合這兩個文法的字符串建立單詞符號表;對不符合這兩個文法的字符串給出錯誤信息.編程序實現(xiàn)該功能,并上機調試.實