编译课程设计报告书.doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
该设计论文已经通过各大高校老师审核认可并通过答辩,。欢迎大家下载学习交流。如有疑问可随时联系店主,竭诚为您解答!!

课程设计报告 ( 2014 -- 2015年度第 1 学期) 名 称: 编译技术课程设计B 题 目: 词法分析器设计 算符优先分析程序设计 基于算符优先分析方法的语法制导翻译程序设计 院 系: 计算机系 班 级: 计科1203班 学 号: 201209010314 学生姓名: 宋旭鹤 指导教师: 编译课程教学组 设计周数: 1周 成 绩: 日期:2015年 1月 9日 一、课程设计《》1所示,单词符号中标识符由一个字母后跟多个字母、数字组成,常数由多个十进制数字组成。单词符号的内部表示,即单词的输出形式为二元式:(种别编码,单词的属性值)。 表1-1 单词符号及其内部表示 单词符号 种别编码 单词的属性值 BEGIN IF THEN ELSE END 标识符 整型常数 + * ** ( ) 1 2 3 4 5 6 7 8 9 10 11 12 — — — — — 在名字表中的地址 十进制整数 — — — — — 算符优先分析程序设计的目的与要求 2.1 算符优先分析程序设计的目的 本实验是为计算机科学与技术等专业的学生在学习《》”结尾),如果输入串是句子则输出“YES”,否则输出“NO”和错误信息。 算符优先分析过程与非终结符号无关,当由文法产生了优先关系之后文法也就失去了作用,本题目给出文法的目的是为了便于对语法分析结果进行验证。 (1)文法 设算符优先文法为: 说明:i为整型常数或者为标识符表示整型变量;使用中↑用**表示。 (2)优先关系表 设优先关系表如表1-2所示。 表1-2 优先关系表 + * ↑ i ( ) # + * ↑ i ( ) # 基于算符优先分析方法的语法制导翻译程序的设计的目的和要求 3.1 基于算符优先分析方法的语法制导翻译程序的设计的目的 本实验是为计算机科学与技术等专业的学生在学习《》”结尾),如果输入符号串是句子,则按照其语义进行翻译,输出等价的四元式序列(作为练习应显示输出)。 二、课程设计正文 词法分析器设计 1.1 程序的实现流程 输出提示; 读入源串; 使用循环逐字符检测:如果该首字符是字母,则它是一个标识符或关键字,开始标记;如果首字符是数字,在后面没有字母,则它是数字,有字母则是标识符,开始标记;如果是空格或者运算符则终止这次标记; 每次终止标记前都要输出前面的关键字、标识符或数字,然后输出该运算符,都以二元式形式输出; 检索完最后一个字符或者遇到非法输入则终止检索。 1.2自行规定 关键字:begin,if,then,else,end; 标识符:以字母开头由字母或数字组成并且不属于关键字的单词; 数字:完全由十进制数字组成; 标识符:+,*,**,(,)。 1.3在屏幕上显示 begin:(1,-) if:(2,-) then:(3,-) else:(4,-) end:(5,-) 标识符:(6,在名字表中的地址) 整型常数:(7,十进制整数) +:(8,-) *:(9,-) **:(10,-) (:(11,-) ):(12,-) 1.4程序流程图 是 否 不是 是 是 是 还在数字中 否 是 在标识符中 否 否 是 数字中出现字母 是

您可能关注的文档

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档