广工编译原理课程设计

广工编译原理课程设计

ID:19845936

大小:735.30 KB

页数:12页

时间:2018-10-06

广工编译原理课程设计_第1页
广工编译原理课程设计_第2页
广工编译原理课程设计_第3页
广工编译原理课程设计_第4页
广工编译原理课程设计_第5页
资源描述:

《广工编译原理课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计课程名称编译原理题目名称编译原理课程设计学生学院计算机学院专业班级2011级计算机科学与技术7班学号3111006002学生姓名谢佳旭2013年1月08日目录一、课程设计目的..........................................5二、课程设计要求..........................................51、设计内容............................................5三、课程设计环境与工具...............................

2、.....6四、结构设计说明..........................................51、PL/0语言编译器.....................................52、总流程图............................................63、各功能模块描述......................................6五、主要成分描述..........................................7六、测试用例................

3、.............................91、测试*=和/=的运算功能................................92、测试FOR语句功能.....................................9七、开发过程和完成情况....................................91、扩充赋值运算:*=和/=..............................92、扩充FOR语句(Pascal)..............................103、添加单行注释..

4、.....................................12八、心得体会.............................................14一、课程设计目的在分析理解一个教学型编译程序(如PL/0)的基础上,对其词法分析程序、语法分析程序和语义处理程序进行部分修改扩充。达到进一步了解程序编译过程的基本原理和基本实现方法的目的。二、课程设计要求1.课程设计基本内容(成绩范围:“中”、“及格”或“不及格”)(1)扩充赋值运算:*=和/=扩充语句(Pascal的FOR语句):FOR<变量>:=<表达式>STEP<

5、表达式>UNTIL<表达式>Do<语句>选做内容(成绩评定范围扩大到:“优”和“良”)(1)增加类型:①字符类型;②实数类型。(2)增加注释;注释由/*和*/包含;(3)扩充函数:①有返回值和返回语句;②有参数函数。(4)增加一维数组类型(可增加指令)。(5)其他典型语言设施。三、课程设计环境与工具(1)运行平台:WIN7旗舰SP1(2)实现工具:C++Builder6.0(3)教学型编译程序:PL/0四、结构设计说明和各功能模块描述(1)PL/0语言编译器PL/0语言可看成是PASCAL语言的子集,它的编译程序是一个编译解释执行系统。PL/0的目标

6、程序为假想栈式计算机的汇编语言,与具体计算机无关。出错处理函数表格管理函数PL/0源程序目标代码生成程序程序目标代码生成程序程序目标代码生成程序程序目标代码生成程序程序目标代码生成程序程序(2)PL/0编译程序的过程或函数的功能表1、voidError(intn):错误处理,打印出错位置和错误编码2、voidGetCh():漏掉空格,读取一个字符3、voidGetSym():词法分析,读取一个单词4、voidGEN(FCTX,intY,intZ):生成目标代码,并送入目标程序区5、voidTEST(SYMSETS1,SYMSETS2,intN):测试

7、当前单词符号是否合法6、voidENTER(OBJECTSK,intLEV,int&TX,int&DX):登录名字表7、intPOSITION(ALFAID,intTX):查找标识符在名字表中的位置8、voidConstDeclaration(intLEV,int&TX,int&DX):常量说明处理9、voidVarDeclaration(intLEV,int&TX,int&DX):变量说明处理10、voidCharDeclaration(intLEV,int&TX,int&DX):字符说明处理11、voidRealDeclaration(intLE

8、V,int&TX,int&DX):实数说明处理12、voidListCode(intCX0):列出目标代码清

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。