吉林大學(xué)計算機科學(xué)與技術(shù)學(xué)院報告_第1頁
已閱讀1頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、吉林大學(xué)計算機科學(xué)與技術(shù)學(xué)院實驗報告計算機基礎(chǔ)實驗教學(xué)中心編制學(xué)生姓名:學(xué)生姓名:劉曉偉(53090913)、王維國(53090914)、韓惠蕊(53090930)指導(dǎo)教師(簽字)指導(dǎo)教師(簽字)——————————————————————————————————————————★實驗課程名稱:實驗課程名稱:編譯原理課程設(shè)計★實驗項目:目:SNL語言編譯器的實現(xiàn)★實驗儀器:器:計算機編譯器VC6.0★實驗步驟、分析設(shè)計與結(jié)果:實驗步驟、

2、分析設(shè)計與結(jié)果:1、實驗步驟:實驗步驟:整個編譯器的實現(xiàn)如上圖所示。按照SNL編譯程序的模型,先進(jìn)行詞法分析,然后將詞法分析的輸出既TOKEN序列作為語法分析的輸入,然后根據(jù)語言的文法規(guī)則進(jìn)行語法分析處理,語法分析的輸出是無語法錯誤的語法成分,表示成語法樹的形式。為后面的語義分析和代碼生成做準(zhǔn)備。最后進(jìn)行語義分析。詞法分析作為獨立的一遍來完成語法分析直接利用詞法分析產(chǎn)生的token序列來進(jìn)行。二、分析設(shè)計:二、分析設(shè)計:在用面向過程實現(xiàn)

3、(C語言實現(xiàn))的SNL編譯器的基礎(chǔ)上用面向?qū)ο蟮乃枷?這里我們采用C語言)來重寫SNL編譯器!重寫除了將C語言部分改用C語言外還引入了類這一數(shù)據(jù)結(jié)構(gòu)對相關(guān)的數(shù)據(jù)和操作進(jìn)行封裝繼承.而這也正是本實驗的其中一個難點與重點!本實驗要想在C語言的基礎(chǔ)上重寫C語言的SNL編譯器需要考慮很多的情況以及需要對整個程序有深入的理解更重要的是需要對每一個模塊[這里主要是指詞法分析語法分析和語義分析三個模塊]的劃分要十分的清晰每一個模塊用到的變量以及相應(yīng)的

4、函數(shù).都是本實驗在完成的過程中遇到困難較多的地方!本實驗最大的難點在于類的構(gòu)造要先構(gòu)造出類的模型提供類的接口按照接口編程而不是面向功能編程!將global.h和util.h中相關(guān)的變量和函數(shù)進(jìn)行分類處理從而使整個程序的結(jié)構(gòu)更加清晰明了便于閱讀!23、實驗總結(jié):實驗總結(jié):1、在進(jìn)行每一環(huán)節(jié)的處理時,必須明確各個環(huán)節(jié)所用到的函數(shù)以及相關(guān)的變量,否則在對類進(jìn)行封裝時會出現(xiàn)很多的錯誤。對類的封裝操作是本實驗的重點和難點。2、在將組內(nèi)成員單獨做的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論