课程设计任务书_第1页
课程设计任务书_第2页
课程设计任务书_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计任务书 编译技术课程设计b课程设计 任 务 书 一、 目的与要求 通过设计、编写和调试词法分析程序,了解词法扫描器的组成结构、不同种类单词的识别方法,掌握由单词的词法规则出发,通过识别单词的状态转换图、利用程序实现词法扫描器的方法。通过设计、编写和调试语法分析程序,了解语法分析器的组成结构以及对文法的要求,掌握基于表达式文法的语法分析程序的实现方法。通过设计、编写和调试语法制导翻译程序,掌握从语句的语法出发,构造相应的语义子程序,实现基于算符优先分析的算术表达式的语法制导翻译。 二、 主要内容 1 词法分析器的设计与实现 设计一个简单的词法扫描器。其输入是源程序字符串,输出是二元式(种

2、别编码,单词的属性值),例如“”符号的输出形式为(8,),其中种别编码可参照书中单词表自拟某程序设计语言的单词表及其种别编码。实现方法参考书中函数和程序框架。 2 语法分析器的设计与实现 自上而下的语法分析方法:构造所用文法的预测分析表,实现方法参考书中算法描述。利用所得预测分析表采用自上而下的语法分析方法对输入串进行分析。例如,若根据书中算术表达式文法构造的预测分析表,那么对输入表达式i+i进行语法分析,输出为分析过程: e et etf eti et e et+ i+i i+i i+i i+i +i +i +i et etf et i et e i i i 自下而上的语法分析方法:构造所用

3、文法的算符优先关系表,实现方法参考书中程序框架。利用所得算符优先关系表采用自下而上的语法分析方法对输入串进行分析。例如,若根据书中算术表达式文法构造算符优先表,对输入表达式i+i进行分析,输出为: i n n+ +i +i i 1 n+ i n+ n n 3 语法制导翻译程序 采用书中所示的翻译模式,对语法分析正确的程序在其语法分析的基础上,进行语义翻译工作。每当分析出某语法单位时,就调用对应产生式的语义子程序,完成相应的翻译工作。例如,表达式文法各个产生式的语义动作表示如下: ee1+e2 ee1*e2 e(e1) ei e.palce:=newtemp, gen(+, e1.palce ,

4、 e2.palce , e.palce) e.palce:=newtemp, gen(*, e1.palce , e2.palce , e.palce) e.palce:= e1.palce e.palce:=i 三、 进度计划 序号 设计内容 词法分析器的设计与实现 语法分析器的设计与实现 语法制导翻译器的实现 完成时间 周一 周二-周四 周五 备注 1 2 3 四、 设计(实验)成果要求 1 词法分析器:能够接收用户录入的一段源程序,并且通过语法分析正确输出此段程序中所 包含的所有单词编码及其属性。 2 语法分析器:对输入串进行自上而下或自下而上的语法分析,能够判断输入串是否某文法 的句子。 3 语义分析器:对输入源语言程序进行语法制导翻译工作。每当分析出某语法单位时,就调 用相应产生式的语义子程序完成翻译工作。例如,输入i+i,则输出为:(+, i, i, t1) 五、 考核方式 根据进度计划的时间安排统一验收所有程序。可根据学生不同的进度提前验收时间,但不可滞后。验收时由

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论