1樓:志當存高遠
這個問題中的一個產生式e』→+te』| e,應該是e->+te』 |ε這樣吧!否則不可能獲得如此結果.
關於求follow集合,龍書中說得很清楚,依據三條規則即可:
1、任何follow(s)都包含輸入終止符號,其中s是開始符號.
適用該條,因此follow(e』)中包含終止符號#.
2、如果存在產生式,a->αbβ,則將first(β)中除ε以外的符號都放入follow(b)中.
該條不適用,因為在上述所有產生式中不存在形如e『->αe』β這樣的產生式.
3、如果存在產生式,a->αb,或a->αbβ,其中first(β)中包含ε,則將follow(a)中的所有符號都放入follow(b)中.
適用該條,因為存在這樣的產生式e->+te』,使得follow(e』)=follow(e)成立.而follow(e)適用上述第二條,根據產生式f→(e)可求得為follow(e)=.
綜上,follow(e』)=follow(e)=.
2樓:傑仔系邊度
因為f->(e),e->te』 所以有f->(te』)這樣知道原理了嗎,你沒有理解清楚follow集,之前人的回答是錯的
編譯原理中的follow集怎麼計算
3樓:匿名使用者
follow(a)
指的是所有包含a的句型中,直接跟在a後面的終結符或#的集合。
舉例:對於文法g(s)
1.s->l=r
2.s->r
3.l->*r
4.l->i
5.r->l
要求l的follow集,則首先要找出所有包含l的句型根據產生式1可知有句型l=r
將產生式5帶入1或2中有l=l或l
則l的follow集就是上邊所有包含l句型中l後邊緊跟著的終結符,如果l在句型的結尾則#包含在其follow集中
所有follow(l)=
希望我的回答能幫到樓主~
4樓:sss6木
follow集看產生式右邊,緊跟它其後的字元。
①緊跟的為終結符(小寫),直接將其加入follow集。
②緊跟的為非終結符(大寫),看此非終結符的first集,把first集加入到follow集,注意若first集包含ε(空符號串),則去掉ε,並且把產生式左邊非終結符follow集也加入到follow集。
③後無,則產生式左邊非終結符follow集加進去。
注:follow集無ε。開始符(一般s)follow集記得一定要加上#。
over,其實first集更麻煩。
編譯原理 設文法g[s] 求答案! 10
5樓:李唐泥鰍短**
·消除左遞迴 s→aas'|∧aas'
s'→vaas'|ε
對a的產生式提取左因子 a→∧aa' a'→a|ε· 非終結符合 first follows a ∧ #s』 v ε #a ∧ #a『 ∧ #select(s→aas')=a
select(s→∧aas')=∧
select(s'→vaas')=v
select(s'→ε)=#
select(a→∧aa')=∧
select(a'→a)=∧
select(a'→ε)=#
符合ll(1)文法
a ∧ v #
s s→aas' s→∧aas'
s' s'→vaas' s'→ε
a a→∧aa'
a' a'→a a'→ε
編譯原理中,形式語言裡怎麼區分2型文法與3型文法
可以叫我表哥 二型文法如下 s ac s sc a ab a aab 三型文法如下 s as a ba b cb b c a bb a 2型文法是上下文無關文法,表現在產生式上就是產生式的左部只有一個非終結符 3型文法從廣義上講包括左線形文法 右線形文法和正規文法 b 左線形文法產生式的右部要麼沒有...
請問在3g與4g網路中如何手動切換
中國聯通 4g向下相容,系統自動根據您個人實際使用的網路環境,在4g 3g 2g網路之間切換使用,當然,前提是您手機開啟了4g蜂窩資料,您可進入手機設定裡面操作。 如果是安卓機的話在撥號鍵盤裡輸入 4636 會彈出測試 在裡面選擇手機資訊 再往下有個首選網路型別 能設定2g 3g 4g 深圳市智炫顯...
在量子力學中,如何用實驗證明「測不準」原理
手機使用者 測不準就是對實驗結果的描述而已,不是證明出來的。你說的那個方法,只是一部分人對實驗結果的理解,因為它最簡單最接近巨集觀粒子的運動狀況,所以接受的人多。測不準和波粒二象性練習不大,但都是對未觀測的粒子狀態的一種描述,波粒二象性也是對實驗結果的描述,不是證明出來的,無法證明。測不準和波粒二象...