合肥工业大学编译原理实验报告.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
合肥工业大学 编译原理实验报告 合肥工业大学计算机与信息学院 编译原理实验报告 专 业 : 学 号 : 姓 名 : 指导老师 : 完成时间 : 实验一 词法分析设计 一、 实验目的 通过本实验的编程实践,使学生了解词法分析的任务,掌握词法分析程序设计 的原理和构造方法,使学生对编译的基本概念、原理和方法有完整和清楚的理解, 并且能够正确和熟练地运用。 二、 实验环境 Windows 8.1 、Visual Studio 2013 、C++ 三、 实验原理 (1) 实验数据结构说明 string str[40] 存储 string int strcount 存储 string 的数目 string name 存储 type 名 Table() 构造函数 ~Table() 析构函数 Table void setname(string strTemp) 设置 name值 string getname() 获取 name值 void update(string strTemp) 添加 strTemp 的值 void init(string filename) 初始化 table int search(string strTemp) 在 table 中查询 strTemp string value 存储分析单词的值 int type Type 的编号 int pointer 单词的位置 OutToken string tyname 存储在表中位置 int line 分析单词的行的值 int row 分析单词的列的值 OutToken(string val,int t,int p,string tn,int 有参数构造函数 l,int r) ~OutToken() 析构函数 friend ostream operator (ostream output, 重 载 函数 OutToken ot) Table Keyword Type 1:C++ 关键字 Table Seperator Type 2: 分界符 Table sumoperator Type 3: 算术运算符 Table reloperator Type 4: 关系运算符 Table constant Type 5: 常数 Table identifier Type 6: 标识符 OutToken outtoken 二 元式 TokenAnalyzer TokenAnalyzer() 构造函数 ~TokenAnalyzer() 析构函数 void inittable() 初始化表 void display() 输出所有单词二元式 void strsearch(string strin,int line,int row) 分析 strin void readcode() 读取源代码 (2) 实验算法描述 1) 词法分析设计流程图 2) 词法分析程序框图 3) 统计字符位置程序框图 四、 实验内容 使用 C++语言实现对 C++语言字集的源程序进行词法分析。通过输入源程序从 左到右对字符串进行扫描和分解,依次输出各个单词的内部编码及单词符号自身值 ; 若遇到错误则显示 ERROR,然后跳过错误部分继续显示 ; 同时进行标识符登记符号 表的管理。 词法分析设计主要工作 : (1) 从源程序中读取字符 (2) 统计行数和列数用于错误单词的定位 (3) 删除空格类字符,包括回车、制表符空格 (4) 按拼写单词,并用 ( 内码,属性 ) 二元式来表示, ( 属性值— Token 的 机内表示 ) (5) 如

您可能关注的文档

文档评论(0)

153****0404 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档