版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#(5)目标代码生成模块输出结果如下:因为生成目标代码需要获取相关变量的活跃度信息,所以先展示一下符号表的内容。符号表如下:7ΓK-≡--⅛M-里-口类型活跃度:0 aintyyyyy1 bintyyyy2 cintyyy3 Xintyyyy4 t5∩y5 t3ny6 tlny7 tΘny目标代码:βLDR,a1GTHj2FJE,103STK,t04LDR.日5ADDILb6STK,ti7LDK,tl8MULRj-c9JMP一1610ST儿乂11LDR.m12MULR,b13ST儿启14LD儿515SUBR.t316STRj-X17LDEj-C18GERj-X19FJB.2729STRj-t521LDRj-C22ADDR.Z523ST儿己24LD儿己25ADDRPX56JMF(6)可视化界面如下图所示:各模块要输出的内容在上面已经被标出。结论我们所设计的C语言编译系统可以根据自己所定义的文法成功的进行词法分析,生成相应的Token序列,另外,通过测试,也可以成功地生成静态符号表,并能对静态符号表随时进行查看。我们所设计的C语言编译系统也可以成功地对文档中的内容采用LL1分析法进行语法分析。通过测试,可以检查出所有的错误,并提示出错,但只能输出部分与错误有关的信息,而不能输出全部错误信息。总体来说还算成功。另外,在进行语法分析的同时,我们通过插入语义动作可以同时生成四元式。通过测试,我们可以成功的生成所需的四元式。我们也对四元式的优化进行了测试,我们可以成功地对原始的四元式进行部分的优化,但不能优化至最简,而是只能对两个操作数皆为常数,及四元式重复冗余这两种情况进行优化。我们也可以成功地生成活跃信息表,并通过活跃信息表生成相应的机器代码。通过测试,我们所生成的机器代码是准确无误的。因此,整体来说,我们所设计的C语言编译系统是成功的。但我们也有遗憾,我们所设计的符号表,单独是可以运行的,并没有建立相应的活动记录。参考文献1、陈火旺.《程序设计语言编译原理(》第3版).北京:国防工业出版社.2000.2、美AlfredV.AhoRaviSethiJeffreyD.Ullman著.李建中,姜守旭译.《编译原理》.北京:机械工业出版社.2003.3、美KennethC.Louden著.冯博琴等译.《编译原理及实践》.北京:机械工业出版社.2002.4、金成植著.《编译程序构造原理和实现技术》.北京:高等教育出版社.2002.7收获、体会和建议经过了为期2周的课程设计,让一开始都不知道编译器是何物的我们成功蜕变,在完成基本任务的基础上又进一步实现了编译器后端。依稀记得刚刚接触课程题目时,都不知道该如何下手,虽然同时也在进行编译理论课,但当真正要将理论变为实践时,着手起来并没有想象中的那么容易。万事开头难,这句话一点都不错。刚开始听到别的同学说定义一个自己的文法,我的第一反应是怎么可能呢?在与组员的交流中,最终我们组确定了一套类似于C语言的文法。定义属于自己的C语言文法之后,发现自己对编译的理解又深了一层。整个过程下来收获还是颇多。当定义了属于自己的文法之后,接下来的任务就显得非常明了。虽然之后还遇到了很多技术性问题,比如之前我们对VC的对话框和单文档实现比较熟悉,多文档很少涉及,又比如在难度较大的语法语义分析中总是出问题等等。但是这些问题都不会阻挡我们课程设计的进行,因为我们不仅有强大的团队,出现问题还可以即时向老师寻求帮助,而且还有各种网络途径和图书馆资源,在此非常感谢他们提供的各种帮助。当然我们也遇到了一些目前还没有解决的问题,比如说在进行float类型的数据操作时,汇编会出现溢出错误,所以即使在语义语法上都没有问题,我们也没有采用这种类型。另外,对函数的操作和数组的定义都没有去涉及。符号表的功能也不是很完善,基本上还是处于一种比较不完美的状态。本次课程设计让大家都学到了很多。首先,VC不再是仅仅给我们提供了编程环境,它还有许多我们以前上机课乃至实习时不曾了解的功能,我们以后也将会继续探索其更多的功能。其次,对于编译程序的理解,我们不再停留在对词法、语法语义分析等理论知识的了解,还掌握了编译程序的具体实现。虽然我们的设计是在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林艺术学院《劳动教育II》2021-2022学年第一学期期末试卷
- 房产经纪人返佣协议书范本模板
- 主播外出安全协议书范文范本
- 2024年大商铺出租转让协议书模板范本
- 【初中数学】整式的加法与减法课件 2024-2025学年人教版数学七年级上册
- 2024年处理废石协议书模板范本
- 资金代管协议书范文样本
- 2025(新人教版)地理八年级下册全册复习知识清单 课件
- 吉林师范大学《数字剪辑创作》2021-2022学年第一学期期末试卷
- 吉林师范大学《量子力学》2021-2022学年第一学期期末试卷
- 2024-2030年中国虚拟专用网络(VPN)行业市场行业发展分析及发展前景研究报告
- 检验检测机构内审员检查表
- 2024中煤电力限公司面向中煤集团内部招聘15人高频难、易错点500题模拟试题附带答案详解
- 统编版(2024新版)七年级上册历史第二单元 夏商周时期:奴隶制王朝的更替和向封建社会的过渡 单元复习课件
- 第07讲 物态变化(原卷版)-2024全国初中物理竞赛试题编选
- 高危儿规范化健康管理专家共识解读
- 第13课《纪念白求恩》课件2024-2025学年统编版语文七年级上册
- 食品安全的规章制度和食品操作流程
- 《义务教育体育与健康课程标准(2022年版)》解读
- 部编版三年级上册语文第七单元大单元教学设计
- NB-T 10435-2020 电动汽车快速更换电池箱锁止机构通.用技术要求
评论
0/150
提交评论