㈠ 求《編譯原理》第三版(西北工業大學出版社)課後題答案
答案我已發到你的郵箱
節選:
第二章
2.3
敘述由下列正規式描述的語言
a)
0(0|1)*0
b)
((ε|0)1*)*
c)
(0|1)*0(0|1)(0|1)
d)
0*10*10*10*
e)
(00|11)*((01|10)(00|11)*(01|10)(00|11)*)*
Answer:
a)
以0開始和結尾,而且長度大於等於2的0、1串
b)
所有0,1串(含空串)
c)
倒數第三位是0的0、1串
d)
僅含3個1的0、1串
e)
偶數個0和偶數個1的0、1串(含空串)
㈡ 編譯原理中的文法設計這題該怎麼做,能給一下思路和答案嗎
文法的設計需要考慮文法的類型和表達能力。一種可能的思路是:
首先,確定值為非負的5的倍數或3的李臘消倍數的數字串有什麼特徵,例如結尾只能是0或5或3或6或9,不能有前導0等。
然後,選擇合適的文法類型來描述這些特徵,例如正規文法、上下文無關文法等。
最後,根據文法類哪知型的規則,給出局寬產生式和開始符號。
一種可能的答案是:
使用正規文法來描述這個語言。
產生式如下:
開始符號為S。
㈢ 編譯原理 設文法G[S] 求答案!
·消除左遞歸 S→aAS'|∧aAS'
S'→VaAS'|ε
對A的產生式提取左因子 A→∧aA' A'→A|ε
· 非終結符合 First Follow
S 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'→ε
㈣ 編譯原理中,在文法G中,E'的follow集為什麼會含有右括弧,題和答案如圖,求解答
這個問題中的一個產生式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)={#,)}.
㈤ 幫我做下兩道簡單的《編譯原理》文法題目,在線等答案O(∩_∩)O謝謝!
㈥ 編譯原理題,求大家幫忙看一下如何解答
一、選擇題
A B
D
C
A B
C
D
二、判斷題
錯
錯
錯
對
㈦ 跪求 東南大學 編譯原理及編譯程序構造 課後習題答案
設有文法(E):
E→E+T|T
T→T*F|F
F→(E)|i
1) 該文法含有左遞歸嗎?若有,消除它。
2) 改造後的文法是LL(1)文法嗎?若是,給出其預測分析表。
6、 有文法G(S):
1. S→a
2. S→(T)
3. T→T,y
4. T→y
1)構造該文法的算符優先矩陣
2)找出句型(T,y)中的所有短語、直接短語、句柄,LPP
7、寫出下面語句產生的四元式序列
if A>B and C>D then X=x+1 else y=y-1有左遞歸, E-->TE' E'-->+TE'|ε
T-->FT' T'-->*FT'|ε
F-->(E)|i
後面的太多,沒法寫。自己看書去吧!照著例題做就行,依葫蘆畫瓢,很容易的。