- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[黄伟论文答辩
本科毕业设计论文答辩用递归子程序实现语法分析 指导老师:薛贺 答辩人:黄伟 软件工程 070117 目录 §主要技术指标 §编译系统概述 §编译程序的工作过程 §语法的分析与加工 §递归子程序方法 §总结 §致谢 主要技术指标 根据 C-语言的词法规则,进行单词符号的编码,设计数据结构。 构造语法分析器的状态转换图, 设计C-语言的词法分析程序的算法 。 实现 C-语言的语法分析器对输入的源程序进行扫描和分析,识别出单词符号。 编译系统概述 编译程序是一种将高级语言编写的源程序编译成机器语言程序(称为目标程序)的实用程序。 编译器是将一种语言翻译为另一种语言的计算机程序。编译器将源程序(source language)编写的程序作为输入,而产生用目标语言(target language)编写的等价程序。通常地,源程序为高级语言(high-level language),如C或C++,而目标语言则是目标机器的目标代码(object code,有时也称作机器代码(machine code)),也就是写在计算机机器指令中的用于运行的代码。 编译程序的工作过程 为了将源程序翻译成目标程序,一般都要包括以下几个步骤。 ① 输入源程序。 ② 对以机内码表示的源程序进行词法分析,辨认出一个个单词符号。 ③ 根据源语言的语法规则进行语法分析。 ④ 在实际运行之前,通常还要对目标程序的各部分进行连接装配 。 语法的分析与加工 语法分析和加工的主要任务有以下几项。 ① 识别出各种类型的语句,并进行语法检查。 ② 语法的加工处理。 ③ 编译程序工作的最后结果是产生目标程序或半目标程序。 递归子程序方法 递归子程序方法是一种自顶向下的编译方法,其思想是通过对源程序的每个语法成分编制一个处理子程序,通过子程序调用来对源程序进行语法和语义分析。 编写程序,实现对词法分析程序所提供的单词序列进行语法检查和结构分析。 递归子程序 递归下降的思想在于“递归”二字,对于每一个消除了左递归的产生式,通过为每一个产生式建立一个函数,函数名为相应的产生式的左部,然后对产生式的每一项进行展开,如果产生式的右部碰到一个非终结符,则调用这个非终结符的函数(该非终结符肯定是一个产生式的左部,为之建立一个函数),如果遇到的是一个非终结符,则调用match()方法(见下文),match方法除了匹配当前的非终结符之外,还调用了词法分析的token方法,读取下一个单词。 总 结 在试验的过程中,遇到了一些问题,都是粗心大意而造成,并非是对文法分析和编程的熟悉问题,说明了我再以后的试验中应该更细心的编写程序的每一步,对于本次试验所出现的马虎,应该牢记,以后不再犯同样的错误。 通过这次毕业设计,培养了我综合运用所学的基础理论课,技术基础课,专业课的知识和实践技能去分析和解决实际工作中的一般问题的能力,使我建立了正确的设计思想,学会如何把四年所学的理论知识运用到实践当中去。 致 谢 转眼间,大学的生活就要结束! 由于你们的细心指导和关怀,使我能够顺利的完成毕业论文。在我的论文中倾注着老师们辛勤的汗水和心血… 老师的严谨治学态度、渊博的知识、无私的奉献精神使我深受启迪。从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢。 老师,您辛苦了!!! * * * * * * * * * * * * Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd.
文档评论(0)