編譯原理中的follow集怎麼計算

2021-03-13 20:37:09 字數 659 閱讀 4872

1樓:匿名使用者

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)=

希望我的回答能幫到樓主~

2樓:sss6木

follow集看產生式右邊,緊跟它其後的字元。

①緊跟的為終結符(小寫),直接將其加入follow集。

②緊跟的為非終結符(大寫),看此非終結符的first集,把first集加入到follow集,注意若first集包含ε(空符號串),則去掉ε,並且把產生式左邊非終結符follow集也加入到follow集。

③後無,則產生式左邊非終結符follow集加進去。

注:follow集無ε。開始符(一般s)follow集記得一定要加上#。

over,其實first集更麻煩。

編譯原理中v是什麼意思,編譯原理中V是什麼意思

v是一個符號集合,假設v指的是三個符號a,b,c的集合,記為 v v 讀作 v的閉包 它的數學定義是專v自身的任意多屬次自身連線 乘法 運算的積,也是一個集合。也就是說,用v中的任意符號進行任意多次 包括0次 連線,得到的符號串,都是v 這個集合中的元素。0次連線的結果是不含任何符號的空串,記為 1...

visual c編譯後的exe檔案是怎麼執行的

是架構.c 是語言,framework是環境 的程式呼叫的類庫並不是windows系統所帶的,而是基於.framework 所以,沒有.framework,程式不能執行 上面是基礎 下面回答你問題 1.c 程式設計後的exe 需要在 安裝.framework 的機器上 才能執行!framework ...

matlab中離散楔的原理,matlab中離散小波的原理

我感覺matlab離散的原理好像和書中的那些原理沒半毛錢關係?笑翻了,哇咔咔,你才發現啊?這是小波參考書的通病,也是容易讓人抓狂的難點,就是小波理論的示意性理解與實際實現演算法總是被混為一談,實際這兩者有時真的沒半毛錢關係都沒有,完全是兩個領域的問題。在matlab中cwt理論的理解是用你上面的第一...