當前位置:首頁 » 編程軟體 » 編譯原理第3版第二章答案

編譯原理第3版第二章答案

發布時間: 2024-12-09 01:58:52

A. 編譯原理,求文法的問題

l1:S->aS|bX
X->bX|cY
Y->cY|ε
l2:S->MbXcY
M->aM|ε
X->bX|ε
Y->cY|ε
例:bc,abc,abbc
l3:S->MX
M->aMb|ε
X->aXb|ε
例:ab,aabbab
l4:S->1S0|X|ε
X->0X1|ε
例:100110,10,1010

B. 編譯原理左遞歸消除

這些題很難啊!!!
都有間接左遞歸。要先變成直接左遞歸,然後消除掉。
--------------------
G3.1
S->SA|Ab|b|c
A->Bc|a
B->Sb|b
--------------------
間接左遞歸轉直接左遞歸
B代入A:A ->(Sb|b)c|a -> Sbc|bc|a
A代入S:S -> S(Sbc|bc|a)|(Sbc|bc|a)b|b|c -> SSbc|Sbc|Sa|Sbcb|bcb|ab|b|c
消除直接左遞歸
S->bcbS'|abS'|bS'|cS'
S'->SbcS'|bcS'|aS'|bcbS'|ε
S'還是有直接左遞歸,繼續消除
S'->bcS'T|aS'T|bcbS'T
T->bcS'T|ε
最後,這題答案就是S,S',T的產生式

--------------------
下面兩題更難了,上一題反復代入還能把其他非終結符消掉,下面兩個文法都是最後代入還剩下兩個非終結符反復迭代,佛了!
G3.2
E->ET+|T

T->TF*|F

F->E|i
--------------------
F代入T: T->T(E|i)*|(E|i)->TE*|Ti*|E|i
T代入E:

--------------------
G3.3
S->V_1

V_1->V_2|V_1 2 V_2

V_2->V_3|V_2 + V_3
V_3->V_1 * |(
這些字母我都不認識了,換一下
S->A|SiA
A->B|A+B
B->S*|(
--------------------
B代入A:A->(S*|()|A+(S*|()->S*|(|A+S*|A+(
A代入S:

--------------------

C. 編譯原理及編譯程序構造課後習題答案 薛聯鳳

您好,《普通高校計算機專業精品教材系列:編譯原理及編譯程序構造(第2版)》介紹編譯理論基礎及其實現方法,強調語言的形式化定義、編譯技術的各種概念及實現過程的具體方法。介紹過程以演算法為核心,力求簡單明了地反映編譯的基礎知識。從形式語言理論角度討論詞法分析和語法分析技術,為計算機軟體工作者開發大型軟體打下良好基礎。《普通高校計算機專業精品教材系列:編譯原理及編譯程序構造(第2版)》以理論聯系實際為宗旨,內容深入淺出,重點突出,並結合構造el語言的編譯程序介紹一種常用而又簡單的編譯方法。

D. 一道《編譯原理》求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)={#,)}。

E. 求《編譯原理》第三版(西北工業大學出版社)課後題答案

答案我已發到你的郵箱
節選:
第二章
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串(含空串)

F. 編譯原理中的文法設計這題該怎麼做,能給一下思路和答案嗎

文法的設計需要考慮文法的類型和表達能力。一種可能的思路是:

  • 首先,確定值為非負的5的倍數或3的李臘消倍數的數字串有什麼特徵,例如結尾只能是0或5或3或6或9,不能有前導0等。

  • 然後,選擇合適的文法類型來描述這些特徵,例如正規文法、上下文無關文法等。

  • 最後,根據文法類哪知型的規則,給出局寬產生式和開始符號。

  • 一種可能的答案是:

  • 使用正規文法來描述這個語言。

  • 產生式如下:

  • S -> 0 | 3 | 5 | 6 | 9

  • S -> A0 | A3 | A5 | A6 | A9

  • A -> S

  • A -> AA

  • 開始符號為S。

G. 編譯原理中語法分析的一道問題

LALR我做著做著覺得不對,但SLR還是沒問題的,這道題工程量非常龐大,想必以後也一定有人問,我就簡要的帶過吧,我歸納的解題步驟是:

  1. 構造LR(0)項目集規范族

  2. 求出FOLLOW集

  3. 根據規則圈出sj和rj對應的產生式

  4. 算出goto數

  5. 構造分析表

H. 幫我做下兩道簡單的《編譯原理》文法題目,在線等答案O(∩_∩)O謝謝!

熱點內容
網路編程論壇 發布:2024-12-29 09:57:04 瀏覽:730
服務密碼需要什麼證件 發布:2024-12-29 09:42:10 瀏覽:225
pc輔助存儲器構造 發布:2024-12-29 09:24:40 瀏覽:236
hadooplinux安裝 發布:2024-12-29 09:23:20 瀏覽:824
數控編程思維 發布:2024-12-29 09:21:45 瀏覽:306
php時間區 發布:2024-12-29 09:20:05 瀏覽:928
我的世界如何做出一個好的伺服器 發布:2024-12-29 09:18:45 瀏覽:943
哪裡買安卓二手機好 發布:2024-12-29 09:06:09 瀏覽:533
助威戰艦如何配置船長 發布:2024-12-29 09:05:37 瀏覽:736
如何觸發安卓小游戲 發布:2024-12-29 09:00:24 瀏覽:955