当前位置:才华君>好好学习>毕业论文>

编译演示系统的开发-计算机论文

毕业论文 阅读(3.14W)

张豪生 计算机科学与工程学院

 

编译演示系统的开发-计算机论文

指导教师   孙永新

 

 

摘要:由于编译原理的算法比较抽象,要理解它们很难。利用可视化技术可以使得这些算法的学习过程容易些。一个编译算法动画演示系统被设计出来以满足这方面的需要。该系统实现了词法分析和语法分析中的基本算法,由网页和Java Applet程序构成。Java Applet程序用图和表显示动态数据的方式模拟算法执行过程。由于采用了基于网页的方式实现系统,系统易部署且通过一个浏览器如IE即可访问。

 

关键词:编译原理 算法演示 词法分析 语法分析 Java Applet

 

 

Development of the Compiling Algorithm Animation System

 

Zhang Hao-sheng  College of Computer Science and Engineering

 

Faculty adviser  Sun Yong-xin

 

 

Abstract: It is very difficult to understand compiling algorithms because of their abstractness. Visualization technology can be used to make the learning process for these algorithms easier. A compiling algorithm animation system was designed to meet this need. The system, which consisted of web pages and Java Applet programs, implemented the basic algorithms in lexical analysis and grammatical analysisThe Java Applet programs simulated the algorithms by showing the dynamic data with graphs and tables. Web-based implementation makes the system easily deployed and accessible with a web browser like IE.

 

Keyword: Compiling Principle; Algorithm Animation; Lexical analysis; Grammatical analysisJava Applet

 

1 前言

 

编译器是一个程序,它读入用某种语言(源语言)编写的程序并将其翻译成一个与之等价的以另一种语言(目标语言)编写的程序[1]。我们接触最多的高级语言,如JAVAC++VB等,要在计算机中运行都离不开编译器。世界上存在上千种源语言、上千种目标语言,同时也意味着存在上千种编译器。编译器虽然是多种多样的,但是它们所要完成的基本任务都是相同的。由于编译器的普遍性和重要性,学习编译器原理对深入理解计算机体系的意义就更为重大了。但是由于编译原理的理论及算法都比较抽象,要理解它们并不容易。但如果把这些算法的过程都以可视化技术[2-3]显示出来,就比较容易被理解了。想想看,如果把它作为辅助教学的,抽象的算法过程都以图形化的方式直接显示出来,学生就可以快速的理解算法的思想及过程,从而大大的提高学习效率以及教学效果。

 

2 Java Applet概述

 

Java Applet就是用Java语言编写的这样的一些小应用程序它们可以直接嵌入到网页中并能够产生特殊的效果。包含Applet的网页被称为Java-powered页,可以称其为Java支持的网页。 

 

当用户访问这样的网页时, Applet被下载到用户的计算机上执行,但前提是用户使用的是支持Java的网络浏览器。由于Applet是在用户的计算机上执行的,因此它的执行速度不受网络带宽的限制。用户可以更好地欣赏网页上Applet产生的多媒体效果。 

 

Java Applet中,可以实现图形绘制,字体和颜色控制,动画和声音的插入,人机交互及网络交流等功能。 Applet还提供了名为抽象窗口工具箱(Abstract Window Toolkit, AWT)的窗口环境开发工具。 AWT利用用户计算机的GUI元素,可以建立标准的图形用户界面,如窗口、按钮、滚动条等等。[5]

 

3 系统设计

 

3.1 总体设计

 

网页中提供演示程序算法的相关说明。演示程序利用了JFLAP[7]库中的一部分图形组件并使用JAVA  Applet开发,最终嵌入到网页中。

 

3.2 网站设计

 

网站的所有的页面的宽度都是950像素,而演示程序的大小是900 * 600。网站分为五个栏目,分别是首页、词法分析、语法分析、帮助说明、相关链接。各栏目的内容如下:

 

首页:网站的总体说明,并提供演示的快捷链接。

 

词法分析:提供词法分析演示页的简要说明及链接。

 

语法分析:提供语法分析演示页的简要说明及链接。

 

帮助说明:提供演示程序及相关编译原理知识的说明。