版權(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):屬性的意義,對(duì)綜合屬性,繼承屬性,固有屬性的理解,屬性計(jì)算,怎么通過屬性來 表達(dá)翻譯。布爾表達(dá)式的翻譯,對(duì)各種語句的目標(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、對(duì)下面的文法,設(shè)計(jì)語法制導(dǎo)定義獲得類型信息,要求只利用綜合屬性。 DL,id | L LT id Tint | real 解: 3、請?jiān)O(shè)計(jì)語法制導(dǎo)的定義,將后綴表達(dá)式
3、翻譯成中綴表達(dá)式。注意,不允許出 現(xiàn)冗余括號(hào),后綴表達(dá)式的文法如下: EEE+ EEE* Eid 解: 4、 下面文法產(chǎn)生的表達(dá)式是對(duì)整型和實(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)算對(duì)象是同類型的。 解:a)設(shè)type 是綜合屬性,代表各非終結(jié)符的“類型”屬性 設(shè)in 是繼承屬性,翻譯模式如表所示。 b)設(shè)屬性s 和i 用于傳遞
4、屬性type,屬性t 和j 用于傳遞屬性val。 5、令S.val 為下面的文法由S 生成的二進(jìn)制數(shù)的值(如,對(duì)于輸入101.101,S.val =5.625); SL.L | L LLB | B B0 | 1 按照語法制導(dǎo)翻譯的方法,對(duì)每個(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í)行括號(hào)中的動(dòng)作。 AaB print “0”; Ac print “1”; BAb print “2” 當(dāng)分析器的輸入為 aacbb 時(shí),打印的字符串是什么? 解:分析器的分析過程如下圖所示: 由于分析器采用移入歸約的方式進(jìn)行分析,符號(hào)串a(chǎn)acbb 的分析過程將如 圖中所標(biāo)的歸約順序進(jìn)行,而在按一產(chǎn)生式歸約時(shí),立即執(zhí)行括號(hào)中的動(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 某著名企業(yè)全面診斷咨詢項(xiàng)目文件規(guī)范0613
- 某著名企業(yè)績效管理咨詢中期匯報(bào)0718
- 《GBT 9738-2008化學(xué)試劑 水不溶物測定通 用方法》專題研究報(bào)告
- 《GBT 21458-2008流動(dòng)式起重機(jī) 額定起重量圖表》專題研究報(bào)告
- 《GBT 14270-2008毛絨纖維類型含量試驗(yàn)方法》專題研究報(bào)告
- 道路養(yǎng)護(hù)員實(shí)操培訓(xùn)課件
- 2026年廣東省惠州市高職單招數(shù)學(xué)考試題庫(含答案)
- 《美國胸外科協(xié)會(huì)磨玻璃結(jié)節(jié)管理專家共識(shí)2023》解讀
- 車險(xiǎn)續(xù)保知識(shí)
- 內(nèi)蒙古對(duì)口招生語文模擬試題(一)帶答案
- 急性酒精中毒急救護(hù)理2026
- 2021-2022學(xué)年天津市濱海新區(qū)九年級(jí)上學(xué)期物理期末試題及答案
- 江蘇省蘇州市、南京市九校2025-2026學(xué)年高三上學(xué)期一輪復(fù)習(xí)學(xué)情聯(lián)合調(diào)研數(shù)學(xué)試題(解析版)
- 2026年中國醫(yī)學(xué)科學(xué)院醫(yī)學(xué)實(shí)驗(yàn)動(dòng)物研究所第三批公開招聘工作人員備考題庫及答案詳解一套
- 2025年幼兒園教師業(yè)務(wù)考試試題及答案
- 國家開放大學(xué)《Python語言基礎(chǔ)》形考任務(wù)4答案
- (自2026年1月1日起施行)《增值稅法實(shí)施條例》重點(diǎn)解讀
- 2026春小學(xué)科學(xué)教科版(2024)三年級(jí)下冊《4.幼蠶在生長》教學(xué)設(shè)計(jì)
- 管道安裝協(xié)議2025年
- 2025寧夏賀蘭工業(yè)園區(qū)管委會(huì)招聘40人筆試參考題庫及答案解析
- 2026河南省氣象部門招聘應(yīng)屆高校畢業(yè)生14人(第2號(hào))參考題庫附答案
評(píng)論
0/150
提交評(píng)論