• /  24
  • 下載費用: 19.9積分  

編譯原理 重點內容 期末總復習.ppt

'編譯原理 重點內容 期末總復習.ppt'
☆期末總復習☆1 考試課 總成績=平時成績(40%)+期末成績(60%)2 考試范圍 第一章到第八章的內容3 題型和分值 單選(10)+判斷(10)+填空(20)+簡答題(30)+計算題(30) ☆期末總復習☆第一章 編譯概述1 編譯程序的功能。 2 編譯程序各階段的主要任務。 3 解釋程序與編譯翻譯的區別。 解釋:不產生目標程序的翻譯程序。 編譯:會產生目標程序的翻譯程序。 ☆期末總復習☆第二章 文法和語言的基本知識1 文法的形式定義。 G=(VN,VT,P,S)2 文法與語言之間的相互轉換 例:寫出文法對應的語言。 G[S]:S→AB A→aA|a B→bB|b解:L={aibj | i,j≥1} ☆期末總復習☆3 句型的短語、直接短語和句柄 (1)句柄-一個句型最左邊的直接短語。 (2)會寫出句型的短語、直接短語、句柄以及素短語。 例: G[E]: E→E+T |E-T |T T→T*F | T/F |F F→ (E) | i 寫出文法句型 T+T*F 的短語、直接短語、 句柄和素短語。該句型的語法樹為:EE+TT*FT則短語有:T, T*F, T+T*F直接短語:T, T*F 句柄:T 素短語:T*F ☆期末總復習☆4 文法的分類 (1)四類:0型、1型、2型、3型。 其中,2型文法也稱為上下文無關文法; 3型文法也稱為正規文法。 (2)會判斷給出一個文法是那一型的文法。 ☆期末總復習☆第三章 詞法分析1 正規式與正規文法之間的轉換 例:有正規文法G[Z]: Z→0A A→0A|0B B→1A|ε 給出該文法所 對應的正規式。解:相應的正規方程組為:Z=0A (1)A=0A+0B (2)B=1A+ ε (3)將(3)代入(2),可得A=0A+01A+0 (4)由(4)得:A=(0+01)A+0 (5)由(5)得:A=(0+01)*0 (6)將(6)代入(1),得Z=0(0+01)*0即所求正規式為0(0|01)*0。 ☆期末總復習☆2 正規式與自動機之間的轉換。例: ①試構造正規式a*b*的NFA。 ☆期末總復習☆ ①試構造正規式a*b*的NFA,并確定化,用狀態圖表示。 解 (1)NFA: 01234abεεεε3 文法去掉ε規則的等價變換。例:將下述文法去掉ε規則。 G[S]:S →aA A→aA | dA |ε解:該文法去掉ε規則,改寫為:G[S]: S → aA | a A →aA | dA | a | d ☆期末總復習☆第四章 語法分析1 語法分析方法的分類。2 預測分析法(1)預測分析法屬于自上而下的語法分析方法。(2)非LL(1)文法的改造-消除左遞歸和提公共左因子。 例: 消除文法的直接左遞歸,并提取公共左因子。 S→SaP|Sf|P P→QbP|Q Q→cSd|e解:改寫后的文法為: S→PS’ S’→aPS’|fS’|ε P →QP’ P’→bP| ε Q →cSd|e ☆期末總復習☆(3) 構造文法的預測分析表。 例:文法G[S]: S→(L)|aS|a L→L,S|S (a) 消除文法的左遞歸,并提取公共左因子; (b) 計算改寫后文法每個非終結符的FIRST集和FOLLOW集; (c) 構造它的預測分析表。 ☆期末總復習☆解: (a) 改寫后的文法為: S→(L)|aS’ S’→S|ε L →SL’ L’→,SL’|ε (b) FIRSTFOLLOW S S’ L L’ {(, a} {(,a,ε} {(, a} {, , ε} {$,)} {$,,,)} {)} {)} ☆期末總復習☆ (c) 預測分析表為: a , ( ) $ S S’ L L’S→aS’S’→SL→SL’S’→εL’→,SL’S→(L)S’→SL→SL’S’→εL’→εS’→ε ☆期末總復習☆3 算符優先分析法(1)算符優先分析法,當棧頂出現最左素短語時進行歸約。(2)會寫出句型的素短語和最左素短語。 ☆期末總復習☆第五章 語義分析和中間代碼生成1 綜合屬性和繼承屬性的區別。 綜合屬性用于自下而上的傳遞信息; 繼承屬性用于自上而下的傳遞信息。2 會寫出表達式的逆波蘭式。 例:寫出算術表達式 a↑c *-(b+d)的逆波蘭式。逆波蘭式為:ac↑[email protected]* ☆期末總復習☆3 會構造標注語義值的語法樹。 例:屬性文法如下: (1)S’→E {print E.val} (2)E →E(1)+E(2) {E.val=E(1).val+ E(2).val} (3)E →E(1)*E(2) {E.val=E(1).val* E(2).val} (4)E →(E(1)) {E.val=E(1).val} (5)E →n {E.val=n.LEXVAL} 如采用LR分析法,給出表達式2*(8+5*4)的語法樹并在各結點注明語義值VAL. ☆期末總復習☆ 解 語法樹如圖:54E.val=5E.val=4*E.val=208E.val=8+E.val=28()E.val=28E.val=22*E.val=56 ☆期末總復習☆4 三種基本句型翻譯成四元式。 例 ① while (a>b) do if c>d then Y=Y-1; 翻譯成四元式。(假設四元式序列由100開始)解 可得四元式為: (100) if a>b goto (102) (101) goto (107) (102) if c>d goto (104) (103) goto (100) (104) T1=Y-1 (105) Y=T1 (106) goto (100) (107) … ☆期末總復習☆4 三種基本句型翻譯成四元式。 例:②while AF) then S=C-D; 翻譯成四元式。(假設四元式序列由100開始)解 可得四元式為: (100) if AF goto (106) (105) goto (100) (106) T1=C-D (107) S=T1 (108) goto (100) (109) … ☆期末總復習☆第六章 符號表的組織與管理1 符號表的建立和查找方式 線性表:順序查找 二叉樹:二分查找或折半查找 散列表:雜湊法。 ☆期末總復習☆第七章 代碼優化1 程序優化的原則 等價原則 有效原則 合算原則2 基本塊的特點。 程序中一段順序執行的語句序列。3 局部優化中使用的優化技術。 刪除公共子表達式 合并已知量 刪除無用賦值 ☆期末總復習☆4 會構造程序段的程序流圖。②例:把以下程序段劃分為基本塊,并作出其程序流圖。 int E,F S=10 if E>F goto L1 S=S+C haltL1: C=E*F if C>100 goto L2 haltL2: S=S-1 goto L1 int E,F S=10 if E>F goto L1 S=S+C halt L1:C=E*F if C>100 goto L2 haltL2:S=S-1 goto L1解 程序流圖為: ☆期末總復習☆第八章 運行時的存儲組織與管理1 動態存儲分配策略 (1)運行階段才能進行數據存儲單元分配。 (2)分類 棧式存儲分配 堆式存儲分配預祝大家期末考試順利!
關 鍵 詞:
期末 編譯 復習 原理 重點 內容
 天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:編譯原理 重點內容 期末總復習.ppt
鏈接地址: http://www.476824.live/p-51497026.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服點擊這里,給天天文庫發消息,QQ:1290478887 - 聯系我們

本站為“文檔C2C交易模式”,即用戶上傳的文檔直接賣給(下載)用戶,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有【成交的100%(原創)】。本站是網絡服務平臺方,若您的權利被侵害,侵權客服QQ:1290478887 歡迎舉報。

[email protected] 2017-2027 http://www.476824.live 網站版權所有

粵ICP備19057495號 

收起
展開
球探网即时蓝球比分 福建快三形态走势一定牛 米牛网配资 中国福利彩票好彩1 福彩3d试机号新口诀 股票配资来大圣配资 山西快乐10分三码预测 股票直播平台排行 浙江省2004体彩6+1 广西快3注册 股票交流群微信