a国产,中文字幕久久波多野结衣AV,欧美粗大猛烈老熟妇,女人av天堂

當(dāng)前位置:主頁 > 科技論文 > 計算機(jī)論文 >

構(gòu)造一個dfa_編譯程序?qū)儆谑裁窜浖㥮編譯程序構(gòu)造

發(fā)布時間:2016-06-03 15:01

  本文關(guān)鍵詞:編譯程序構(gòu)造,由筆耕文化傳播整理發(fā)布。


1.題目:編譯程序構(gòu)造 2.內(nèi)容:涉及詞法分析、自下而上語法分析程序的實現(xiàn):SLR(1)分析器的實現(xiàn)以及生成中間代碼。 3.具體要求 根據(jù)LR分析算法構(gòu)造SLR(1)分析程序,并完成語法分析動作(當(dāng)需要一個單詞時,調(diào)用詞法分析程序獲。瑫r完成語義分析生成四元式輸出。要求程序具有通用性,改變文法時只需改變程序的數(shù)據(jù)初值,無需改變程序主體; (1)基本要求:完成1條說明語句、2條算數(shù)表達(dá)式和賦值語句的翻譯,生成中間代碼。 (2)高級要求:在完成基本要求的基礎(chǔ)上,實現(xiàn)if語句和布爾表達(dá)式的翻譯。if語句的文法和翻譯方案參見課本。 變量說明語句的文法及相應(yīng)的語義子程序:.att表示數(shù)據(jù)類型屬性,fill函數(shù)表示將單詞id及其類別屬性填寫符號表。 (0)S→D; {acc} (1)D→int id { fill(id,int);D.att=int; } (2)D→float id {fill(id,float); D.att=float; } (3)D→D(1),id { fill(id,D(1).att);D.att=D(1).att; } 算數(shù)表達(dá)式和賦值語句的文法及相應(yīng)的語義子程序。 (1)A→id=E; {p=lookup(id.name); emit(E.PALCE, , p);} (2)E→E(1)+T {E.PALCE=newtemp(); emit(+,E(1).PALCE,T.PALCE,E.PALCE)} (3)E→T {E.PALCE=T.PALCE;} (4)T→T(1)*F {T.PALCE=newtemp(); emit(+,T(1).PALCE,F(xiàn).PALCE,T.PALCE)} (5)T→F {T.PALCE=F.PALCE;} (6)F→(E) { F.PALCE=E.PALCE;} (7)F→id {P=LOOKUP(id.name) F.PALCE=P;} (8)F→num { P=LOOKUP(num.value) F.PALCE=P;} 構(gòu)造其用于SLR(1)分析的識別活前綴的DFA以及action表和goto表。然后編程實現(xiàn)。(關(guān)于詞法分析部分只需識別出與此文法相關(guān)的單詞即可(+,*,(,),id,=))。 4.程序設(shè)計提示: (1)分析棧設(shè)計時可以用一個棧完成,也可以設(shè)計三個棧:一個符號棧,一個狀態(tài)棧,一個語義棧,則歸約時,則需要在符號棧中退掉n個符號,在狀態(tài)棧中退掉n個符號(n為產(chǎn)生式符號個數(shù)),,語義棧中退掉n個符號對應(yīng)的語義; (2)終結(jié)符表和非終結(jié)符表的組織和預(yù)測分析程序中相同(將符號對應(yīng)到一個數(shù)字,表示在分析表中對應(yīng)的下標(biāo))。 (3)action表中的錯誤處理:簡化的錯誤處理:當(dāng)查找action表出現(xiàn)空白時,則當(dāng)前單詞無法移進(jìn)和規(guī)約,可簡單的認(rèn)為當(dāng)前單詞為多余的單詞,則拋棄當(dāng)前單詞,讀下一單詞繼續(xù)分析。 5.測試數(shù)據(jù): 作為程序測試數(shù)據(jù),以賦值語句area=r*r+r$作為測試輸入(源程序)。程序要求輸出二元式序列、符號表、語法分析過程、四元式序列。 假設(shè)AA.TXT的文件內(nèi)容如下: int area,r; r=1; area=r*r+r; 程序運(yùn)行情況如下: 請輸入源文件名稱:E:\AA.TXT<回車> 語法分析過程如下: 狀態(tài)棧 符號棧 語義棧 動作說明 源程序?qū)?yīng)的二元式如下: (int,-) (id,0) (,,-) (id,1) (;,-) (id,1) (=,) (num,0) (id,0) (=,) (id,1) (*,) (id,1) (+,) (id,1) (;,-) 符號表如下: Name type value addr 0 area int 1 r int 數(shù)字表如下 源程序?qū)?yīng)的四元式序列如下: (=,1, , r) (*,r,r,T1) (+,T1,r,T2) (=,T2,,area) 分析過程完成。 6.程序擴(kuò)展要求 有能力的同學(xué)可將編譯程序擴(kuò)展布爾表達(dá)式、if語句的分析和四元式生成,布爾表達(dá)式和if語句的翻譯參見教材。


  本文關(guān)鍵詞:編譯程序構(gòu)造,由筆耕文化傳播整理發(fā)布。



本文編號:53302

資料下載
論文發(fā)表

本文鏈接:http://www.wukwdryxk.cn/kejilunwen/jisuanjikexuelunwen/53302.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶d6fe7***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com
国产视频一区二区| 极品人妻淫玩弄人妻av| 国产一区久久久| 欧美成人一区二区三区在线视频| 丁香五月综合久久激情| 天天综合亚洲色在线精品| 亚洲线精品一区二区三区四区| 人妻少妇HEYZO无码专区| 老熟女一区二区免费| 每天更新的免费av片在线观看| mature性sexxx熟妇| 人妖视频| www.东京热| av天堂中文| 四虎最新地址| 嫩草| 午夜精品久久久| 人人妻人人爽人人添夜夜视频av | 久久精品亚洲中文字幕无码网站| 老司机精品视频一区二区| 动漫精品啪啪一区二区三区| 亚洲午夜不卡无码影院| 欧美国产伦久久久久久久| 人妻中文字幕无码系列| 啊轻点灬大ji巴太粗太长了日本| 久久精品免费一区二区三区| 亚洲熟妇成人精品一区| 成人精品一区二区三区在线观看 | 亚洲国产一区二区三区亚瑟| 亚洲在av人极品无码| 99久久精品无码一区二区毛片| 亚洲人成无码网站| XXXXX做受大片在线观看免费| 色婷婷欧美在线播放内射| 看真人视频A级毛片| 国产在线观看黄av免费| 一本色道久久88加勒比—综| 小辣椒福利视频导航| 天天做天天爱夜夜夜爽毛片| 大香伊蕉在人线国产av| 色婷婷狠狠久久综合五月|