




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第第 6-7 章章 語法制導(dǎo)翻譯語法制導(dǎo)翻譯中間代碼中間代碼 一、一、重點(diǎn)與難點(diǎn)重點(diǎn)與難點(diǎn) 重點(diǎn):語法制導(dǎo)翻譯的基本思想,屬性文法,翻譯模式,說明語句的翻譯方案。 三地址碼,各種語句的目標(biāo)代碼結(jié)構(gòu)、屬性文法與翻譯模式。 難點(diǎn):屬性的意義,對綜合屬性,繼承屬性,固有屬性的理解,屬性計(jì)算,怎么通過屬性來 表達(dá)翻譯。布爾表達(dá)式的翻譯,對各種語句的目標(biāo)代碼結(jié)構(gòu)、屬性文法與翻譯模式的理解。 二、基本要求二、基本要求 掌握語法制導(dǎo)翻譯的基本思想, 屬性文法, 綜合屬性, 繼承屬性, 固有屬性, 屬性計(jì)算, S_屬性文法,L_屬性文法,說明語句的翻譯方案,翻譯模式、屬性文法的實(shí)現(xiàn) 掌握中間語言與語義分析的基
2、本概念;熟練掌握語法(結(jié)構(gòu))樹、三地址代碼、賦值與 控制語句的翻譯;理解組合數(shù)據(jù)說明的翻譯、過程調(diào)用翻譯、說明語句的翻譯。 三、例題與習(xí)題三、例題與習(xí)題 1、翻譯算術(shù)表達(dá)式 (a+b)*(c+d) +(a+b+c) 為三地址代碼 解:寫出三地址代碼為: t1 := a + b t2 := - t1 t3 := c + d t4 := t2 * t3 t5 := a + b t6 := t5 + c t7: = t4 + t6 2、對下面的文法,設(shè)計(jì)語法制導(dǎo)定義獲得類型信息,要求只利用綜合屬性。 DL,id | L LT id Tint | real 解: 3、請?jiān)O(shè)計(jì)語法制導(dǎo)的定義,將后綴表達(dá)式
3、翻譯成中綴表達(dá)式。注意,不允許出 現(xiàn)冗余括號,后綴表達(dá)式的文法如下: EEE+ EEE* Eid 解: 4、 下面文法產(chǎn)生的表達(dá)式是對整型和實(shí)型常數(shù)應(yīng)用算符+形成的。 當(dāng)兩個(gè)整數(shù)相 加時(shí),結(jié)果為整數(shù),否則為實(shí)數(shù)。 E TR R + TR| Tnum.num | num a) 給出語法制導(dǎo)定義確定每個(gè)子表達(dá)式的類型。 b) 把表達(dá)式翻譯成前綴形式,并且決定類型。試用一元運(yùn)算符inttoreal 把整型 值轉(zhuǎn)換為相等的實(shí)型值,以使得前綴表達(dá)式中兩個(gè)運(yùn)算對象是同類型的。 解:a)設(shè)type 是綜合屬性,代表各非終結(jié)符的“類型”屬性 設(shè)in 是繼承屬性,翻譯模式如表所示。 b)設(shè)屬性s 和i 用于傳遞
4、屬性type,屬性t 和j 用于傳遞屬性val。 5、令S.val 為下面的文法由S 生成的二進(jìn)制數(shù)的值(如,對于輸入101.101,S.val =5.625); SL.L | L LLB | B B0 | 1 按照語法制導(dǎo)翻譯的方法,對每個(gè)產(chǎn)生式給出相應(yīng)的語義規(guī)則。 解: SS print(S.val); SL1.L2 S.val:=L1.val+L2.val/2L2.length ; S L S.val:=L.val; LL1B L.val:=L1.val*2+B.val; L.length:=L1.length+1; LB L.val:=B.val; L.length:=1; B0 B.
5、val:=0; B1 B.val:=1; 6、在一個(gè)移入歸約的分析中采用以下的語法制導(dǎo)的翻譯模式,在按一產(chǎn)生式 歸約時(shí),立即執(zhí)行括號中的動(dòng)作。 AaB print “0”; Ac print “1”; BAb print “2” 當(dāng)分析器的輸入為 aacbb 時(shí),打印的字符串是什么? 解:分析器的分析過程如下圖所示: 由于分析器采用移入歸約的方式進(jìn)行分析,符號串a(chǎn)acbb 的分析過程將如 圖中所標(biāo)的歸約順序進(jìn)行,而在按一產(chǎn)生式歸約時(shí),立即執(zhí)行括號中的動(dòng)作,所 以分析器打印的字符為 12020。 7、文法如下: PD DD;D|id:T|proc id;D;S (1)設(shè)計(jì)語法制導(dǎo)定義,打印該程序
6、一共聲明的 id 個(gè)數(shù) (2)設(shè)計(jì)翻譯模式,打印 P 所生成的程序中每個(gè) id 的嵌套深度 解: (1) 語法制導(dǎo)定義:引入屬性 i,記錄 id 的個(gè)數(shù) PD printf(D.i); DD1;D2 D.i=D1.i+D2.i; Did:T D.i=1; Dproc id;D1;S D.i=D1.i+1 (2)翻譯模式:引入屬性 level 和 name PD.level=1;D DD1.level=D.level; D1; D2.level=D.level;D2 Did:T printf(,D.lev); Dproc id; D1.level=D.level+1; D1;S 8、請將下列語句 while (AD) then X:=Y+Z 翻譯成四元式 解:翻譯的三地址碼序列: L1: if AB goto L1 goto L4 L2: if CD goto L3 goto L1 L3:T=Y+Z X=T goto L1 L4: 9、將下列程序的執(zhí)行語句翻譯成三地址代碼(設(shè) S.next 為 L0): if( i j ) s = 10 * s e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四年級美術(shù)下冊師資培訓(xùn)計(jì)劃
- 新北師大版三年級數(shù)學(xué)下冊錯(cuò)題復(fù)習(xí)計(jì)劃
- 中學(xué)生健康體育鍛煉一小時(shí)計(jì)劃
- 金蝶KIS專業(yè)版客戶應(yīng)收賬款流程他
- 二年級數(shù)學(xué)下冊教學(xué)評價(jià)計(jì)劃
- 語文教師師徒結(jié)對網(wǎng)絡(luò)學(xué)習(xí)計(jì)劃
- 幼兒園消防安全教育課程計(jì)劃
- 六年級上冊英語培優(yōu)輔差口語提升計(jì)劃
- xx煤礦智能化建設(shè)智能維護(hù)計(jì)劃
- 六年級勞動(dòng)與技術(shù)實(shí)驗(yàn)計(jì)劃
- 職業(yè)行為習(xí)慣課件
- 2024年深圳市中考生物試卷真題(含答案解析)
- 新疆維吾爾自治區(qū)2024年普通高校招生單列類(選考外語)本科二批次投檔情況 (理工)
- 綠化養(yǎng)護(hù)服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- DB4451-T 1-2021《地理標(biāo)志產(chǎn)品+鳳凰單叢(樅)茶》-(高清現(xiàn)行)
- 消防管理檢查評分表
- 無人機(jī)駕駛員證照考試培訓(xùn)題庫與答案
- JJG 1149-2022 電動(dòng)汽車非車載充電機(jī)(試行)
- 2022年(詳細(xì)版)高中數(shù)學(xué)學(xué)業(yè)水平考試知識點(diǎn)
- 播音主持重音的教學(xué)課件
- 蛋糕制作工藝課件(PPT81張)
評論
0/150
提交評論