freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編譯課設(shè)報(bào)告--pl0編譯器的中間代碼生成_-資料下載頁(yè)

2025-02-04 09:14本頁(yè)面

【導(dǎo)讀】設(shè)計(jì)的題目要求具有一定的規(guī)模,應(yīng)涵蓋本課程內(nèi)容和實(shí)際應(yīng)用相關(guān)的主要技術(shù),記錄到相應(yīng)符號(hào)表中;對(duì)可執(zhí)行語(yǔ)句,應(yīng)產(chǎn)生出四元式中間代碼并填寫(xiě)到三地址碼表中;在配備JAVA語(yǔ)言的任何機(jī)器上實(shí)現(xiàn)。本次課設(shè)開(kāi)發(fā)平臺(tái)即為JAVA。用遞歸子程序法實(shí)現(xiàn)了。內(nèi)容、錯(cuò)誤分析三部分內(nèi)容,分別用java界面控件顯示出來(lái)。PL/0的目標(biāo)程序?yàn)榧傧霔J接?jì)算機(jī)的匯。編語(yǔ)言,與具體計(jì)算機(jī)無(wú)關(guān)。用表格管理程序建立變量、常量和過(guò)程表示符的說(shuō)明與引用之間的信息聯(lián)系。用出錯(cuò)處理程序?qū)υ~法和語(yǔ)法分析遇到的錯(cuò)誤給出在源程序中出錯(cuò)的位置和錯(cuò)位性質(zhì)。當(dāng)源程序編譯正確時(shí),PL/0編譯程序自動(dòng)調(diào)用解釋執(zhí)行程序,對(duì)目標(biāo)代碼進(jìn)行解釋執(zhí)行,并按用戶(hù)程序的要求輸入數(shù)據(jù)和輸出運(yùn)行結(jié)果。<變量說(shuō)明部分>::=var<標(biāo)識(shí)符>{,<標(biāo)識(shí)符>};詞法分析類(lèi)和block類(lèi)為編譯器的語(yǔ)法分析類(lèi),為整個(gè)程序的核心所在。初始化各種變量的初始化函數(shù)。

  

