freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

sun編譯原理第5章語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成(第19-21講)(編輯修改稿)

2025-06-16 23:39 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 actor (val = 31) ) term (val = 31*42=1302) factor (val = 42) exp (val = 343=31) ( number (val = 42) the parse tree (343)*42 exp (val = 1302) * exp (val = 34) term (val = 34) factor (val = 34) term (val = 3) factor (val =3) number (val = 3) number (val = 34) 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 23 ■ 語(yǔ)法制導(dǎo)翻譯舉例 有一屬性文法為: ( 1) P ? bQb {print:”1”} ( 2) Q ? cR {print:”2”} ( 3) Q ? a {print:”3”} ( 4) R ? Qad {print:”4”} 輸入串為 bccaadadb,且采用自底向上語(yǔ)法分析方法時(shí),則輸出序列是? 試給出下列文法的適合自下而上翻譯的語(yǔ)義動(dòng)作,使得當(dāng)輸入串是 aacbb時(shí),其輸出串是 12020。 ( 1) A ? aB { } ( 2) A ? c { } ( 3) B ? Ab { } 342421 print:”1” print:”2” print:”0” 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 24 詞法規(guī)則的描述工具: 語(yǔ)法規(guī)則的描述工具: 語(yǔ)義規(guī)則的常用描述工具: 屬性文法 正規(guī)文法或正規(guī)式 上下文無(wú)關(guān)文法 ■ 小結(jié) 屬性文法是在上下文無(wú)關(guān)文法的基礎(chǔ)上,允許每個(gè)文法符號(hào) X(終結(jié)符或非終結(jié)符 )根據(jù)處理的需要,定義與 X相關(guān)聯(lián)的屬性。 一般地,將屬性文法寫成表格形式,每個(gè)文法規(guī)則用屬性等式的集合或相應(yīng)規(guī)則的語(yǔ)義規(guī)則列出。 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 25 例: 簡(jiǎn)單表達(dá)式文法 : E ? E + E | E – E | E * E | (E) | number 語(yǔ)法規(guī)則 語(yǔ)義規(guī)則 E1?E2+E3 =+ E1?E2E3 = E1?E2*E3 =* E1?(E2) = E?number = 該文法對(duì)應(yīng)的屬性文法為: 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 26 ■ 小結(jié) 屬性分為兩類: 1. 合成屬性(或稱綜合屬性) 2. 繼承屬性 目前常用過(guò)的語(yǔ)義分析方法 ——語(yǔ)法制導(dǎo)翻譯法:在語(yǔ)法分析過(guò)程中,隨著分析的逐步進(jìn)展,根據(jù)相應(yīng)文法的每一規(guī)則所對(duì)應(yīng)的語(yǔ)義子程序進(jìn)行翻譯的方法。 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 27 ■ 語(yǔ)法制導(dǎo)翻譯舉例 有一屬性文法為: ( 1) P ? bQb {print:”1”} ( 2) Q ? cR {print:”2”} ( 3) Q ? a {print:”3”} ( 4) R ? Qad {print:”4”} 輸入串為 bab,且采用自底向上語(yǔ)法分析方法時(shí),則輸出序列是? 31 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 28 例: 利用下列屬性文法對(duì) (3+6)*9 進(jìn)行語(yǔ)義分析。 語(yǔ)法規(guī)則 語(yǔ)義規(guī)則 E1?E2+E3 =+ E1?E2E3 = E1?E2*E3 =* E1?(E2) = E?number = number?0 =0 ………… ………… number?9 =9 ■ 語(yǔ)法制導(dǎo)翻譯舉例 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 29 ■ 綜合練習(xí) 給出文法 G[S]: S ? SaA|A A ? AbB|B B ? cSd|e ( 1)試證實(shí) AacAd是文法 G[S]的一個(gè)句型; ( 2)請(qǐng)寫出該句型的所有短語(yǔ)、直接短語(yǔ)以及句柄; ( 3)為文法 G[S]的相應(yīng)產(chǎn)生式寫出語(yǔ)義動(dòng)作,使句型 AacAd經(jīng)該翻譯方案后,輸出為 11435 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 30 中間語(yǔ)言 所謂中間代碼形式是指用來(lái)描述源程序并與之等效的一種編碼方式,可根據(jù)具體情況將它設(shè)計(jì)成各種形式。 一般來(lái)說(shuō),對(duì)于一個(gè)多遍掃描的編譯程序,越到后面的階段,所產(chǎn)生的中間代碼越接近于機(jī)器代碼。 常用的中間代碼有逆波蘭式表示(后綴式)、三元式、樹(shù)形(抽象的語(yǔ)法樹(shù))、四元式、三地址碼表示等。 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 31 ■ 逆波蘭式 逆波蘭表示法 是把運(yùn)算量(操作數(shù))寫在前面,把運(yùn)算符寫在后面,又稱為 后綴表示法 。 特征 :操作符在前,操作數(shù)緊隨其后,無(wú)需用括號(hào)限制運(yùn)算的優(yōu)先級(jí)和結(jié)合性,且求表達(dá)式值較中綴表達(dá)式方便。 例 :將 ((a+b)*(ac)d)*(x+y)翻譯成逆波蘭表示,并求出當(dāng) a=3,b=7,c=1,d=2,x=4,y=6時(shí)該表達(dá)式的值。 程序語(yǔ)句也可用逆波蘭式表示。 練習(xí):求 (b+c)*e+(b+c)/f的逆波蘭式? 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 32 三元式由 3個(gè)域和一個(gè)序號(hào)組成: ( i) (op, arg1, arg2) 其中 op為運(yùn)算符, arg1,arg2是 2個(gè)運(yùn)算對(duì)象。 例: 算術(shù)表達(dá)式的三地址碼 x=y op z 的三元式為: (1) (op, y, z) (2) (=, x, (1)) ■ 三元式 三元式的運(yùn)算結(jié)果由每一個(gè)三元式前的序號(hào)指示。 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 33 例:賦值語(yǔ)句 a=(c+d)*(c+d)相應(yīng)的三元式代碼為 (1) (+, c, d) (2) (+, c, d) (3) (*, (1), (2)) (3) (=, a, (3)) ■ 三元式舉例 三元式出現(xiàn)的先后順序和表達(dá)式各部分的計(jì)值順序是一致的。 第 5章 語(yǔ)法制導(dǎo)翻譯技術(shù)和中間代碼生成 2021/6/15 信息學(xué)院 孫麗云 34 在三元式代碼表的基礎(chǔ)上另設(shè)一張表,該表按運(yùn)算的次序列出相應(yīng)三元式在表中的位置,這張表稱為間接碼表。三元式表只記錄不同的三元式語(yǔ)句,間接碼表表示由這些語(yǔ)句組成的運(yùn)算次序。 ■ 間接三元式 例:賦值語(yǔ)句 a=(c+d)*(c+d) 三元式 代碼為 相應(yīng)的 間接三元式 代碼由三元式表和間接碼表組成: 三元式表: (1) (+, c, d) (2) (*, (1), (1)) (3) (=, a, (2)) 間接碼表: (1)(1)(2)(3) (1) (+, c, d) (2) (+, c, d) (3) (*, (1), (
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1