編譯原理經(jīng)典算法的可視化實現(xiàn) - 圖文_第1頁
編譯原理經(jīng)典算法的可視化實現(xiàn) - 圖文_第2頁
編譯原理經(jīng)典算法的可視化實現(xiàn) - 圖文_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、編譯原理經(jīng)典算法的可視化實現(xiàn) - 圖文 編譯原理經(jīng)典算法的可視化實現(xiàn) 編譯原理經(jīng)典算法的可視化實現(xiàn) 摘要 在計算機教學中,編譯原理這門課程在計算機科學中占有非常重要的地位,每個計算機專業(yè)的同學都需要學習它。而通過學習編譯原理,能更好的了解高級程序語言的運行機制,并能編寫出更加高效的程序。但是編譯原理中的算法比較抽象,學習起來困難,而本系統(tǒng)能夠動態(tài)演示編譯原理中的詞法分析階段和語法分析階段的ll(1)文法,而詞法分析器將輸出每個單詞對應的二元組,這將有利于我們對詞法分析器的理解,而ll(1)文法的動態(tài)演示使我們能夠更好的理解并運用ll(1)文法中的各種算法。所以這種算法可視化技術(shù)能加深人們對程序

2、行為的理解和認識,準確地了解和分析程序執(zhí)行過程所反映的邏輯含義和功能。 本程序是在vs2012平臺下用c#語言實現(xiàn)的。本程序界面簡潔,能實現(xiàn)詞法分析器的可視化和ll(1)文法的演示。 關(guān)鍵詞:詞法分析;ll(1)文法;可視化技術(shù) i 編譯原理經(jīng)典算法的可視化實現(xiàn) the visual implementation of classic algorithm of compilation principle abstract in the computer course,compilation principle plays a very important role in computer sc

3、ience, each student who learns computer science has to learn it. through the study of these principles, we can be more easy to understand the operation mechanism of various high-level language, and we can produce more efficient code. but the compilation principle is abstract, its very difficult to l

4、earn it. the system can dynamic demo the compilation principle of lexical analysis and ll (1) of grammar grammar analysis phase, and the lexical analyzer will output each word two tuples, which will help us to analysis of lexical understanding, ll (1) dynamic demo grammar enables us to better unders

5、tand and use the ll (1) algorithms in the grammar. so this kind of algorithm visualization technology can help people to understand program behavior, understand the reflection accuratly and analysis of program execution logic meaning and function. this procedure is used c# language under vs2012 plat

6、form. the programs interface is simple, and it achieves visual of lexical analyzer and the demo of ll(1) algorithms. key words: lexical analysis; ll (1); visualization technology ii 編譯原理經(jīng)典算法的可視化實現(xiàn) 目錄 1 緒 論.1 1.1背景 . 1 1.2本課題研究的目的和意義 . 1 1.3國內(nèi)外研究現(xiàn)狀 . 2 1.4主要工作 . 2 1.5 本系統(tǒng)的設計思想 . 2 2 詞法分析概述.4 2.1 詞法分析

7、器的作用 . 4 2.2詞法分析中的問題 . 5 2.3 詞法分析中的術(shù)語 . 5 2.4 詞法錯誤 . 7 2.5 詞法分析生成工具 . 8 3 詞法分析器動態(tài)演示的設計與實現(xiàn).10 3.1 詞法分析器描述語言 . 10 3.1.1 lex說明.10 3.1.2 超前掃描操作.11 3.1.3 lex編程.12 3.2詞法分析器動態(tài)演示的事件實現(xiàn) . 12 4 語法分析.17 4.1 語法分析的基本概念 . 17 4.2 語法分析的任務 . 17 4.3 語法分析基礎 . 17 5 ll(1)文法可視化的設計與實現(xiàn)23 5.1 程序界面的實現(xiàn) . .23 5.2 程序關(guān)鍵功能的實現(xiàn)。 . 2

8、5 iii 編譯原理經(jīng)典算法的可視化實現(xiàn) 5.2.1 first和follow.25 5.2.2 預測分析表的構(gòu)造 . .27 致謝29 參考文獻.30 附錄.31 附件1 開題報告 附件2 譯文及原文影印件 iv 編譯原理經(jīng)典算法的可視化實現(xiàn) 1 緒 論 1.1背景 在計算機發(fā)展歷程中,編譯器的產(chǎn)生對計算機科學技術(shù)的發(fā)展起到了巨大作用,是開發(fā)計算機程序不可缺少的重要工具。而編譯器的原理和技術(shù)具有非常普遍的意義。編譯器2的編寫涉及到計算機體系結(jié)構(gòu)、程序設計語言、語言理論和算法和軟件工程等學科,是計算機科學技術(shù)的重要基礎。編譯原理在計算機學科中是一門基礎性很強的課程,每個學習計算機技術(shù)的學生都要

9、去了解學習它。通過這些原理,就能更加了解各種高級語言的運行機制,就能編寫出更為高效的程序。如今,我們知道在課堂上很多教師設計良好的算法動畫演示來有效幫助學生學習算法,而且這種方法已基本被人們普遍接受。但是,我們知道,動畫演示給定的初試條件是固定的,只能觀看算法執(zhí)行過程,并不能通過修改參數(shù)控制算法的演示過程,這遠遠達不到靈活展示的效果,對學生來說,取得的效果也不是特別突出,達不到人們的期望值。 而編譯原理的每個階段,從詞法分析、語法分析,直到中間代碼的生成,每個階段都包含大量的算法。而這些算法過程較為復雜,比如語法分析中的ll(1)文法分析過程包含很多動作,求first集和follow集,構(gòu)成分析表,然后根據(jù)分析表來進行最左推導,涉及的數(shù)據(jù)結(jié)構(gòu)包括堆棧、表等,而要形象地展示這些元素,使學生更加容易地接受這些知識,這是一項具有挑戰(zhàn)的事情。 可視化技術(shù)8就是利用計算機圖形學和圖像處理技術(shù),將數(shù)據(jù)轉(zhuǎn)換成圖形或圖像后在屏幕上顯示出來,并進行交互處理的理論、方法和技術(shù)。在編譯算法的

溫馨提示

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

評論

0/150

提交評論