電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>試題試卷>教學(xué)大綱>編譯原理實驗指導(dǎo)書

編譯原理實驗指導(dǎo)書

2009-03-23 | rar | 333 | 次下載 | 10積分

資料介紹

編譯原理實驗指導(dǎo)
《編譯原理》實驗教學(xué)大綱
一、課程名稱:編譯原理(Principle of Compiler)
二、課程編碼:4111204
三、課程總學(xué)時:? 72? 學(xué)時[理論: 54 學(xué)時;實驗: 18 學(xué)時
四、課程總學(xué)分: 4 學(xué)分
五、適用專業(yè)和開課學(xué)期:計算機(jī)科學(xué)與技術(shù)專業(yè),第7學(xué)期。
六、實驗的目的與任務(wù):
編譯原理是計算機(jī)類專業(yè)特別是計算機(jī)軟件專業(yè)的一門重要專業(yè)課。設(shè)置該課程的目的在于系統(tǒng)地向?qū)W生講述編譯系統(tǒng)的結(jié)構(gòu)、工作流程及編譯程序各組成部分的設(shè)計原理和實現(xiàn)技術(shù),使學(xué)生通過學(xué)習(xí)既掌握編譯理論和方法方面的基本知識,也具有設(shè)計、實現(xiàn)、分析和維護(hù)編譯程序等方面的初步能力。編譯原理是一門理論性和實踐性都比較強(qiáng)的課程。進(jìn)行上機(jī)實驗的目的是使學(xué)生通過完成上機(jī)實驗題目加深對課堂教學(xué)內(nèi)容的理解。同時培養(yǎng)學(xué)生實際動手能力。
七、主要儀器設(shè)備及臺(套)數(shù):一人一機(jī)。
八、主要實驗教材(指導(dǎo)書)及參考用書:
[1]《編譯原理》,呂映芝、張素琴、蔣維杜,清華大學(xué)出版社,1998年出版
[2] 《編譯程序設(shè)計原理》,杜書敏、王永寧,北京大學(xué)出版社,1988年出版
[3] 《計算機(jī)編譯原理》,張幸兒,科學(xué)出版社,1999年出版
[4]《編譯程序原理與技術(shù)》,李贛生等,清華大學(xué)出版社,1997年10月出版。
九、成績考核方式及評分標(biāo)準(zhǔn):
由指導(dǎo)教師結(jié)合實驗報告質(zhì)量及學(xué)習(xí)態(tài)度等采用5級記分制評分。實驗成績占期終綜合測評成績的30%。
十、實驗開出率:100%
十一、實驗項目與要求:

號?實驗項目名稱?學(xué)時?項目要求?項目性質(zhì)?項目類別?每臺(套)儀器人數(shù)?目的要求
1?詞法分析?4?必修?設(shè)計?操作?微機(jī),每人一臺。?1.確定編譯中使用的表格、詞法分析器的輸出形式、標(biāo)識符與關(guān)鍵字的區(qū)分方法。
2.把詞法分析器設(shè)計成一個獨(dú)立的過程。
2?語法分析?10?必修?設(shè)計?操作?微機(jī),每人一臺。?1.語法分析和語義分析合在一起實現(xiàn)。
2.把語法分析器設(shè)計成一個獨(dú)立的過程。
3?語義分析?4?必修?設(shè)計?模擬?微機(jī),每人一臺。?1.確定中間代碼的形式,使中間代碼不依賴于任何具體的計算機(jī),對中間代碼實現(xiàn)四元式的轉(zhuǎn)換。
2.把該轉(zhuǎn)換器設(shè)計成一個獨(dú)立的程序。


