控制代碼:任意句型的最左簡單短語,成為控制代碼,乙個句型只有乙個控制代碼
句型:終端節點的組成的串
層次結構如下
短語 } }
子樹:由該樹的某個節點,連同向下生長出的部分組成
子樹與短語的聯絡:若句型中某些符號按照從左到右的順序組成某棵子樹的末端節點,那麼有這些末端節點組成的字串,既是相對於樹根的短語
如下一棵樹
1.短語
我們從深度為1開始,找出父節點為s,他的短語為子節點(無法產生葉子結點的節點)的集合 即是
從深度為2的節點開始找,節點為a,b,s,它的短語為a1,b1b2,a3a2
從深度為3的節點開始找,節點為s,b,b,a,它們的的短語分別為 空,b1,b2,a3
類推.......
直到葉子結點結束
綜上可知短語有
2.簡單短語
就是找可以一次性推導出來的葉子結點,有圖可知a->a1,b->b1,b->b2,a->b3
所以簡單短語為 a1,b1,b2,a3
3.控制代碼
局並為最左直接短語,右圖可知控制代碼為a1
語法樹,短語,直接短語,控制代碼
1.已知文法 s a t t t,s s 分析句型 t,a 求全部的短語 直接短語和控制代碼。語法書為 由語法樹可知全部短語 t,a t,a a a a 直接短語 a 控制代碼 2.構造上下文無關文法,描述語言 anbn n 0 ambn m n 0 ab n n 0 ambn m,n 1 s as...
編譯原理 短語 直接短語 控制代碼 素短語
如果 and a 則稱 是句型 的相對於變數a的短語 如果 and a 則稱 是句型 的相對於變數a的直接 簡單 短語 最左直接短語叫做控制代碼 其實最簡單的判斷方法直接畫出語法樹了。文法s l as a l l,s s 分析 s,a 1.先畫出語法樹 2.判斷短語 乙個句型的語法樹中任一子樹葉節點...
編譯原理 短語 直接短語 控制代碼 素短語
如果 and a 則稱 是句型 的相對於變數a的短語 如果 and a 則稱 是句型 的相對於變數a的直接 簡單 短語 最左直接短語叫做控制代碼 其實最簡單的判斷方法直接畫出語法樹了。文法s l as a l l,s s 分析 s,a 1.先畫出語法樹 2.判斷短語 乙個句型的語法樹中任一子樹葉節點...