【實驗目的】
(1)掌握自上而下語法分析的要求與特點。
(2)掌握遞迴下降語法分析的基本原理和方法。
(3)掌握相應資料結構的設計方法。
【實驗內容】
用遞迴下降法編寫乙個語法分析程式,使之與詞法分析器結合,能夠根據語言的上下文無關文法,識別輸入的單詞序列是否文法的句子。
【實驗要求】
對下列文法,用遞迴下降分析法對任意輸入的符號串進行分析:
e->tg g->+tg|-tg g->ε
t->fs s->*fs|/fs s->ε
f->(e) f->i
**精髓:
根據上述分析法進行建立
void e();
1void e()void
e()2
void t();
1void t()void
t()2
void g();
1void g()void
g()2
11else
if (str[lookahead] == '-'
)1219 cout << "
g->ε\t\t";
20fen();
21sheng();
22 leaf = 1;23
24 }
void f();
1void f()void
f()2
1011
else
if (str[lookahead] == '('
)1221else
2227
28 }
void s();
void s()
執行結果:
實驗三 遞迴下降分析程式實驗
實驗三 遞迴下降分析程式實驗 專業 軟體工程 姓名 麥振澎 學號 201506110162 一 實驗目的 通過設計,編制,除錯乙個遞迴下降語法分析程式,實現對詞法分析程式所提供的單詞序列進行語法檢查和結構的分析。二 實驗內容和要求 輸入 源程式字串 輸出 正確或者錯誤 三 實驗方法 步驟及結果測試 ...
實驗三 遞迴下降分析程式
實驗三遞迴下降分析程式實驗 專業 商軟2班 姓名 鄺啟彬 學號 201506110165 一 實驗目的 編制乙個遞迴下降分析程式。二 實驗內容和要求 輸入 正規式 輸出 判斷該正規式是否正確。三 實驗方法 步驟及結果測試 1.源程式名 遞迴下降分析程式.c 可執行程式名 遞迴下降分析程式.exe 2...
遞迴下降語法分析實驗
通過設計 開發乙個高階語言的遞迴下降語法分析程式,實現 對詞法分析程式所提供的單詞序列進行語法檢查和結構分析,加 深對相關課堂教學內容的理解,提高語法分析方法的實踐能力。1 理解語法分析在編譯程式中的作用,以及它與詞法分析程式的 關係 2 掌握遞迴下降語法分析方法的主要原理 3 理解遞迴下降分析法對...