《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)

《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)

ID:6603365

大小:177.00 KB

页数:18页

时间:2018-01-20

《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)_第1页
《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)_第2页
《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)_第3页
《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)_第4页
《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)_第5页
资源描述:

《《编译原理》课程设计说明书-if-else条件语句的翻译程序设计(简单优先法、输出四元式)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、武汉理工大学《编译原理》课程设计说明书课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目:IF-ELSE条件语句的翻译程序设计(简单优先法、输出四元式)初始条件:理论:学完编译课程,掌握一种计算机高级语言的使用。实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1)写出符合给定的语法分析方法的文法及属性文法。(2)完成题目要求的中间代码四元式的描述。(3)写出给定的语法分析方法的思想,完成语法分析和语义分析程序设计。(4)编制好分析程序后,设计若干用

2、例,上机测试并通过所设计的分析程序。(5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括:1系统描述(问题域描述);2文法及属性文法的描述;3语法分析方法描述及语法分析表设计;4按给定的题目给出中间代码形式的描述及中间代码序列的结构设计;5编译系统的概要设计;6详细的算法描述(流程图或伪代码);7软件的测试方法和测试结果;8研制报告(研制过程,本设计的评价、特点、不足、收获与体会等);9参考文献(按公开发表的规范书写)。时间安排:设计安排一周:周1、周2:完成系统分析及设计。周3、周4:完成程序调试及测试。周5:撰写课程设计报告。设计验收安排:设计周的

3、星期五第1节课开始到实验室进行上机验收。设计报告书收取时间:设计周的次周星期一上午10点。指导教师签名:年月日系主任(或责任教师)签名:年月日18武汉理工大学《编译原理》课程设计说明书目录1系统描述1.1目的1.2设计内容及步骤1.3开发平台2文法及属性文法的描述2.1文法描述2.2属性文法描述3语义分析方法的描述及分析表设计3.1优先关系定义3.2简单优先文法定义3.3简单优先文法的算法步骤3.4语义分析方法描述3.5分析表构造4中间代码形式描述及结构设计5编译系统的概要设计6算法描述6.1预定义模块6.2词法分析6.3语法分析6.4其他模块6.5主程序18武汉

4、理工大学《编译原理》课程设计说明书7测试方法和结果7.1测试方法7.2测试结果8设计总结8.1设计优点8.2设计缺点8.3考虑改进9收获与体会10参考文献18武汉理工大学《编译原理》课程设计说明书IF-ELSE条件语句的翻译程序设计(简单优先法、输出四元式)1系统描述1.1实验目的对条件语句:IF<布尔表达式>THEN<赋值语句>ELSE<赋值语句>(1)按给定的题目写出符合语法分析方法要求的文法和属性文法描述。(2)按给定的题目给出语法分析方法的思想及分析表的设计。(3)按给定题目给出中间代码序列的结构设计。(4)完成相应的词法分析、语法分析和语义分析程序设计。

5、(5)编制好分析程序后,设计若干用例,上机测试并通过所设计的分析程序。1.2开发平台VisualC++6.0、WindowsXP2文法及属性文法的描述2.1文法描述(1)S->ifEthenBelseB(2)E->(A>A)(3)E->(A(A)(5)A->d(6)A->num(7)B->{d=C}(8)C->A+A(9)C->A-A(10)C->A*A(11)C->A/A(12)C->A其中,d代表变量,num代表常量(这里仅限数字),E布尔表达式,B为赋值表达式,C为算术表达式2.2属性文法描述(1)E->AropA’{E.true=next

6、stat;E.codebegin=nextstat;E.false=nextstat+1;emit(“if”A.place“rop”A’.place“goto”-);emit(“goto”-)}(2)E->(A){E.place=A.place}18武汉理工大学《编译原理》课程设计说明书(3)A->id{p=lookup(id.name);ifp!=nullthenA.place=pelseerror}(4)B->{d=C}{d.place=C.place}(5)C->AopA’{C.place=newtemp;emit(C.place“=”A.place“op”

7、A’.place)}(6)C->A{C.place=A.place}注:rop为>或<;op为+、-、*或/3语义分析方法的描述及分析表设计3.1优先关系定义X=Y表示X和Y的优先关系相等X>Y表示X的优先性比Y的优先性大X…XY…(2)X>Y当且仅当G中存在产生式规则A->…XB…,B=>Y…,B≠Y(3)X…BD…,B=>…X,B≠X,D=>Y…3.2简单优先文法定义若一个文法是简单优先文法必须满足以下条件:(1)在文法符号集V中,任意两个符号之间最

8、多只有一种

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

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

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