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

    编译原理课程设计---一个简单编译器的设计与分析

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

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

    编译原理课程设计---一个简单编译器的设计与分析

    1、 摘要摘要 使用过现代计算机的人都知道,多数用户是应用高级语言来实现他们所需要的计算的。现在计算机 系统一般都含有不只一个的高级语言的编译程序,对有些高级语言甚至配置了几个不同性能的编译程 序,供用户按不同需要进行选择。高级语言编译程序是计算机系统软件最主要的组成部分之一,也是 用户最直接关系的工具之一。 计算机上执行一个高级语言程序一般分为两步:第一,用一个编译程序把高级语言翻译成机器语言 程序;第二,运行所得的机器语言程序求得计算结果。 通常说的翻译程序是指能够把某一种语言程序转换成另一种语言程序 (目标语言程序) 。 如果源语言 诸如 Fortran,Pascal,C,Ada 或 jav

    2、a 这样的高级语言,而目标程序是诸如汇编语言或者机器语言这类 的低级语言,这样的一个翻译程序就是称为编译程序。 一个编译程序的工作过程一般可以划分为五个阶段:词法分析、语法分析、语义分析与中间代码生 成、优化、目标代码生成。每个阶段都是从上一个阶段得到结果,对他进行分析,并且根据一些外部 环境(例如符号表等)得到最终的输出结果。要构造一个编译程序,可以按照这样的阶段来分别构造, 最后来连调。 现在人们已经建立了多种编制部分编译程序或整个编译程序的有效工具。有些能用于自动生成扫描 器(如 LEX),有些可以用于自动产生语法分析器(如 YACC),有些甚至可以用来自动产生整个的编译程 序。这些构造

    3、编译程序的工具成为编译程序编译程序、编译程序产生器或翻译程序书写系统,他们 是按照编译程序和目标语言的形式描述而自动产生编译程序的。 编译程序是一极其庞大而又复杂的系统,掌握它比较苦难。但是一旦对其掌握,对以后的程序语言 设计,系统软件分析,系统软件设计,形式语言研究等方面都是非常有好处的。 关键字:C 语言、 、编译、扫描器、语法分析 一一、需求分析、需求分析 给出类 C 语言(C 语言的子集)的词法和语法定义, 并根据对应的语法定义写出一些属性文法 和语法制导。根据词法和语法的定义,构造一个编译程序,它主要可以完成如下功能: 1、读入某个已经编辑好的类 C 源程序文件,通过词法分析器,生成

    4、二元组,同时检查词法错误; 2、语法分析器将产生的二元组作为输入,进行语法分析,同时检查语法错误; 3、在语法分析同时,利用属性文法和语法制导技术,产生具体的语意动作,并对符号表进行操作; 4、根据语义动作产生整个源程序的四元式序列; 5、将产生的四元式序列连同符号表一起输出,作为编译程序的最终输出结果; 6、对最后的代码优化和目标代码生成要有所考虑,必须留有一定的接口供以后扩展; 7、增大程序的可移植性,努力做到整个系统方便移植。 二、详细算法设计详细算法设计 词法分析程序 语法分析程序 语义分析程序 编译器。 三三、流程图流程图 图 I 主函数示意图 是否为 main? 调用 scanner 是否为(? 调用 scanner 是否为)? 调用 scanner 调用语句块分析函数 staBlock 出错处理 否 否 否 图 II 递归下降分析程序示意图 是否为 ? 调用 scanner 调用语句串分析函数 staString 调用 scanner 是否为 ? 出错处理 否 否 图 III 语句块分析示意图 调用语句分析函数 sta 回溯,调用 backpatc


    注意事项

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




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