1、
g[s]:s -> aaas | ε考慮邊界,ε\varepsilon
ε
\varepsilon
ε為空(即n=0時) 2、
2m-1:b的個數為奇數個
g[s]:s -> abb -> b | bbb 使以乙個b開頭,兩個b(bb)結尾,保證b的個數為奇數個a -> aa | a
b -> b | bbb
3、左右ab對稱
g[s]:s -> asb | ab考慮邊界情況,即n=1
4、
g[s]:s -> asc | aac5、a -> b | ba
等價於anbnbmcm
g[s]:s -> ab6、a -> aab | ab
b -> bbc | bc
g[s]:s -> abi=0,沒有ca -> aab | ab
b -> cb | ε
\varepsilon
ε
7、偶數集合,不以無效0開頭
g[s]:s -> ±( 2 | 4 | 6 | 8 | abc) | 0a -> 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
c -> 0 | 2 | 4 | 6 | 8
b -> ab | 0b | ε
\varepsilon
ε
編譯原理與編譯構造 由語言構造文法2
基本思想 產生的兩邊應該具有相同的特性 例1 l 解 s aa b b 這一步是說,句子可以以a b 開頭,之後加乙個a b 數量不等的式子 其中,s a b a a 1 b b a b 1 a aaa 這一步比較神,但是我的理解是這樣的,aa 這個表示式,滿足 a b 因此直接是在 a 之前加了乙...
0型文法 1型文法 2型文法 3型文法
引用 s aas a是什麼型的,為什麼 s asb ab是什麼型的,為什麼 s sas b是什麼型的,為什麼 答 三種文法都屬於上下文無關文法。四種文法的判斷非常簡單,說到到,四種文法就是規定產生式的左和右邊的字元的組成規則不同而已,其它的不能理解就不要去想了,你只要知道判斷的時候就是以產生式的左邊...
0型文法 1型文法 2型文法 3型文法
引用 s aas a是什麼型的,為什麼 s asb ab是什麼型的,為什麼 s sas b是什麼型的,為什麼 答 三種文法都屬於上下文無關文法。四種文法的判斷非常簡單,說到到,四種文法就是規定產生式的左和右邊的字元的組成規則不同而已,其它的不能理解就不要去想了,你只要知道判斷的時候就是以產生式的左邊...