實驗一:詞法分析
一、實驗?zāi)康?BR>給出PL/0文法規(guī)范,要求編寫PL/0語言的詞法分析程序。
二、實驗準(zhǔn)備
微機(jī)CPU主頻1.3G以上,128M內(nèi)存,安裝好C語言,PASCAL語言,或C++。
三、實驗時間
??? 6學(xué)時
四、實驗內(nèi)容
已給PL/0語言文法,輸出單詞(關(guān)鍵字、專用符號以及其它標(biāo)記)。
二.實驗內(nèi)容
1、格式
輸入:源程序文件。 輸出:關(guān)鍵字、專用符號以及其它標(biāo)記。
2、編譯對象:
包含如下基本內(nèi)容 1) 變量說其它標(biāo)記: 明語句 2) 賦值語句 3) 條件轉(zhuǎn)移語句 4) 表達(dá)式(算術(shù)表達(dá)式和邏輯表達(dá)式) 5) 循環(huán)語句 6) 過程調(diào)用語句
3、 實現(xiàn)過程
本次實驗所用的語言為標(biāo)準(zhǔn)C,以下同。本功能實現(xiàn)的主函數(shù)為getToken函數(shù)。通過從文件中讀取字符到緩沖區(qū)中并由C語言字符的狀態(tài)轉(zhuǎn)換圖流程判斷返回一個字符(Token)。分析出來的Token主要分為關(guān)鍵字,專用符號,標(biāo)記符號。
本實驗實現(xiàn)的C語言的基本詞法如下:
關(guān)鍵字: els if int return void while
專用符號: + - * / < >= == != = ; , ( ) [ ] { } /* */
其它標(biāo)記: id num
ID = letter letter*
NUM = digit digit*
letter = a|b|...|z|A|B|...|Z|
ditit= 0|1|...|9
通過在C語言中定義一個枚舉類型來識別這些符號:
PL/0語言的EBNF表示
<常量定義>::=<標(biāo)識符>=<無符號整數(shù)>;
<標(biāo)識符>::=<字母>={<字母>|<數(shù)字>};
<加法運(yùn)算符>::=+|-
<乘法運(yùn)算符>::=*|/
<關(guān)系運(yùn)算符>::==|#|<|<=|>|>=
<字母>::=a|b|…|X|Y|Z
<數(shù)字>::=0|1|2|…|8|9
4、主體結(jié)構(gòu)的說明
在這里說明部分告訴我們使用的LETTER,DIGIT, IDENT(標(biāo)識符,通常定義為字母開頭的字母數(shù)字串)和STR(字符串常量,通常定義為雙引號括起來的一串字符)是什么意思.這部分也可以包含一些初始化代碼.例如用#include來使用標(biāo)準(zhǔn)的頭文件和前向說明(forward ,references).這些代碼應(yīng)該再標(biāo)記"%{"和"%}"之間;規(guī)則部分>可以包括任何你想用來分析的代碼;我們這里包括了忽略所有注釋中字符的功能,傳送ID名稱和字符串常量內(nèi)容到主調(diào)函數(shù)和main函數(shù)的功能.
5、實現(xiàn)原理
程序中先判斷這個句語句中每個單元為關(guān)鍵字、常數(shù)、運(yùn)算符、界符,對與不同的單詞符號給出不同編碼形式的編碼,用以區(qū)分之。
三:設(shè)計過程
1. 關(guān)鍵字:void,main,if,then,break,int,Char,float,include,for,while,printfscanf??? 并為小寫。
2."+”;”-”;”*”;”/”;”:=“;”:”;”<“;”<=“;”>“;”>=“;”<>“;”=“;”(“;”)”;”;”;”#”為運(yùn)算符。
3. 其他標(biāo)記 如字符串,表示以字母開頭的標(biāo)識符。
4. 空格符跳過。
5. 各符號對應(yīng)種別碼
關(guān)鍵字分別對應(yīng)1-13
運(yùn)算符分別對應(yīng)401-418,501-513。
字符串對應(yīng)100
常量對應(yīng)200
結(jié)束符#

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1491次下載  |  免費(fèi)
  3. 2單片機(jī)典型實例介紹
  4. 18.19 MB  |  93次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  11次下載  |  免費(fèi)
  11. 6100W短波放大電路圖
  12. 0.05 MB  |  4次下載  |  3 積分
  13. 7基于AT89C2051/4051單片機(jī)編程器的實驗
  14. 0.11 MB  |  4次下載  |  免費(fèi)
  15. 8基于單片機(jī)的紅外風(fēng)扇遙控
  16. 0.23 MB  |  3次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)