A. 編譯原理中的文法設計這題該怎麼做,能給一下思路和答案嗎
文法的設計需要考慮文法的類型和表達能力。一種可能的思路是:
首先,確定值為非負的5的倍數或3的李臘消倍數的數字串有什麼特徵,例如結尾只能是0或5或3或6或9,不能有前導0等。
然後,選擇合適的文法類型來描述這些特徵,例如正規文法、上下文無關文法等。
最後,根據文法類哪知型的規則,給出局寬產生式和開始符號。
一種可能的答案是:
使用正規文法來描述這個語言。
產生式如下:
開始符號為S。
B. 求《編譯原理》第三版(西北工業大學出版社)課後題答案
答案我已發到你的郵箱
節選:
第二章
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串(含空串)
C. 編譯原理 設有文法G(S) 這題怎麼做求答案
G[S] S→%A A→mAn A→% 1)准確指出文法屬於chomsy哪一型文法 2)首先要做這題你要知道判別文法類型包括四個層次: 0-型文法(無限制文法或
D. 編譯原理題,求大家幫忙看一下如何解答
一、選擇題
A B
D
C
A B
C
D
二、判斷題
錯
錯
錯
對
E. 編譯原理中,在文法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)={#,)}.
F. 編譯原理求解答案
編譯原理是計算機軟體專業中的非常重要一門課程。例如:如何把我們編寫的高級語言源程序,翻譯成機器可執行的目標程序,這個就需要用到編譯原理技術。
但是學習編譯原理這門課程時,是需要頭腦中對編譯原理課程中涉及到的所有概念必須是相當清楚的,別人才能夠對你的這些問題進行准確的回答。而不是看到這些似曾親切的內容就敢於回答你的內容的。
故我個人的建議還是:你可以向專門講授編譯原理的老師請教你的問題。
以上就是我很多年前學習編譯原理的親身體會。
G. 幫我做下兩道簡單的《編譯原理》文法題目,在線等答案O(∩_∩)O謝謝!