下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
編譯原理實驗報告實驗名稱:_____遞歸下降語法分析器____實驗類型:________驗證型實驗_________指導(dǎo)教師:_________何中勝_____________專業(yè)班級:________09計二______________姓名:_________周健_______________學(xué)號:______09030231_____________電子郵件:____________________________實驗地點:_______院士樓720_____________實驗成績:____________________________一、實驗?zāi)康暮鸵笸ㄟ^設(shè)計、編制、調(diào)試一個遞歸下降語法分析程序,實現(xiàn)對詞法分析程序所提供的單詞序列進(jìn)行語法檢查和結(jié)構(gòu)分析,掌握常用的語法分析方法。通過本實驗,應(yīng)達(dá)到以下目標(biāo):1、掌握從源程序文件中讀取有效字符的方法和產(chǎn)生源程序的內(nèi)部表示文件的方法。2、掌握詞法分析的實現(xiàn)方法。3、上機調(diào)試編出的語法分析程序。二、實驗過程(1)1、準(zhǔn)備:閱讀課本有關(guān)章節(jié),確定算術(shù)表達(dá)式的文法??紤]好設(shè)計方案。設(shè)計出模塊結(jié)構(gòu)、測試數(shù)據(jù),初步編制好程序。上機調(diào)試,發(fā)現(xiàn)錯誤,分析錯誤,在修改完善。、(3)分析對象分析算術(shù)表達(dá)式的BNF定義如下:〈算術(shù)表達(dá)式〉→〈項〉|〈算術(shù)表達(dá)式〉+〈項〉|〈算術(shù)表達(dá)式〉-〈項〉〈項〉→〈因式〉|〈項〉*〈因式〉|〈項〉/〈因式〉〈因式〉→〈變量〉│(〈算術(shù)表達(dá)式〉)〈變量〉→i用符號表示如下:E→T|E+T|E-TT→F|T*F|T/F→i│(E)遞歸下降分析程序?qū)崿F(xiàn)思想簡單易懂。程序結(jié)構(gòu)和語法產(chǎn)生式有直接的對應(yīng)關(guān)系。因為每個過程表示一個非終結(jié)符號的處理,添加語義加工工作比較方便。遞歸下降分析程序的實現(xiàn)思想是:識別程序由一組子程序組成。每個子程序?qū)?yīng)于一個非終結(jié)符號。每一個子程序的功能是:選擇正確的右部,掃描完相應(yīng)的字。在右部中有非終結(jié)符號時,調(diào)用該非終結(jié)符號對應(yīng)的子程序來完成。自上向下分析過程中,如果帶回溯,則分析過程是窮舉所有可能的推導(dǎo),看是否能推導(dǎo)出待檢查的符號串。分析速度慢。而無回溯的自上向下分析技術(shù),當(dāng)選擇某非終結(jié)符的產(chǎn)生時,可根據(jù)輸入串的當(dāng)前符號以及各產(chǎn)生式右部首符號而進(jìn)行,效率高,且不易出錯。無回溯的自上向下分析技術(shù)可用的先決條件是:無左遞歸和無回溯。無左遞歸:既沒有直接左遞歸,也沒有間接左遞歸。無回溯:對于任一非終結(jié)符號U的產(chǎn)生式右部x1|x2|…|xn,其對應(yīng)的字的首終結(jié)符號兩兩不相交。三試驗結(jié)果四、討論和分析本次試驗分為5個大步驟:ZC過程:開始,然后打印“INPUTEXPRESSION”,輸入字符串ST,執(zhí)行E過程,然后判斷SYM是否不等于#或者TZ是否等于1,如果是,打印“ERRORAGAIN”,給TZ賦值為0,跳回到開始步驟繼續(xù);如果不是則打印“RIGHTAGAIN”,回到開始步驟繼續(xù)。E過程:開始,執(zhí)行T過程,判斷SYM是否等于“+”或“—”,如果不是,返回,如果是,執(zhí)行ADVANCE,跳回到開始步驟。T過程:開始,執(zhí)行F過程,判斷SYM是否等于“*”或者“/”,如果不是,返回,如果是,執(zhí)行ADVANCE,在跳回到開始過程。F過程:開始,判斷SYM是否不等于“A”或者SYM是否小于Z,如果不是,執(zhí)行ADVACE,然后執(zhí)行返回,如果不是,再判斷SYM是否不等于“(”,如果是,打印“ERROR”,TZ賦值1,返回;如果不是,執(zhí)行ADVANCE,在執(zhí)行E過程,接著繼續(xù)判斷SYM是否不等于“)”,如果是,打印"ERROR",TZ賦值1,如果不是,執(zhí)行ADVANCE,返回。SYM:取字符串ST的第一個字符給SYM。ADVANCE:取字符串ST去除首字符后留下的字符串。本次試驗主要是測試性試驗,了解一下遞歸下降語法分析器的基本構(gòu)成和結(jié)構(gòu)等等。附錄#include"stdio.h"#include"string.h" charsym;inttz=0; charst[50];intip=0; voidmyE(); voidmyT(); voidmyF(); voidmyAdvance(); voidinit(); voidmyE() { myT(); if(sym=='+'||sym=='-') { myAdvance(); myE(); } } voidmyT() { myF(); while(sym=='*'||sym=='/') { myAdvance(); myF(); } } voidmyF() {if(sym>='A'&&sym<='Z'||sym>='a'&&sym<='z')myAdvance(); else{ if(sym!='(') { printf("error\n"); tz=1; } else {myAdvance(); myE();} if(sym!=')') {printf("error\n"); tz=1;} else myAdvance(); } } voidmyAdvance() {if(ip<strlen(st)) {ip=ip+1; sym=st[ip]; }}voidinit() {ip=0; sym=st[ip];} voidmain() {inti; gets(st); for(i=0;st[i]!='\0';i++); st[i]='#'; init();myE(); if(sym!='#'||tz==1) {printf("error\n"); tz=0;}elseprintf("right\n"); }實驗者自評通過本次對遞歸下降詞法分析器的結(jié)構(gòu),過程有了更進(jìn)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度物業(yè)管理系統(tǒng)技術(shù)升級與維護(hù)合同3篇
- 二零二五年度高端不銹鋼門工程安裝與維護(hù)服務(wù)合同3篇
- 二零二五版控制權(quán)爭奪下的企業(yè)并購法律服務(wù)合同3篇
- 二零二五年范文合同失效通知模板與說明3篇
- 二零二五版企業(yè)訂餐福利管理合同3篇
- 2025年P(guān)VC管材綠色生產(chǎn)供應(yīng)鏈采購銷售合同3篇
- 居民住宅改為商用合同(2篇)
- 二零二五年房屋租賃合同出租人租賃房屋租賃權(quán)租賃合同9篇
- 二零二五年度電子信息材料采購合同范本3篇
- 2025年度生物制藥行業(yè)質(zhì)量控制合同3篇
- 湖南省建設(shè)工程施工階段監(jiān)理服務(wù)費計費規(guī)則【實用文檔】doc
- GB/T 6913-2008鍋爐用水和冷卻水分析方法磷酸鹽的測定
- GB/T 18717.2-2002用于機械安全的人類工效學(xué)設(shè)計第2部分:人體局部進(jìn)入機械的開口尺寸確定原則
- 教案:第三章 公共管理職能(《公共管理學(xué)》課程)
- 中國文化概論(第三版)全套課件
- 117-鋼結(jié)構(gòu)工程質(zhì)量常見問題與管控措施
- SHS5230三星指紋鎖中文說明書
- 諾和關(guān)懷俱樂部對外介紹
- 保定市縣級地圖PPT可編輯矢量行政區(qū)劃(河北省)
- 新蘇教版科學(xué)六年級下冊全冊教案(含反思)
- 供方注冊指南-ZTE
評論
0/150
提交評論