(编译技术课程设计指南信息2012.docVIP

  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文档。上传文档
查看更多
(编译技术课程设计指南信息2012

课程设计指导书 编 译 技 术(分册) 唐仕喜 盐城师范学院信息科学与技术学院 2012.9 《编译技术》课程设计 一、概 述 (一)课程设计的性质、目的与作用 编译技术是计算机及其相关专业一门重要的核心课程,是学习计算机软件的重要课程。从实际工作需要来看,仅靠教学计划安排的课内实验时间是不够的,为了帮助广大同学对编译过程有更好的掌握,提高运用编译技术和有关形式语言理论和方法解决实际问题的能力,需要对编译过程及涉及到的编译技术进行系统的实践训练,故编写《编译技术》课程设计这部分内容。 课内的实验是侧重于对某一方面知识的学习,在解决实际问题时,可能涉及并运用多个方面的知识,具有较强的综合性,这就需要进行一些综合性的设计练习,来提高分析和解决实际应用问题的能力。 编译技术课程设计的目的是进一步培养学生编译器设计的思想,加深对编译技术和应用程序的理解,针对编译过程的重点和难点内容进行编程,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。 为了使学生从课程设计中尽可能取得比较大的收获,课程组对课程设计题目精心设计,学生从这些题目中选择,完成一个题目的部分内容。包括: 1.词法分析与设计类(共2个); 2.语法分析与设计类(共5个); 3.中间代码生成分析与设计类(共1个)。 (二)课程设计的要求 在课程设计时,对要解决的问题,要注意以下几个方面: 1.正确:设计的算法要严谨、正确,能正确解决实际问题,符合指定的要求; 2.高效:有效的建立数学模型,合理的选择数据结构,编写高效的程序代码; 3.清晰:算法和程序的结构要清晰,算法要用流程图来表示,程序代码要加注解; 4.设计报告:每一个问题解决后,要按统一的纸张及格式,完整、整洁地写出设计报告,打印程序清单,拷贝所做设计的电子版文档和程序。 (三)设计报告格式 在将综合设计作为教学的一个环节时,设计报告一般包括以下几个方面的内容: 1.问题描述 题目要解决的问题是什么 2.算法设计与功能模块 解决问题的基本方法说明,包括主要算法思想,算法的流程图。 程序中主要函数或过程的功能说明。 3.程序输入与结果输出。 4.总结 遇到的主要问题是如何解决的、对设计和编码的回顾讨论和分析、进一步改进设想、经验和体会等。 5.附录 源程序清单 (四)考核评估 通过程序实现、总结报告和学习态度综合考评,并结合学生的动手能力,独立分析解决问题的能力和创新精神。成绩分优、良、中、及格和不及格五等。 考核标准包括: 1.程序实现的正确性,包括程序整体结构是否合理、编程风格是否规范等。(25%) 2.程序功能的完善程度,包括功能的基本实现、基本完善、完全实现。 (25%) 3.学生的工作态度、独立工作能力。 (25%) 4.课程设计报告。 (25%) 考核标准方式:面试,根据课程设计报告和所做模块提3-5个问题,当场给分。 三、《编译技术》课程设计课题表 【课题 1】设计一个词法分析器。(2人) 【基本要求】 词法分析器基本功能是: 输入源程序:输入PASCAL源程序; 输出单词,输出形式为:(序号,单词,对应源程序行号,对应源程序列号); 输出出错信息,输出形式为:(出错行号,出错列号,出错信息); 输出符号表,输出形式为:(单词种别码,单词符号); 【测试数据】 (1)输入源程序: program example1; var a,b,c:integer; x:char; begin if (a+c*3 b) and (b3) then c:=3; x:=2+(3*a)-b*c*8; if (2+3 a) and (b3) and (ac) then c:=3; for x:= 1+2 to 3 do b:=100; while ab do c:=5; for x:= 1+d to 3 do b:=15; while tb do c:=5; repeat a:=10; until ab; end. 【课题 2】设计一个由正则表达式生成有限自动机的算法动态模拟。(2人) 【基本要求】 动态模拟算法的基本功能是: 输入一个正则表达式; 输出正则表达式转化为有限自动机的算法; 输出有限自动机状态图生成过程; 【测试数据】 输入正规式:(a|b)*(aa|bb)(a|b)* 【课题 3】设计一个对算术表达式求值的程序。(2人) 【基本要求】 基本功能是: 输入算术表达式; 用递归下降分析法判别其中算术表

文档评论(0)

jishu9527 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档