編譯原理上機實驗試題
一、實驗目的
通過本實驗使學生進一步熟悉和掌握程式語言的詞法分析程式的設計原理及相關的設計技術,如何針對確定的有限狀態自動機進行程式設計序;熟悉和掌握程式語言的語法分析程式的設計原理、熟悉和掌握算符優先分析方法。
二、實驗要求
本實驗要求:①要求能熟練使用程式語言程式設計;②在上機之前要有詳細的設計報告(預習報告);③要編寫出完成相應任務的程式並在計算機上準確地執行;④實驗結束後要寫出上機實驗報告。
三、實驗題目
針對下面文法g(s):
s→ v = e
e→e+e│e-e│e*e│e/e│(e)│ v │ i
其中,v為識別符號,i為整型或實型數。要求完成
① 使用自動機技術實現乙個詞法分析程式;
② 使用算符優先分析方法實現其語法分析程式,在語法分析過程中同時完成常量表示式的計算。
實驗一詞法分析程式
1、題目(見「編譯原理---實驗題目.doc,「實驗題目」中的第一項)
2、目的與要求(見「編譯原理---實驗題目.doc」)
3、設計原理:
(1)單詞分類:識別符號,保留字,常數,運算子,分隔符等等
(2)單詞型別編碼
(3)自動機
4、程式流程框圖
5、函式原型(引數,返回值)
6、關鍵**(可列印,只列印關鍵**)
7、除錯:
(1)除錯過程中遇到的錯誤,如何改進的;
(2)需要準備測試用例(至少3個,包含輸入和輸出)——(可列印)
8、思考:
(1)你編寫的程式有哪些要求是沒有完成的,你覺得該採用什麼方法去完成;
(2)或者是你覺得程式有哪些地方可以進一步完善,簡述你的完善方案。
實驗二語法分析程式
1、題目(見「編譯原理---實驗題目.doc,「實驗題目」中的第二項)
2、目的與要求(見「編譯原理---實驗題目.doc」)
3、設計原理:構造出演算法優先關係表
4、程式流程框圖
5、函式原型(引數,返回值)
6、關鍵**(可列印,只列印關鍵**)
7、除錯:
(1)除錯過程中遇到的錯誤,如何改進的;
(2)需要準備測試用例(至少3個,包含輸入和輸出)——(可列印)
8、思考:
(1)你編寫的程式有哪些要求是沒有完成的,你覺得該採用什麼方法去完成;
(2)或者是你覺得程式有哪些地方可以進一步完善,簡述你的完善方案。
編譯原理實驗報告
通過編寫和除錯乙個詞法分析程式,掌握在對程式語言的源程式進行掃瞄的過程中,將字元形式的源程式流轉化為乙個由各類單詞符號組成的流的詞法分析方法。語言中具有的單詞包括五個關鍵字begin end if then else 識別符號 整型常數 六種關係運算子 乙個賦值符和四個算術運算子。參考實現方法簡述如...
編譯原理實驗報告
軟體學院驗證性實驗報告 專業 軟體開發 net方向 年級 班級 2010級 2012 2013學年第一學期 1 實驗目的及實驗專案簡介 運用編譯程式,完成下述源程式的編譯,了解源程式的預處理功能 即通過編譯程式,將高階語言程式 源程式 翻譯成低階語言程式 目標程式 源程式的輸入 設源程式如下所示,其...
編譯原理實驗報告
姓名 專業 班級 學號 指導老師 一 實驗內容 求解乙個文法的first follow select集合並判斷是不是ll 1 文法。一 實驗目的 通過實驗熟練掌握first follow select集合的求解演算法,加深對理論知識的理解。二 實驗原理 集的求解 1 若x vt,則first x 2...