【正文】 論學(xué)習(xí)與實(shí)踐很好的結(jié)合了起來(lái),是將理論應(yīng)用于實(shí)際的最好的方法,通過(guò)對(duì) pl/0 語(yǔ)言的詞法和語(yǔ)法分析,我們了解了編譯過(guò)程是一個(gè)什么樣的具體分析過(guò)程,這也是通過(guò)本門(mén)課設(shè)收獲最大之處,以前使用過(guò)的許多種編譯器,卻從來(lái)沒(méi)有想過(guò)這些編譯器是怎樣將高級(jí)語(yǔ)言程序轉(zhuǎn)化成低級(jí)語(yǔ)言程序的,這次課設(shè) 讓我明白了許多東西。同時(shí),課程設(shè)計(jì)過(guò)程中對(duì)語(yǔ)法分析時(shí),需要很好的數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì),也讓我們認(rèn)識(shí)到了數(shù)據(jù)結(jié)構(gòu)的重要性??傊ㄟ^(guò)本次課設(shè),鍛煉了自己設(shè)計(jì)算法,設(shè)計(jì)軟件的能力,是一次很好的實(shí)踐過(guò)程,同時(shí)也暴露了不少缺點(diǎn),讓我們認(rèn)識(shí)到了不足,這為我們今后的學(xué)習(xí)指引了新方向。 本次實(shí)驗(yàn)的特點(diǎn):本次課設(shè)中最難的部分莫過(guò)于生成代碼及執(zhí)行代碼,由于采用語(yǔ)法制導(dǎo)翻譯,要將代碼生成函數(shù)加到語(yǔ)法分析程序中的正確位置,以及符號(hào)表的填充,還有層次等數(shù)值的改變,對(duì)目標(biāo)機(jī)運(yùn)行機(jī)制的理解,都是課設(shè)里的極大難點(diǎn),如果指令生成錯(cuò)誤,造成內(nèi)存分 配不當(dāng)?shù)儒e(cuò)誤,程序執(zhí)行就會(huì)失敗。這些抽象在書(shū)本中的知識(shí),要轉(zhuǎn)化為編程中的細(xì)節(jié),在剛開(kāi)始的時(shí)候是很茫然的。在仔細(xì)研究過(guò)給出的關(guān)于 PL0 編譯器的 PPT 以及一些參考代碼后,終于有了大致的了解。最終我們?cè)谶@個(gè)編譯器中實(shí)現(xiàn)了 PL/0 語(yǔ)言的詞法分析、語(yǔ)法分析和中間代碼生成,其中將變量符號(hào)進(jìn)行了表格管理,對(duì)錯(cuò)誤的地方進(jìn)行了錯(cuò)誤的分析。其中,我們使用了 JAVA 語(yǔ)言的控件設(shè)計(jì)系統(tǒng)界面,將生成的中間代碼、符號(hào)表和錯(cuò)誤分析部分很好的顯示在系統(tǒng)主界面上,讓用戶(hù)使用起來(lái)更方便。 展望 本次實(shí)驗(yàn)的不足還有很多,作為一個(gè)完善的編譯器,由 于時(shí)間的原因,我們沒(méi)有實(shí)現(xiàn)文件保存功能,即不能將生成的中間代碼和錯(cuò)誤分析寫(xiě)進(jìn)文件進(jìn)行保存,也沒(méi)有將用戶(hù)界面設(shè)計(jì)的很詳細(xì)。但是之后我們會(huì)盡量完善該編譯器的這些功能。 收獲:通過(guò)本次實(shí)驗(yàn),我收獲了很錯(cuò)東西。首先對(duì)編譯有了進(jìn)一步的深刻理解,通過(guò)對(duì)遞歸下降法應(yīng)用,讓我對(duì)數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)思想有了很深的認(rèn)識(shí),同時(shí)我們對(duì)詞法分析、語(yǔ)法分析的原理和過(guò)程都有了進(jìn)一步的鞏固,使用 JAVA 平臺(tái)開(kāi)發(fā)也讓我們的編程水平也起到了鍛煉的作用,鞏固了平時(shí)所學(xué)的知識(shí),真正做到了學(xué)以致用。但是在編碼過(guò)程中暴露的問(wèn)題是我們今后需要改進(jìn)的地方,我相 信認(rèn)識(shí)到了問(wèn)題所在,今后努力的方向才會(huì)更明確,才會(huì)更好的提高自己的水平。 學(xué)習(xí)編譯技術(shù)課程的體會(huì)和對(duì)本門(mén)課程的評(píng)價(jià) 上編譯原理這門(mén)課前就聽(tīng)說(shuō)這是一門(mén)比較難懂難學(xué)的課,老師課上也強(qiáng)調(diào)過(guò)一定要認(rèn)真聽(tīng)講,不然自己回去看書(shū)是很難看明白的。剛開(kāi)始的時(shí)候,將書(shū)翻了一遍,果然發(fā)現(xiàn)書(shū)本中都是一些很抽象的理論、原理和證明,自己看了看根本就是云里霧里,如果是純粹的自學(xué)肯定要花費(fèi)大量的時(shí)間和精力,因此在王老師的悉心督促下,我們上課都特別認(rèn)真的聽(tīng)講。讓我們值得慶幸的是,王老師講課的方式讓我們比較感興趣,在思路上不會(huì)莫名其妙的走神,感覺(jué)一學(xué)期下來(lái),確實(shí)是每節(jié)課都聽(tīng)得挺認(rèn)真的,因此還算是比較順利的學(xué)習(xí)完了編譯這門(mén)難課。王老師講課很細(xì)心,對(duì)難點(diǎn)重點(diǎn)把握得張弛有度,其中,對(duì)許多知識(shí)點(diǎn)難點(diǎn)又進(jìn)行了重復(fù)講授和復(fù)習(xí),而且,對(duì)作業(yè)安排的很合理,我們?cè)谧鳂I(yè)中的小問(wèn)題也被老師一語(yǔ)道破,這樣充分鞏固了我們對(duì)知識(shí)的掌握。就這樣,在老師的帶領(lǐng)和悉心教導(dǎo)下,我們漸漸找到了學(xué)習(xí)編譯原理的規(guī)律,也找到了學(xué)習(xí)方法,通過(guò)自己一點(diǎn)一點(diǎn)的摸索中一路走了過(guò)來(lái),順利地完成了這門(mén)課的理論學(xué)習(xí)環(huán)節(jié)。 在實(shí)踐環(huán)節(jié)中,拿到課題以后,給我們的第一感覺(jué)就是,這要做的是什么?實(shí)現(xiàn)什么功能? 怎么做?通過(guò)圖書(shū)館和上網(wǎng),查了一些資料才明確了我們要做的是什么。對(duì)于功能的實(shí)現(xiàn)過(guò)程,我們認(rèn)真閱讀了課本教材的第二章,才明確了 PL/0 編譯器的實(shí)現(xiàn)的具體步驟和設(shè)計(jì)算法。最后在編碼的過(guò)程中,各種小錯(cuò)誤的出現(xiàn)讓我們很糾結(jié),這讓我們想到,編譯器的出錯(cuò)提示程序能否給出正確的解答,這對(duì)編程人員的影響是很大的。因此我們做的小編譯器一定要給出出錯(cuò)位置和出錯(cuò)原因,這樣,編程過(guò)程中就可以節(jié)省很多時(shí)間。這也是第一次課設(shè)和同學(xué)一起完成的,現(xiàn)在回想起來(lái),這個(gè)過(guò)程很好,加強(qiáng)了我們的團(tuán)隊(duì)意識(shí)和合作精神,現(xiàn)在覺(jué)得收獲良多,體會(huì)頗豐。 總之 ,這次課程設(shè)計(jì)加深了我對(duì)編譯過(guò)程的理解,不管是整體還是細(xì)節(jié)都有了更深入的體會(huì),有些章節(jié)學(xué)的比較淺的,在這次課設(shè)中也強(qiáng)化了知識(shí),如活動(dòng)記錄、符號(hào)表等。實(shí)踐出真知,平時(shí)學(xué)習(xí)的僅限于書(shū)本知識(shí),只會(huì)做幾道題目,只有真的應(yīng)用于實(shí)踐中,才明白原來(lái)它的原理是這樣的,而這些細(xì)節(jié)也在一步一步的調(diào)試過(guò)程中明了。 但是,我深知編譯原理的博大精深?,F(xiàn)在學(xué)的只能涉及到它一些最基本的原理,對(duì)于宏觀的方法去研究,還需要在以后的時(shí)間里去鉆研。在這次實(shí)驗(yàn)中,也只是用高級(jí)語(yǔ)言編寫(xiě)了PL/0 簡(jiǎn)單語(yǔ)言的編譯器,在完成實(shí)驗(yàn)的過(guò)程中,我對(duì)編譯原理有了 進(jìn)一步的了解,更提高了動(dòng)手編程能力,是一次經(jīng)驗(yàn)和知識(shí)的積累。參 考 文 獻(xiàn) [1] 張素琴等 . 編譯原理(第 2 版). 北京:清華大學(xué)出版社 , 2021 1326 [2] 陳火旺 . 程序設(shè)計(jì)語(yǔ)言編譯原理(第 3 版). 國(guó)防工業(yè)出版社, 2021 [3] 陳意云 . 編譯原理和技術(shù) .北京: 中國(guó)科技大學(xué)出版社 , 1997 [4] 何炎祥 . 計(jì)算機(jī)高級(jí)語(yǔ)言編譯原理與方法 . 海洋出版社 , 1997 [5] 蘇俊 . Java 程序設(shè)計(jì) . 機(jī)械工程出版社 , 2021
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1