一款编译器的设计与实现文献综述

 2022-07-17 04:07

一款编译器的设计与实现文献综述

摘要:大家都知道,高级计算机语言包括C,JAVA。这些语言是便于人们编写,阅读,交流,维护的语言。然而计算机能够真正理解,运行的语言却是机器语言。而编译器的功能恰恰就是将高级程序语言转化为接近机器语言汇编语言。本次设计的任务就是基于JAVA的C语言编译器的设计与实现。编译器主要用词法分析,语法分析,语义分析以及代码生成四个阶段将C语言翻译成机器语言。其中用到的算法是LL1算法。

现代编译器的主要工作流程为: 源代码(source code)→ 预处理器(preprocessor)→ 编译器(compiler)→ 汇编程序(assembler)→ 目标代码(object code)→ 链接器(Linker)→ 可执行文件(executables)。源代码一般为高阶语言 (High-level language), 如 Pascal、C、C 、C# 、Java 等,而目标语言则是汇编语言或目标机器的目标代码(Object code),有时也称作机器代码(Machine code)。

关键词:编译器;词法分析;语法分析;LL1算法

1.引言

随着java,c,python等高级语言编程语言被广泛使用,编译器的优化技术就显得越来越重要。

上个世纪50年代,IBM的研究小组就开始深入研究编译技术并试着开发编译器。但由于当时编译技术的知识体系尚不完全,导致研究工作进展非常缓慢。随着编译器结构逐渐变得简单以及生成目标代码的方法优化,终于设计完成了编译器。由于之后编译器的自动构造技术也取得了长足进步,人们把目光放在了其他部分的自动构造上,但是并未得到人们期望中的成果。

随着高级编程语言的进一步发展,编译器也增加了更多的算法和功能来支持高级语言的翻译。虽然编译器的开发在某些领域取得了许多突出的进展,但是编译器的基本设计原理还是和30年前一样,没有太大的变化。上世纪九十年代,人们开发了越来越多的编译器及其开发工具。想要研究编译器的人可以免费得到他的源代码。

我国在上世纪60年代也开始对编译器的研究及开发,董韫美院士就率领研究组先后开发了类 ALGOL语言编译器BCY。70年代中科院张兆庆教授研究组开始在国产机上研制支持了数百万行应用软件的运行的FORTRAN语言编译器。90年代以来,国内把研究重心放在了并行编译器的研制上面,并且在这个领域达到了世界顶尖的水平。

所以我们可以发现,编译技术的应用几乎无处不在,所以编译技术的优化和发展也变得尤为重要。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。