版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、tiny编译器及其使用,杨晓波 2014-3-3,实验资料说明,从课程中心-编译原理(注:杨晓波)-教学资料-实验中下载loucom.ZIP并解压,使用现有tiny编译器,1.运行tiny编译器(tiny.exe) 在命令行键入:TINY SAMPLE,TINY目录中生成可以在TM虚拟机上运行的目标代码文件sample.TM,使用现有tiny编译器,2.在目标机(TM.exe)上运行目标代码 在命令行键入:TM SAMPLE,TM虚拟机开始运行如下图所示:,在TM虚拟机执行目标代码,在“Enter command:”提示后输入g,执行目标代码中的TM指令直至停机。 然后在“Enter valu
2、e for IN instruction”后输入数字,如:6,按回车。,将编译器和虚拟机源代码转换为exe,(1)生成tiny编译器 在VC+新建一个win32 console application的空工程(如:all),把编译器相关的源代码加入 除了tm.c外的所有.c文件和.h文件 编译并生成all Build-rebuild all或build all.exe (2)生成TM虚拟机 方法同上,用TM.C建立工程,条件编译,为方便调试和教学,TINY语言编译器设置了若干条件编译标志,可用于方便地创建部分编译器。 标志和构造部分编译器时所需文件如下表所示:,条件编译举例:词法分析器,任务
3、生成运行tiny的词法分析器 实验原理 状态图代码化 或使用词法分析自动生成工具lex,(一)生成并运行TINY的词法分析程序,(1)生成tiny词法分析器 在VC+新建一个win32 console application的空工程(如:cifa),把词法分析相关的源代码加入 通用文件:main.c,globals.h,util.c,util.h 词法文件:scan.c和scan.h 修改main.c中条件编译标志和控制显示标志 NO_PARSE:从FALSE改为TRUE EchoSource和TraceScan:从FALSE改为TRUE 编译并生成cifa Build-rebuild all
4、或build cifa.exe,(2)运行tiny词法分析器,方法二,使用Parser Generator生成词法分析程序(详见课程中心工具配置说明) 设置parser generator的环境 修改vc+的目录设置使其可找到包含文件yacc.h和lex.h以及YACC和Lex的库文件 使用Parser generator的project-projectWizard建立一个目标语言为C, lex only,不创造main函数的分析器(见下页) 把tiny.l的内容复制并替换向导生成的lex源代码 点击project-build或按F7生成词法分析程序mylex.c和mylex.h 再如前新建一
5、个工程把词法分析要用到的程序加入后生成词法分析程序的exe Main.c,mylex.c,util.c Globals.h,mylex.h,util.h(似乎还要把scan.h加入) 设置VC+项目的环境,使用flex,Flex tiny.l生成lex.yy.c 再如前新建一个工程把词法分析要用到的程序加入后生成词法分析程序的exe Main.c, lex.yy.c,util.c Globals.h, util.h,scan.h 设置VC+项目的环境,参考资料,Kenneth C. Louden著,冯博琴等译.编译原理及实践.机械工业出版社,1997 赵建华,郑滔,戴新宇译.编译原理.机械工业出版社,2009 GCC编译器 / f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 对客户服务反馈进行回复函(8篇)
- 采购成本估算与报价对比工具
- 业务连续性与服务质量承诺书(4篇)
- 企业内外部沟通一体化平台
- 2026苏州东山宾馆有限责任公司招聘延期笔试模拟试题及答案解析
- 2026福建厦门海峡投资有限公司社会招聘2人考试备考题库及答案解析
- 2026年山东大学实验学校(青岛蓝谷中学、青岛蓝谷小学)非事业编制教师招聘笔试模拟试题及答案解析
- 项目团队工作效率提升标准化指南
- 跨行业的培训效果评估模板
- 为群众服务承诺书3篇
- 仰卧起坐课件
- T-AOPA0070-2024架空输电线路无人机激光扫描数字航拍勘测技术规范
- 清华附中招生考试原题及答案
- 2025年NISP信息安全专业人员一级考试真题(一)(含答案解析)
- 来料检验员上岗培训
- 2024~2025学年天津市第二十一中学下学期八年级历史第一次月考试卷
- 2025年压力管道设计人员培训考核试题及答案
- 高考数学必考知识点统计表
- 口腔颌面部肿瘤综合治疗方案
- 2025年大学《数据计算及应用》专业题库- 人体生理数据分析与健康管理
- 局机关网络安全培训课件
评论
0/150
提交评论