网站大量收购独家精品文档,联系QQ:2885784924

编译原理研究性教学安排级计算机.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理研究性教学学习内容 研究性学习目标 编译系统是计算机系统重要的系统软件之一,编译原理课程主要讲授编译系统重要组成部分程序设计语言编译程序的设计原理和实现技术,是计算机科学与技术专业学生的必修专业课程,也是每个优秀的计算机专业人员必修的一门课程,更重要的是,编译原理课程中蕴含着计算机科学中解决问题的思路、抽象问题和解决问题的方法,其内容可让计算机专业学生“享用一辈子”。 本课程开展研究性教学的目是,在教师的引导下以问题回朔与思维启发的方式,使学生在不断的探究过程中掌握编译程序设计和构造的基本原理和实现技术,启迪学生的抽象思维、激发学生的学习兴趣、培养学生的探究精神和专业素养,从而提高学生发现问题、分析问题和解决问题的能力。 二、研究性学习任务 以理论与教学紧密结合的六个研究性学习专题作为教学载体,这六个研究专题是: 词法分析程序构造原理与实现技术 递归下降语法分析设计原理与实现技术 LL(1)语法分析设计原理与实现技术 算符优先语法分析设计原理与实现技术 LR(0)语法分析设计原理与实现技术 语义分析及中间代码生成程序设计原理与实现技术 以上内容专题1必做,专题2、3、4选择2个完成,占期末总成绩的30分。 专题5和6为附加选做题,完成后可加分3分和5分。 三、研究性学习内容设计 研究性学习专题一 词法分析程序构造原理与实现技术 理论传授 源程序输入与词法分析程序输出的基本方法;正则文法及其状态转换图的基本概念,正则表达式及有限自动机的基本概念;正规文法构造相应的状态转换图的基本方法;正则表达式构造有限自动机的基本方法及不确定有限自动机确定化的基本方法;词法分析程序的设计与编写。 目标任务 [实验项目] 完成以下正则文法所描述的Pascal语言子集单词符号的词法分析程序。 标识符→字母︱ 标识符字母︱ 标识符数字 无符号整数→数字︱ 无符号整数数字 单字符分界符 →+ ︱- ︱* ︱; ︱(︱) 双字符分界符→大于=︱小于=︱小于︱冒号=︱斜竖* 小于→ 等于→= 大于→ 冒号 →: 斜竖 →/ 该语言的保留字 :begin end if then else for do while and or not [设计说明] (1)该语言大小写不敏感;(2)字母为a-z A-Z,数字为0-9;(3)可以对上述文法进行扩充和改造;(4) ‘/*……*/’为程序的注释部分。 [设计要求] (1)给出各单词符号的类别编码;(2)词法分析程序应能发现输入串中的错误;(3)词法分析作为单独一遍编写,词法分析结果为二元式序列组成的中间文件;(4)设计两个测试用例(尽可能完备),并给出测试结果。 [提交文档] (1)程序功能描述;(2)主要数据结构描述;(3)程序结构描述:设计方法、函数定义及函数之间的调用关系、程序总体执行图;(4)程序测试:测试用例、测试结果;(5)学习总结:实验过程中遇到的主要问题、如何克服、对你的程序进行评价、对问题的深入理解和实验的收获。 任务分析 重点解决正则文法到状态转换图的转化问题。 能力培养 深入理解理论对实践的指导作用;基本原理、实现技术和方法的正确运用。 研究性学习专题二 递归下降语法分析设计原理与实现技术 1、理论传授 语法分析的设计方法和实现原理;LL(1)文法及其判定;无回朔的递归下降分析的设计与实现; 2、目标任务 [实验项目]完成以下描述算术表达式的LL(1)文法的递归下降分析程序 G[E]: E→TE′ E′→ATE′|ε T→FT′ T′→MFT′|ε F→ (E)|i A→+|- M→*|/ [设计说明] 终结符号i为用户定义的简单变量,即标识符的定义。 [设计要求](1)输入串应是词法分析的输出二元式序列,即某算术表达式“实验项目一”的输出结果,输出为输入串是否为该文法定义的算术表达式的判断结果;(2)递归下降分析程序应能发现输入串出错;(3)设计两个测试用例(尽可能完备,正确和出错),并给出测试结果。 [提交文档](1)设计文档(提交书面文档);(2)程序功能描述;(3)主要数据结构描述;(4)程序结构描述:设计方法、函数定义及函数之间的调用关系、程序总体执行图;(5)程序测试:测试用例、测试结果;(5)学习总结:实验过程中遇到的主要问题、如何克服、对你的程序进行评价、对问题的深入理解和实验的收获。 4、任务分析 重点解决LL(1)文法到递归子程序框图的设计。 5、能力培养 深入理解理论对实践的指导作用;基本原理、实现技术和方法的正确运用。

文档评论(0)

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

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

1亿VIP精品文档

相关文档