欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    编译原理课程设计--一个简单文法的编译器的设计与实现

    • 资源ID:1402298       资源大小:398.50KB        全文页数:44页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    编译原理课程设计--一个简单文法的编译器的设计与实现

    1、编译原理课程设计报告 1 课课 程程 设设 计计 报报 告告 设计题目:一个简单文法的编译器的设计与实现 班 级:计算机1206班 组长学号:2012XXX 组长姓名:XXX 指导教师:XXX 设计时间:2014 年 12 月 编译原理课程设计报告 2 设计分工设计分工 组长学号及姓名:2012XXX XXX 分工:1)读取源文件进行词法分析 2)进行 LL(1)分析生成分析表 3)设计顶层自动机将源程序分段 4)生成可执行的汇编程序 组员 1 学号及姓名:2012XXX XXX 分工:1)设计第二层自动机处理程序片段 2)生成中间语言四元式 3)源程序错误处理 组员 2 学号及姓名:2012

    2、XXX XXX 分工:1)设计第三层自动机处理复合表达式 2)设计带动作的 LL(1) 文法 3)源程序错误处理 编译原理课程设计报告 3 摘摘 要要 编译原理课程具有很强的理论性和实践性,是计算机专业的一门非常重要的专 业基础课程,在系统软件中也是占有十分重要的地位。本次课程设计我们是在 Visual C+的平台上应用了词法分析、语法分析、语义分析、中间语言生成以及目 标语言生成的知识设计了一个简单的编译器前端。其中设计了一个简单的有限自动 机来扫描源程序即进行语法分析,并生成了关键字表、标志符表、界符表、常数表 和 Token 串;设计了一个 LL(1)文法和一个带动作的文法来实现语法分析

    3、,并生成 了 Select 集和 LL(1)分析表;采用了四元式序列的设计来生成中间语言;通过汇编 语言设计来生成目标语言。最后为了使该编译器更加完善,我们设计了简单的的错 误检查机制,能够对源程序进行比较全面的错误检查同时也能够指出错误出现的大 致位置,增强了该编译器的健壮性。 关键字关键字:编译器,前端,有限自动机,LL(1)文法,汇编语言,错误处理 编译原理课程设计报告 4 目目 录录 摘要摘要 3 3 1 1、概述、概述 5 5 2 2、课程设计任务及要求、课程设计任务及要求 5 5 2.1 设计任务5 2.2 设计要求6 3 3、算法与数据结构、算法与数据结构 6 6 3.1 词法分

    4、析器的算法6 3.2 语法分析器的算法 12 3.2.1 LL(1)文法设计算法 12 3.2.2 递归下降子程序设计算法19 3.3 中间语言生成器算法.20 3.4 处理复合表达式算法.24 3.5 目标语言生成器算法 30 3.6 数据结构 39 4 4、程序设计与实现、程序设计与实现 3939 4.1 编译程序设计与实现.39 4.2 程序实验结果 39 4.2.1 待测源程序39 4.2.2 词法分析结果40 4.2.3 语法分析结果41 4.2.4 中间语言生成结果42 4.2.5 目标语言生成结果43 4.2.6 程序错误处理结果44 5 5、参考文献、参考文献 4444 编译原

    5、理课程设计报告 5 1 1、概述、概述 本次课程设计的编译程序主要包括了词法分析器、语法分析器、中间代码生成 器和目标代码生成器四部分,编译程序的输出结果包括了词法分析后的关键字表、 界符表、标识符表和 Token 串,语法分析后的 Select 集和 LL(1)分析表;中间代码 生成器产生的四元式序列。最后除了完成设计所要求的内容之外,我们还做了一些 扩展例如:设计了目标代码生成器来生成可执行的汇编程序;还设计了错误检查机 制来查找源程序的错误并指出错误产生的大致位置。 词法分析是编译程序的第一步操作,它的任务是:从左至右扫描源程序的字符 串, 按照一定的词法规则识别出一个个正确的字符, 并

    6、转换成该字符相对应的 Token 码,最终生成一个完整的 Token 串以供语法分析使用。由此可知,词法分析是整个 编译程序的基础,而执行词法分析的一系列操作的就是词法分析器。 语法分析是编译程序的第二步操作也是编译程序的核心部分,其主要任务是: 分析语法内容,确定语法结构同时生成 Select 集和 LL(1)分析表。 中间代码和目标代码的生成是对源程序的进一步操作,其任务是:根据词法分 析产生的 Token 串和语法分析确定的语法结构来生成中间语言四元式和目标语 言汇编语言程序。 2 2、课程设计任务及要求、课程设计任务及要求 2.12.1 设计任务设计任务 一个简单文法的编译器前端的设计与实现 定义一个简单程序设计语言文法(包括变量说明语句、算术运算表达式、赋值 语句;扩展包括逻辑运算表达式、If 语句、While 语句等) ; 扫描器设计实现; 语法分析器设计实现; 中间代码设计; 编译原理课程设计报告 6 中间代码生成器设计实现。 目标代码生成器设计实现 2.22.2 设计要求设计要求 给出一个源程


    注意事项

    本文(编译原理课程设计--一个简单文法的编译器的设计与实现)为本站会员(毕***)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583