自頂向下的語法分析技術

2022-12-13 07:48:05 字數 1599 閱讀 1776

實驗目的

2. 掌握ll(1)分析方法的判別

3. 掌握非終結符的first集合和follow的計算

4. 掌握將非ll(1)文法轉化為ll(1)文法

5. 掌握**分析表的構造,並能根據**分析表分析句子是否符合語法要求

實驗內容

1. 下面文法中,哪些是ll(1)文法?說明理由。

1)s->abc

a->a |ε

b->b |ε

答:判斷文法是否是ll(1)文法,要根據ll(1)文法的條件逐一檢查;

首先要確定文法不含左遞迴;隨後計算文法的各非終結符(x)的首符集first(x)和follow(x)。

對於 g 的每個非終結符 a 的任何兩個不同的候選式 a→α|β

1) first(α)∩first(β)= φ

2) 如果β=>*ε,則 first(α)∩follow(a)= φ

2』)如果α=>*ε,則 first(β)∩follow(a)= φ

——文法g是 ll(1) 的充要條件

該文法不含左遞迴,計算每個非終結符的first集合和follow集合如下:

first(s)=

first(a)=

first(b)=

follow(s)=

follow(a)=

follow(b)=

可見該文法滿足ll(1)文法的3個條件,是ll(1)文法。

2)s->ab

a->a |b |ε

b->b |ε

答:該文法不含左遞迴,計算每個非終結符的first集合和follow集合如下:

first(s)=

first(a)=

first(b)=

follow(s)=

follow(a)=

follow(b)=

考慮a->a |b |ε,因為:

first(b)=∩ follow(a) =≠ф

所以該文法不是ll(1)文法。

2. 文法g(s):

s→(l)|a s|a

l→l,s|s

(1) 消除左遞迴和回溯;

(2) 計算每個非終結符的first和follow;

(3) 構造**分析表

(4) 請根據**分析表分析句子(aa,a),並寫出分析過程

答:s→(l)|as』      s』→s|ε

l→sll』→,sl』|ε

first(s)=

first(s』)=

first(l)=

first(l

follow(s)=

follow(s

follow(l)=

follow(l』)=

設a→ α是文法g的任一條規則,

設select(a→α) = first(α) ,若α不能推出ε

或 = follow (a) ,若α可以推出ε

select(s→(l))= (

select(s→as』)=a

select(s』→s)= (,a

select(s

select(l→sl』)= (,a

select(l』→,sl』)= ,

select(l』→ε)= )

介紹自鎖式液壓千斤頂的特點

天津巨集森特介紹自鎖式液壓千斤頂的特點如下 1 自鎖式液壓千斤頂螺母自饋使負載更安全 2 特別複合材料塗層使耐腐蝕能力更強,而且使操作摩擦力更小 3 自鎖式液壓千斤頂單作用,負載回饋 4 活塞桿頂端帶環狀球面墊片,允許自由偏載8 左右,使千斤頂的受力始終保持垂直,壽命更長 5 自鎖式液壓千斤頂可根據...

2023年雙語自查自評匯報材料

我校為不斷加強 雙語 教學工作,以此次試評估為契機,對照義務教育階段學校 雙語 教學評估指標體系 試行 對學校的 雙語 教學工作認真進行了自查 評議,現將自查自評情況匯報如下 一 雙語 教學條件 總得分 20分 1 教學裝置 學校為每一位漢語教師配備了一台語音 裝置,雙語班學生實行了每週一次的在計算...

價值創造導向下的公司治理與社會責任

作者 鄭曉青 會計之友 2013年第04期 摘要 文章從企業的財務目標入手,分析了企業的終極目標是價值創造,公司治理作為一種制度安排必須服從於這一目標,而企業社會責任在價值創造過程是一種非常重要的價值創造要素,二者具有嚴密的邏輯關係,因而在價值創造導向下,公司治理內生嵌入企業社會責任,以更好實現企業...