




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、語(yǔ)法分析C2.1 實(shí)驗(yàn)?zāi)康木幹埔粋€(gè)遞歸下降分析程序,實(shí)現(xiàn)對(duì)詞法分析程序所提供的單詞序列的語(yǔ)法檢查和結(jié)構(gòu)分析.C2.2 實(shí)驗(yàn)要求利用C語(yǔ)言編制遞歸下降分析程序,并對(duì)簡(jiǎn)單語(yǔ)言進(jìn)行語(yǔ)法分析.C2.2.1待分析的簡(jiǎn)單語(yǔ)言的語(yǔ)法用擴(kuò)充的BNF表示如下:(1)<程序>:begin<語(yǔ)句串>end(2)<語(yǔ)句串>:<語(yǔ)句><語(yǔ)句>(3)<語(yǔ)句>:<賦值語(yǔ)句>(4)<賦值語(yǔ)句>:ID:<表達(dá)式>(5)<表達(dá)式>:<項(xiàng)><項(xiàng)> | 項(xiàng)>(6)<項(xiàng)>:&
2、lt;因子>*<因子> | /<因子>(7)<因子>:ID | NUM | (<表達(dá)式>)。實(shí)驗(yàn)要求說(shuō)明輸入單詞串,以“”結(jié)束,如果是文法正確的句子,則輸出成功信息,打印“success”,否則輸出“error”. 例如:圖c.3語(yǔ)法分析主程序示意圖 輸入begin a:=9;x:=2*3;b:=a+x end # 輸出success 輸入x:=a+b*c end # 輸出 errorC2.3語(yǔ)法分析程序的算法思想() 主程序示意圖如圖。所示。() 遞歸下降分析程序示意圖如圖。所示。() 語(yǔ)句串分析過(guò)程示意圖如圖。所示。() stateme
3、nt語(yǔ)句分析函數(shù)流程如圖.6. C.7. C.8 C.9所示。圖c.4遞歸下降分析程序示意圖圖c.5語(yǔ)句串分析示意圖否是否是調(diào)用scaner是否:=?調(diào)用scaner是否標(biāo)識(shí)?出錯(cuò)處理調(diào)用expression函數(shù)圖c.6statement語(yǔ)句分析函數(shù)示意圖否出錯(cuò)處理調(diào)用term函數(shù)調(diào)用scaner是否+,-?調(diào)用term函數(shù)是 圖c.7 expression表達(dá)式分析函數(shù)示意圖否是調(diào)用factor函數(shù)調(diào)用scaner是否*,/?調(diào)用factor函數(shù)出錯(cuò)處理圖c.8term分析函數(shù)示意圖圖c.9factor分析過(guò)程示意圖.4語(yǔ)法分析程序的語(yǔ)言程序框架lrparser() if(syn=1) 讀下
4、一個(gè)單詞符號(hào);調(diào)用yucu函數(shù);if(syn=6) 讀下一個(gè)單詞符號(hào);if(syn=0 &&(kk=0) 輸出(“success”); else if(kk!=1) 輸出缺 endl 錯(cuò)誤;kk=1;else 輸出 begin錯(cuò)誤;kk=1; return;yucu()調(diào)用statement(); while(syn=26) 讀下一個(gè)單詞符號(hào); 調(diào)用statement函數(shù); return;statement() if(syn=10) 讀下一個(gè)單詞符號(hào);if(syn=18) 讀下一個(gè)單詞符號(hào);調(diào)用expression函數(shù);else 輸出賦值號(hào)錯(cuò)誤;kk=1; else輸出語(yǔ)句錯(cuò)誤;kk=1return;expression() 調(diào)用term函數(shù);while(syn=13 or 14) 讀下一個(gè)單詞符號(hào);調(diào)用term函數(shù);return;term() 調(diào)用factor函數(shù);while(syn=15 or 16) 讀下一個(gè)單詞符號(hào);調(diào)用factor函數(shù);return;factor() if(syn=10 or 11)讀下一個(gè)單詞符號(hào);else if (syn=27) 讀下一個(gè)單詞符號(hào);調(diào)用ex
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全規(guī)范叉車操作員錄用合同
- 綠色高速建設(shè)方案
- 批量裝修電梯管理方案
- 水產(chǎn)獸醫(yī)考試題及答案
- 蘭州牙科整改方案
- 新房物品規(guī)劃方案模板
- 脫硫脫碳劑采購(gòu)方案
- 保險(xiǎn)服務(wù)培訓(xùn)
- 站臺(tái)站房改造方案
- 鞋子測(cè)評(píng)面試題及答案
- 2025年上海市中考物理試卷真題(含答案)
- 2025年《社會(huì)工作法規(guī)與政策》課程標(biāo)準(zhǔn)
- 2025-2030飛機(jī)零部件產(chǎn)業(yè)規(guī)劃研究報(bào)告
- 2025鄭州市中牟縣輔警考試試卷真題
- 商場(chǎng)日常保潔服務(wù)方案投標(biāo)文件(技術(shù)方案)
- 鍋爐試題及答案
- T/CSBME 072-2023車載醫(yī)用X射線計(jì)算機(jī)體層攝影設(shè)備臨床質(zhì)量控制要求
- 動(dòng)火切割安全協(xié)議書
- 免疫藥物的處方審核思路與用藥指導(dǎo)
- 《空壓機(jī)節(jié)能技術(shù)及應(yīng)用》課件
- 《體重管理年行動(dòng)》科普指南課件
評(píng)論
0/150
提交評(píng)論