




已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
-0-目錄1概述11設(shè)計(jì)題目12設(shè)計(jì)目的-0213設(shè)計(jì)內(nèi)容-0214設(shè)計(jì)時(shí)間-022設(shè)計(jì)環(huán)境與工具-023設(shè)計(jì)原則31遞歸下降法的描述311實(shí)現(xiàn)思想-02312算法的特點(diǎn)-03313構(gòu)造遞歸下降語(yǔ)法分析程序-0332逆波蘭式的描述321逆波蘭式的定義-03322產(chǎn)生逆波蘭式的前提:中綴算術(shù)表達(dá)式-044設(shè)計(jì)概要41數(shù)據(jù)結(jié)構(gòu)的說(shuō)明-0442變量的說(shuō)明-0443函數(shù)的說(shuō)明-0544詳細(xì)的算法描述及程序框圖441主函數(shù)的說(shuō)明和框圖-05442子函數(shù)的說(shuō)明及框圖-075源程序-096運(yùn)行結(jié)果-157設(shè)計(jì)評(píng)價(jià)及體會(huì)71設(shè)計(jì)心得-1872經(jīng)驗(yàn)教訓(xùn)-198參考文獻(xiàn)-19-1-算術(shù)表達(dá)式的語(yǔ)法分析及語(yǔ)義分析程序設(shè)計(jì)1概述11設(shè)計(jì)題目用遞歸下降法實(shí)現(xiàn)算術(shù)表達(dá)式的語(yǔ)法分析及語(yǔ)義分析程序設(shè)計(jì),中間代碼選用逆波蘭式。12設(shè)計(jì)目的通過(guò)設(shè)計(jì)、編制、調(diào)試一個(gè)算術(shù)表達(dá)式的語(yǔ)法及語(yǔ)義分析程序,加深對(duì)語(yǔ)法及語(yǔ)義分析原理的理解,并實(shí)現(xiàn)詞法分析程序?qū)卧~序列的詞法檢查和分析。13設(shè)計(jì)內(nèi)容(1)選擇遞歸下降法完成算術(shù)表達(dá)式的語(yǔ)法分析及語(yǔ)義分析程序設(shè)計(jì),中間代碼選用逆波蘭式。(2)寫(xiě)出符合分析方法要求的文法,給出分析方法的思想。(3)編制好分析程序后,設(shè)計(jì)若干用例,上機(jī)測(cè)試并通過(guò)所設(shè)計(jì)的分析程序14設(shè)計(jì)時(shí)間20周一周2.設(shè)計(jì)環(huán)境與工具M(jìn)icrosoftVisualC+6.03.設(shè)計(jì)原則31遞歸下降法的描述311實(shí)現(xiàn)思想它的主要原理是,對(duì)每個(gè)非終極符按其產(chǎn)生式結(jié)構(gòu)構(gòu)造相應(yīng)語(yǔ)法分析子程序,其中終極符產(chǎn)生匹配命令,而非終極符則產(chǎn)生過(guò)程調(diào)用命令。因?yàn)槲姆ㄟf歸-2-相應(yīng)子程序也遞歸,所以稱(chēng)這種方法為遞歸子程序下降法或遞歸下降法。其中子程序的結(jié)構(gòu)與產(chǎn)生式結(jié)構(gòu)幾乎是一致的。文法中每個(gè)非終結(jié)符對(duì)應(yīng)一個(gè)遞歸過(guò)程(子程序),每個(gè)過(guò)程的功能是識(shí)別由該非終結(jié)符推出的串,當(dāng)某非終結(jié)符的產(chǎn)生式有多個(gè)候選式時(shí)能夠按LL(1)形式可唯一地確定選擇某個(gè)候選式進(jìn)行推導(dǎo)。312算法的特點(diǎn)遞歸下降法是語(yǔ)法分析中最易懂的一種方法。遞歸下降法要滿足的條件:假設(shè)A的全部產(chǎn)生式為A1|2|n,則必須滿足如下條件才能保證可以唯一的選擇合適的產(chǎn)生式predict(Ai)predict(Aj)=,當(dāng)ij.313構(gòu)造遞歸下降語(yǔ)法分析程序采用了遞歸子程序方法進(jìn)行語(yǔ)法分析,對(duì)文法中的每個(gè)非終極符號(hào)按其產(chǎn)生式結(jié)構(gòu)產(chǎn)生相應(yīng)的語(yǔ)法分析子程序,完成相應(yīng)的識(shí)別任務(wù)。其中終結(jié)符產(chǎn)生匹配命令,非終結(jié)符則產(chǎn)生調(diào)用命令。每次進(jìn)入子程序之前都預(yù)先讀入一個(gè)單詞。因?yàn)槭褂昧诉f歸下降方法,所以程序結(jié)構(gòu)和層次清晰明了,易于手工實(shí)現(xiàn),且時(shí)空效率較高。實(shí)際的語(yǔ)法分析工作,從調(diào)用總程序的分析子程序開(kāi)始,根據(jù)產(chǎn)生式進(jìn)行遞歸調(diào)用各個(gè)分析子程序。32逆波蘭式的描述321逆波蘭式的定義將運(yùn)算對(duì)象寫(xiě)在前面,而把運(yùn)算符號(hào)寫(xiě)在后面。用這種表示法表示的表達(dá)式也稱(chēng)做后綴式。逆波蘭式的特點(diǎn)在于運(yùn)算對(duì)象順序不變,運(yùn)算符號(hào)位置-3-反映運(yùn)算順序。采用逆波蘭式可以很好的表示簡(jiǎn)單算術(shù)表達(dá)式,其優(yōu)點(diǎn)在于易于計(jì)算機(jī)處理表達(dá)式。322產(chǎn)生逆波蘭式的前提:中綴算術(shù)表達(dá)式4.設(shè)計(jì)概要41數(shù)據(jù)結(jié)構(gòu)的說(shuō)明staticcharexprEXP_LEN;/算術(shù)表達(dá)式輸入字符緩沖區(qū)42變量的說(shuō)明#defineEXP_LEN100/定義輸入字符緩沖區(qū)的長(zhǎng)度/*-出錯(cuò)代碼的宏定義-*/#defineINVALID_CHAR_TAIL0/表達(dá)式后跟有非法字符#defineCHAR_AFTER_RIGHT1/右括號(hào)后連接非法字符#defineLEFT_AFTER_NUM2/數(shù)字后非法直接連接左括號(hào)#defineINVALID_CHAR_IN3/表達(dá)式中含有非法字符#defineNO_RIGHT4/缺少右括號(hào)#defineEMPTY_BRACKET5/括號(hào)內(nèi)無(wú)表達(dá)式#defineUNEXPECTED_END6/預(yù)期外的算術(shù)表達(dá)式結(jié)束usingnamespacestd;constn=20;conststringErrCod
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)管理新人培訓(xùn)心得體會(huì)
- 重癥監(jiān)護(hù)有創(chuàng)血壓監(jiān)測(cè)流程他
- 基層?jì)D幼工作站出生缺陷防控管理制度與措施他
- 河道養(yǎng)護(hù)管理施工方案與技術(shù)措施
- 2025年教導(dǎo)處學(xué)生安全計(jì)劃
- 護(hù)理創(chuàng)新思維培養(yǎng)培訓(xùn)計(jì)劃
- 學(xué)校教科研評(píng)價(jià)體系心得體會(huì)
- 制造業(yè)銷(xiāo)售年終總結(jié)與計(jì)劃
- IT運(yùn)維崗位KPI績(jī)效考核表及工作職責(zé)
- 新人教版四年級(jí)英語(yǔ)口語(yǔ)教學(xué)計(jì)劃
- T/CNFAGS 16-2024綠色甲醇分級(jí)標(biāo)準(zhǔn)(試行)
- 2025年財(cái)會(huì)業(yè)務(wù)知識(shí)競(jìng)賽題庫(kù)及答案(360題)
- 逆向工程技術(shù)-課件
- 基于PLC交流變頻調(diào)速系統(tǒng)的設(shè)計(jì) 畢業(yè)設(shè)計(jì)(論文)
- MIL-STD-1916抽樣標(biāo)準(zhǔn)簡(jiǎn)介課件
- CSC-2000(V2) 變電站自動(dòng)化監(jiān)控系統(tǒng)運(yùn)行手冊(cè)
- 鋼卷尺檢定證書(shū)
- 齊魯醫(yī)學(xué)健康知識(shí)-遠(yuǎn)離“三高”
- 安徽省工傷職工停工留薪期分類(lèi)目錄
- 混凝土試件養(yǎng)護(hù)出入臺(tái)賬
- 2022醫(yī)學(xué)課件出疹性傳染病
評(píng)論
0/150
提交評(píng)論