1 / 46
文档名称:

毕业设计(论文)-一门自定义编程语言的设计及其编译器的实现.doc

格式:doc   大小:809KB   页数:46页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

毕业设计(论文)-一门自定义编程语言的设计及其编译器的实现.doc

上传人:3346389411 2019/3/21 文件大小:809 KB

下载得到文件列表

毕业设计(论文)-一门自定义编程语言的设计及其编译器的实现.doc

相关文档

文档介绍

文档介绍:一门自定义编程语言的设计及其编译器的实现摘要编译程序是现代计算机必不可少的组成部分,它完成了将源程序转换为目标程序的全部过程。在我这次的毕业设计当中,定义和设计了一个类C的编程语言。由于我自身能力、时间和所学知识有限,设计出的这门语言十分简单,并没能提出一个准确有效的对现有编程语言的改进方案。当然,这个课题毕竟是一个很前沿的问题,作为大学毕业生的我只是对这个前沿问题进行了一些实践性的尝试。当然,我的毕业设计中最重要的部分就是实现了这门编程语言的编译器,它的主要功能包括了词法分析、语法分析、语义分析、中间代码生成(中间代码采用了四元式的结构),以及目标代码生成(目标代码采用了汇编语言),可以将符合语法的程序成功执行,并显示结果。由于技术所限,编译器没有进行进行代码优化和对错误的处理。但总体而言,这个编译器项目的功能性还是十分完备的。关键词:编译器;程序设计语言;词法分析;puter,,,limitedtimeandtheknowledge,thelanguageisverysimple,,thissubjectisafterallaverycutting-edgeissues,asuniversitygraduatesonthecutting-edgeissues,Ijustmade​​,piler,itsmainfeaturesincludelexicalanalysis,parsing,semanticanalysisandcodegeneration(intermediatecodeusingaquaterniontypeofstructure),andtargetcodegeneration(objectcodeusingassemblylanguage),essfully,,,however,;ProgramingLanguage;lexicalanalyzers;Syntaxanalysis目录摘要 iAbstract ii第一章绪论 1一论文主要内容 1(一)程序设计语言的设计 1(二)编译器的实现 1(三)在线编译思路的尝试 1二文献综述 1(一)前言 1(二)研究概述 2三研究编程语言的目的和意义 3四研究编译器的目的和意义 3第二章自定义语言的设计 4一程序设计语言概述 4(一)程序设计语言概念 4(二)程序设计语言分类 4(三)程序设计语言的实现 4二程序设计语言发展现状 4三程序设计语言的发展趋势 5四自定义语言的设计 5(一)词法的设计 5(二)语法的设计 6(三)中间代码的选择 6第三章编译器概述 7一编译器的基本概念 7(一)编译器概述 7(二)编译过程概述 7二研发编译器的意义 8三编译器的发展趋势 8四尝试在线编译器的意义 8五编译器的概要设计 9(一)系统总体结构 9(二)代码分析模块结构 9(三)类结构的设计 10第四章词法分析 12一词法分析概述 12(一)词法分析概念 12(二)常用的LEX程序 12二词法分析器设计 12(一)词法的设计步骤 12(二)正规式和DFA 13(三)利用有限自动机的词法分析 13三词法分析器的实现 14(一)数据结构定义 14(二)实现细则 14第五章语法分析 16一语法分析概述 16二语法分析器设计 16三语法分析器实现 17(一)上下文无关文法 17(二)LR分析方法 17第六章语义分析及中间代码生成 20一语义分析及中间代码生成的概念 20二语义分析设计 20三中间代码的选取 21第七章目标代码生成 22一目标代码定义 22(一) 简介 22(二) 目标代码格式 22二目标代码生成概述 23三实现过程 23第八章系统的在线化尝试 25一为什么要进行编译器在线化 25(一) 现有系统的局限性 25(二) 编译器在线化的优势 26(三) 在线编译器的发展现状 26二在线化的设计思路 26(一) 开发技术概述 26(二) 正则表达式 27(三)在线编