編譯實驗指導(dǎo)書_第1頁
編譯實驗指導(dǎo)書_第2頁
編譯實驗指導(dǎo)書_第3頁
編譯實驗指導(dǎo)書_第4頁
編譯實驗指導(dǎo)書_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、編譯原理實驗指導(dǎo)書實驗一詞法分析一、實驗?zāi)康耐ㄟ^實現(xiàn)PL/0語言(一種示例小語言)的詞法分析器,理解詞法分析過程,掌握程序各部分之間的接口安排。二、實驗要求1、要求每位同學(xué)單獨完成詞法分析器,并接受檢查;2、撰寫實驗報告。用有限自動機(jī)畫出“三、實驗內(nèi)容”中的詞法規(guī)則;實驗報告不要摘抄全部代碼,但需要流程圖的形式描述程序結(jié)構(gòu);必須書寫設(shè)計和實現(xiàn)的過程中出現(xiàn)的一些問題以及解決方法。三、實驗內(nèi)容1、PL/0語言的單詞結(jié)構(gòu)關(guān)鍵字(10個):begin,end,if,then,while,do,const,var,call,procedure標(biāo)識符:字母序列,最大長度10常數(shù):整型常數(shù)算符和界符(17個

2、):+,-,*,/,odd,=,=,:=,(,),.,;2、單詞的種別SYM_IDENTIFIER,標(biāo)識符SYM_NUMBER,常數(shù)SYM_PLUS,+SYM_MINUS,-SYM_TIMES,*SYM_SLASH,/SYM_ODD,oddSYM_EQU,=SYM_NEQ,SYM_LES,SYM_LEQ,SYM_GEQ,=SYM_LPAREN,(SYM_RPAREN,)SYM_COMMA,SYM_SEMICOLON,;SYM_PERIOD,.SYM_BECOMES,:=SYM_BEGIN,beginSYM_END,endSYM_IF,ifSYM_THEN,thenSYM_WHILE,while

3、SYM_DO,doSYM_CONST,constSYM_VAR,varSYM_CALL,callSYM_PROCEDUREprocedure3、PL/0的語言的詞法分析器將要完成以下工作:跳過分隔符(如空格,回車,制表符);識別諸如begin,end,if,while等保留字;識別非保留字的一般標(biāo)識符,此標(biāo)識符值(字符序列)賦給全局量id,而全局量sym賦值為SYM_IDENTIFIER。識別數(shù)字序列,當(dāng)前值賦給全局量NUM,sym則置為SYM_NUMBER;識別:=,=,=之類的特殊符號,全局量sym則分別被賦值為SYM_BECOMES,SYM_LEQ,SYM_GEQ等。4、詞法分析器的實現(xiàn)

4、方式:把詞法分析器設(shè)計成一個獨立子程序,以便于語法分析器調(diào)用。詞法分析器運行一次產(chǎn)生一個單詞符號。實驗二語法分析一、實驗?zāi)康脑趯嶒炓坏幕A(chǔ)上,采用遞歸下降的方法實現(xiàn)PL/O語言(一種示例小語言)實驗要求的語法分析器1、要求每位同學(xué)單獨完成語法法分析器,并接受檢查;2、撰寫實驗報告。(1)用上下文無關(guān)文法寫出“三、實驗內(nèi)容”中的語法規(guī)則;(2)實驗報告不要摘抄全部代碼,但需要流程圖的形式描述程序結(jié)構(gòu);(必須書寫設(shè)計和實現(xiàn)的過程中出現(xiàn)的一些問題以及解決方法。三、實驗內(nèi)容表達(dá)式1、Test語言的語法結(jié)構(gòu)表達(dá)式(1)程序(2)程序體(3)語句序列語句(4)語句條ident件-odd表達(dá)式(6)表達(dá)式-

5、caidentlLj(8)因*beg因子(8)因*beg因子、=ident2、迎遞歸下降2、迎遞歸下降的方法來設(shè)計條件/0編譯ST一和FOLLOW和FOLLOW集合0非終結(jié)符S)FST(S)whOlesti4FOL程序體vaprocedeainurei程序體vaprocedeainurei條e件tcal-ifdo語句表達(dá)式表達(dá)式while(語句identcallbeginifwhile.;end條件odd+-(identnumberthendo表達(dá)式+-(identnumber.;)Rendthendo項identnumber(.;)R+-endthendo因子identnumber(.;)R+-*/endthendo注:表中R代表六個關(guān)系運算符實驗三語義分析和中間代碼產(chǎn)生一、實驗?zāi)康脑趯嶒灦幕A(chǔ)上,采用基于屬性文法的語法制導(dǎo)翻譯方法完成語義分析和中間代碼產(chǎn)生。二、實驗要求1、要求每位同學(xué)單獨完成語義分析器中至少一種語法單位的翻譯,并接受檢查;2、撰寫實驗報告。用屬性文法描述你要實現(xiàn)翻譯的語法單位的屬性文法;必須書寫設(shè)計

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論