資料介紹
編譯原理實驗指導
《編譯原理》實驗教學大綱
一、課程名稱:編譯原理(Principle of Compiler)
二、課程編碼:4111204
三、課程總學時:? 72? 學時[理論: 54 學時;實驗: 18 學時
四、課程總學分: 4 學分
五、適用專業(yè)和開課學期:計算機科學與技術(shù)專業(yè),第7學期。
六、實驗的目的與任務:
編譯原理是計算機類專業(yè)特別是計算機軟件專業(yè)的一門重要專業(yè)課。設(shè)置該課程的目的在于系統(tǒng)地向?qū)W生講述編譯系統(tǒng)的結(jié)構(gòu)、工作流程及編譯程序各組成部分的設(shè)計原理和實現(xiàn)技術(shù),使學生通過學習既掌握編譯理論和方法方面的基本知識,也具有設(shè)計、實現(xiàn)、分析和維護編譯程序等方面的初步能力。編譯原理是一門理論性和實踐性都比較強的課程。進行上機實驗的目的是使學生通過完成上機實驗題目加深對課堂教學內(nèi)容的理解。同時培養(yǎng)學生實際動手能力。
七、主要儀器設(shè)備及臺(套)數(shù):一人一機。
八、主要實驗教材(指導書)及參考用書:
[1]《編譯原理》,呂映芝、張素琴、蔣維杜,清華大學出版社,1998年出版
[2] 《編譯程序設(shè)計原理》,杜書敏、王永寧,北京大學出版社,1988年出版
[3] 《計算機編譯原理》,張幸兒,科學出版社,1999年出版
[4]《編譯程序原理與技術(shù)》,李贛生等,清華大學出版社,1997年10月出版。
九、成績考核方式及評分標準:
由指導教師結(jié)合實驗報告質(zhì)量及學習態(tài)度等采用5級記分制評分。實驗成績占期終綜合測評成績的30%。
十、實驗開出率:100%
十一、實驗項目與要求:
序
號?實驗項目名稱?學時?項目要求?項目性質(zhì)?項目類別?每臺(套)儀器人數(shù)?目的要求
1?詞法分析?4?必修?設(shè)計?操作?微機,每人一臺。?1.確定編譯中使用的表格、詞法分析器的輸出形式、標識符與關(guān)鍵字的區(qū)分方法。
2.把詞法分析器設(shè)計成一個獨立的過程。
2?語法分析?10?必修?設(shè)計?操作?微機,每人一臺。?1.語法分析和語義分析合在一起實現(xiàn)。
2.把語法分析器設(shè)計成一個獨立的過程。
3?語義分析?4?必修?設(shè)計?模擬?微機,每人一臺。?1.確定中間代碼的形式,使中間代碼不依賴于任何具體的計算機,對中間代碼實現(xiàn)四元式的轉(zhuǎn)換。
2.把該轉(zhuǎn)換器設(shè)計成一個獨立的程序。
實驗一:詞法分析
一、實驗目的
給出PL/0文法規(guī)范,要求編寫PL/0語言的詞法分析程序。
二、實驗準備
微機CPU主頻1.3G以上,128M內(nèi)存,安裝好C語言,PASCAL語言,或C++。
三、實驗時間
??? 6學時
四、實驗內(nèi)容
已給PL/0語言文法,輸出單詞(關(guān)鍵字、專用符號以及其它標記)。
二.實驗內(nèi)容
1、格式
輸入:源程序文件。 輸出:關(guān)鍵字、專用符號以及其它標記。
2、編譯對象:
包含如下基本內(nèi)容 1) 變量說其它標記: 明語句 2) 賦值語句 3) 條件轉(zhuǎn)移語句 4) 表達式(算術(shù)表達式和邏輯表達式) 5) 循環(huán)語句 6) 過程調(diào)用語句
3、 實現(xiàn)過程
本次實驗所用的語言為標準C,以下同。本功能實現(xiàn)的主函數(shù)為getToken函數(shù)。通過從文件中讀取字符到緩沖區(qū)中并由C語言字符的狀態(tài)轉(zhuǎn)換圖流程判斷返回一個字符(Token)。分析出來的Token主要分為關(guān)鍵字,專用符號,標記符號。
本實驗實現(xiàn)的C語言的基本詞法如下:
關(guān)鍵字: els if int return void while
專用符號: + - * / < >= == != = ; , ( ) [ ] { } /* */
其它標記: id num
ID = letter letter*
NUM = digit digit*
letter = a|b|...|z|A|B|...|Z|
ditit= 0|1|...|9
通過在C語言中定義一個枚舉類型來識別這些符號:
PL/0語言的EBNF表示
<常量定義>::=<標識符>=<無符號整數(shù)>;
<標識符>::=<字母>={<字母>|<數(shù)字>};
<加法運算符>::=+|-
<乘法運算符>::=*|/
<關(guān)系運算符>::==|#|<|<=|>|>=
<字母>::=a|b|…|X|Y|Z
<數(shù)字>::=0|1|2|…|8|9
4、主體結(jié)構(gòu)的說明
在這里說明部分告訴我們使用的LETTER,DIGIT, IDENT(標識符,通常定義為字母開頭的字母數(shù)字串)和STR(字符串常量,通常定義為雙引號括起來的一串字符)是什么意思.這部分也可以包含一些初始化代碼.例如用#include來使用標準的頭文件和前向說明(forward ,references).這些代碼應該再標記"%{"和"%}"之間;規(guī)則部分>可以包括任何你想用來分析的代碼;我們這里包括了忽略所有注釋中字符的功能,傳送ID名稱和字符串常量內(nèi)容到主調(diào)函數(shù)和main函數(shù)的功能.
5、實現(xiàn)原理
程序中先判斷這個句語句中每個單元為關(guān)鍵字、常數(shù)、運算符、界符,對與不同的單詞符號給出不同編碼形式的編碼,用以區(qū)分之。
三:設(shè)計過程
1. 關(guān)鍵字:void,main,if,then,break,int,Char,float,include,for,while,printfscanf??? 并為小寫。
2."+”;”-”;”*”;”/”;”:=“;”:”;”<“;”<=“;”>“;”>=“;”<>“;”=“;”(“;”)”;”;”;”#”為運算符。
3. 其他標記 如字符串,表示以字母開頭的標識符。
4. 空格符跳過。
5. 各符號對應種別碼
關(guān)鍵字分別對應1-13
運算符分別對應401-418,501-513。
字符串對應100
常量對應200
結(jié)束符#
- 《繼電保護》實驗指導書for電氣工程專業(yè)
- Proteus 8086/8051實驗指導書電子版 0次下載
- 《信號與系統(tǒng)》實驗指導書下載 61次下載
- 《智能儀器設(shè)計實驗指導書》電子書籍.pdf 0次下載
- Tiva實驗指導書 13次下載
- 通訊原理實驗指導書 5次下載
- 《Quick51實驗指導書》 20次下載
- EDA實驗指導書(2015) 0次下載
- 匯編實驗指導書-基本實驗 0次下載
- 數(shù)字信號處理實驗指導書詳解 0次下載
- MATLAB基礎(chǔ)實驗指導書 0次下載
- 網(wǎng)絡(luò)基礎(chǔ)實驗指導書
- 復合材料實驗指導書 0次下載
- 課程實驗指導書格式,具體項目指導書格式與基本內(nèi)容要求 0次下載
- 電工基礎(chǔ)實驗指導書 0次下載
- 焊接強度測試儀推刀和拉針規(guī)格及操作指導書 970次閱讀
- 50MW及以上、環(huán)氧粉云母絕緣的三相同步發(fā)電機和同步調(diào)相機常規(guī)試驗 564次閱讀
- SA常見KPI優(yōu)化指導書 5715次閱讀
- VCS編譯選項:-y及+libext+ 1.2w次閱讀
- 氣動調(diào)節(jié)閥的日常維護及故障排除 4291次閱讀
- 交叉編譯器安裝教程 3559次閱讀
- CubeMX版本編譯代碼的教程 4314次閱讀
- 利用AT89S52單片機和現(xiàn)場總線技術(shù)實現(xiàn)電工實驗指導系統(tǒng)的設(shè)計 1811次閱讀
- 海天雄電子:生物醫(yī)療電子實驗分析 2495次閱讀
- 講述增量編譯方法,提高Vivado編譯效率 1w次閱讀
- 西門子系列PLC工業(yè)控制如何學習詳細實驗案例詳細教材介紹 4674次閱讀
- 整車線束KSK模塊化生產(chǎn)模式進行解析 1.3w次閱讀
- verilog編譯指令_verilog編譯器指示語句(數(shù)字IC) 1.5w次閱讀
- lcr測試儀使用方法圖解_lcr測試儀使用指導書 4.6w次閱讀
- 誰能縮短大容量FPGA的編譯時間?增量式編譯QIC! 5048次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論