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

正文內(nèi)容

第七章中間代碼生成序71中間語(yǔ)言72說(shuō)明語(yǔ)句73賦值語(yǔ)-在線瀏覽

2024-12-14 13:09本頁(yè)面
  

【正文】 產(chǎn)生式 語(yǔ)義規(guī)則 S→if E then S1 :=newlabel。 := :=|| gen(?:?)|| 10 產(chǎn)生式 語(yǔ)義規(guī)則 S→if E then S1 else S2 :=newlabel。 :=。 :=|| gen(?:?)|| gen(?goto?)|| gen(?:?)|| (接上頁(yè)) 11 產(chǎn)生式 語(yǔ)義規(guī)則 S→while E do S1 :=newlabel。 := 。 :=gen(?:?‖ ‖ gen(?:?) ‖ ‖ gen(?goto?) (接上頁(yè)) 12 控制流語(yǔ)句中的布爾表達(dá)式的翻譯 基本思想 : 假定 E 形如 a< d,則將生成如下的 E的代碼: if a< b goto 表 語(yǔ)法制導(dǎo)定義 goto 產(chǎn)生式 語(yǔ)義規(guī)則 E→E1 or E2 :=。 :=。 := 。 :=。 := 。 := 。 如果沒(méi)有這樣的值存在,則讓“缺席值” 與表達(dá)式匹配; 3.執(zhí)行在( 2)中尋找到的值相聯(lián)系的語(yǔ) 句(某個(gè) statement)。 valueE1,valueE2,… , value n1: 表達(dá)式可能取的 值。用來(lái)在 expression的值不等 于任何 value i時(shí)來(lái)匹配 expression。 一遍掃描 : ? 先產(chǎn)生暫時(shí)沒(méi)有填寫(xiě)目標(biāo)標(biāo)號(hào)的轉(zhuǎn)移指令。 21 使用回填翻譯布爾表達(dá)式 布爾表達(dá)式文法 : ( 1) E→E1 or M E2 ( 2) |E1 and M E2 ( 3) |not E1 ( 4) |(E1) ( 5) |id1 relop id2 ( 6) |true ( 7) |false ( 8) M→ε 插入非終結(jié)符號(hào) M是為了引入一個(gè)語(yǔ)義動(dòng)作,以便在適當(dāng)?shù)臅r(shí)候獲得即將產(chǎn)生的下一個(gè)四元式的索引,或說(shuō)四元式的標(biāo)號(hào) 22 翻譯模式用到如下三個(gè)函數(shù): 1. makelist(i): 創(chuàng)建一個(gè)僅包含 i的新表, i 是四元式數(shù)組的一個(gè)索引(下標(biāo)),或說(shuō) i是四元式代碼序列的一個(gè)標(biāo)號(hào)。 3. backpatch( p, i): 把 i作為目標(biāo)標(biāo)號(hào)回 填到 p所指向的表中的每一個(gè)轉(zhuǎn)移指令中 去。 :=merge(,)。 :=。} 24 E?not E1 { :=。 :=} E ?id1 relop id2 {:= makelist(nextquad)。 emit(180。 180。)。goto—180。 } 25 E ?true {:= makelist(nextquad)。goto—180。 } E ?false {:= makelist(nextquad)。goto—180。 } M ? ? {:=nextquad } 26 例 重新考慮表達(dá)式 a< b or c< d and e< f 一棵作了注釋的分析樹(shù)如下圖所示 ={100,104} ={103,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1