文档介绍:中国科学技术大学
硕士学位论文
-3语言增量编译器的设计与实现
姓名:蒋彪
申请学位级别:硕士
专业:计算机体系结构
指导教师:蒋凡
20090501
摘要本文深入探讨了基于一镅缘脑隽勘嘁爰际酰⒔岷蟃镅缘奶点,详细阐述了增量编译器的设计与实现。文章中在深入研究了实验室已实现的编译器的基础上,通过对目前的增量编译技术的分析与比较,提出了与语言特点紧密结合的增量编译技术。在具体介绍增量编译器的设计与实现时,本文首先对增量编译技术作了一般性的讨论:然后在详尽的分析研究基础上,并结合语言的语言特点,详细阐述了中间文件和交叉引用表的结构、增量静态语义检查、符号表的扩展和改进的代码生成机制;最后,给出了整个增量编译器的总体结构以及实现时用的内存管理方案。针对原有编译器的代码生成在实现上存在的紧耦合,高冗余的问题,本文对原有编译器的代码生成机制作了重大优化,并按照当今软件工程的结构化与模块化的思想进行了重新的设计与实现,本文对此也作了详细的介绍。本文在实验室已完成的编译器的基础上已实现了增量编译器的原关键词:一隽勘嘁氡嘁爰际踉隽考扑摘要犁。
,琧,;,琲籥瑃瑃,一..Ⅱ.
图目录语言作用域层次规则⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.图语法树结点的一般形式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图实体定义结点的一般形式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图怂惴泶锸浇岬憬峁埂图难莼獭图编译器的框架结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.煽蚣芡肌图字面常量结点结构示意图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图类型节点语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯自定义类型语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图参数定义结点和函数定义结点结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图长度约束挠锓ㄊ鹘峁埂图蛴锞浣岬憬峁故疽馔肌图复合语句结构示意图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。图晔斗诘憬峁故疽馔肌图晔斗1斫峁故疽馔肌图阄隽幢斫峁埂图榻峁故疽馔肌图堤逡媒诘闶疽馔肌图疟斫峁故油肌语句语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯项语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图嘁肫鞣胛募油肌方峁沟哪0逭箍!图增量编译方法的大致流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.中间文件保存的结构数据类型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
图扩展的语法树节点的一般形式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。图?椋?槎ㄒ澹?榭刂朴锓ㄊ鹘峁埂图徊嬉帽硎油肌图暾姆疟斫峁埂图嘁肫鞯木蔡镆寮觳榱鞒掏肌图测试代码未修改的编译结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图测试代码略作修改增量编译器编译结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图中间文件索引项结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图中间文件的索引结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图调用表数据结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图函数语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图函数中语句语法树结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.图徊嬉帽淼慕峁埂图隽勘嘁肫鞯木蔡镆寮觳榱魍肌图敕胧油肌图隽勘嘁肫飨低呈迪至鞒掏肌图测试代码第一次编译结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图测试代码在非增量编译器上编译结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图目录
柞者签名:落弱作者签名:稿五叁签字日期:丝』:垄中国科学技术大学学位论文原创性声明中国科学技术大学学位论文授权使用声明作者签名:恂蕴玉口保密!D本人声明所呈交的学位论文,是本人在导师指导下进行研究工作所取得的成果。除己特别加以标注和致谢的地方外,论文中不包含任何他人已经发表或撰写作为申请学位的条件之一,学位论文著作权拥有者授权中国科学技术大学拥过的研究成果。与我一同工作的同志对本研究所做的贡献均已在论文中作了明确的说明。有学位论文的部分使用权,即:学校有权按有关规定向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。本人提交的电子文档的内容和纸质论文的内容相一致。保密的学位论文在解密后也遵守此规定。口公开导师签名:签字日期:声明
第绪论研究背景本文的研究内容及贡献翰馐杂氩馐钥刂频谌是由制定和推动的测试规范和测试实现标准,并已被Ⅱ曜蓟联网协议癫馐裕?椴馐砸约盎谔囟ㄆ教ǖ牟馐浴3艘恢滦圆馐砸试以及系统完整性测试。我们实验室很早就开展了语言集成开发平台的研究工作,目前已经成功开发出两个完整的版本,一是基于解释执行的版本,另一个是基于编译执行的版本,本人在实验室期间也参与了后一个版本的研究与开发工作,并独立完成了编译器模块代码生成部分的代码实现。该版本采用编译执行,,但是以上过程却存