編译原理课程实践改革探索.pptVIP

  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文档。上传文档
查看更多
編译原理课程实践改革探索

编译原理课程实践改革探索 中国科学技术大学 计算机科学技术系 张昱 陈意云 0551-3603804,{yuzhang,yiyun}@ /~yuzhang/compiler 第二届中国计算机教育与发展学术研讨会 2008年5月9日 济南 山东大学 编译原理课程实践改革探索 2/35 提纲 引言 课程实践方案 规划与历程 课程实验的组成要素 实验平台与相关工具 课程设计软件包的特点 实验改革实践与经验教训 课堂教学中与实际的联系 2 编译原理课程实践改革探索 3/35 计算机科学与技术学科的本科教学目标 计算机科学与技术学科的毕业生除了要掌握该学科的各个知识领域的基本知识和技术之外,还必须具有较扎实的数学功底,掌握科学的研究方法,熟悉计算机如何得以实际应用,并具有有效的沟通技能和良好的团队工作能力。 ——中国计算机科学与技术教程2002(CCC2002) 编译原理课程实践改革探索 4/35 专业实践及其意义 专业实践的形式 课程实践、实习、毕业设计、竞赛、…… 专业实践的意义 激发学生的学习兴趣 巩固和消化课堂知识 提高实践技能 培养创新能力 增强交流能力 编译原理课程实践改革探索 5/35 存在问题 毕业生在就业中暴露出的一些问题 动手能力较差 分析问题、解决问题能力较薄弱 岗前技术培训:其中有些是学校可以做而没有做的 岗前工程意识、质量意识和团队精神的教育:学校也可以逐步培养的 课程实践中存在的问题 各课程的课程实践各自独立 内容陈旧、覆盖面窄、综合性不高、难度低、规模小 不注重对学生工程、质量、团队等意识的培养 学生数增加,检查力度和深度不够 学生对课程实践的热情未调动起来,拷贝风气增长 编译原理课程实践改革探索 6/35 专业实践改革 指导思想 首先抓课程实践改革,课程实践要整体规划 像讨论教学计划那样来讨论技术水平的培养:语言、工具、平台的覆盖范围和相互之间的衔接。 其覆盖程度依赖于 制度的保证、学科机构的资源、教职人员的利益 软件类的课程实践 学生至少参与完成一个有一定规模的软件项目的设计与开发, 涉及对多门课程所学原理的综合运用 遵循由小到大、循序渐进的原则 整体规划课程实践涉及的语言、工具和环境 注意培养工程意识、质量意识和团队意识 编译原理课程实践改革探索 7/35 专业实践改革 软件类的课程实践 低年级的课程实践(如C语言、数据结构) 以巩固课程知识的小实验为主 训练学生基本的程序设计技能 高年级的课程实践(如编译原理、操作系统等) 以综合运用的课程设计为主 训练学生软件工程的能力 编译原理课程实践改革探索 8/35 提纲 引言 课程实践方案 规划与历程 课程实验的组成要素 实验平台与相关工具 课程设计软件包的特点 实验改革实践与经验教训 课堂教学中与实际的联系 8 编译原理课程实践改革探索 9/35 课程实践的规划 定位:综合运用的课程设计 (通过合作)为某个语言设计开发一个可运行的编译器 为适应个性化学习,布局多个小型课程设计 学生可针对自己的基础选择适合自己的课程设计,当然不同难度系数的课程设计的得分不一样。 历程 调研?做UC Berkeley的编译课程设计?设计适合国情的课程设计及其支持软件与文档 2007/2008年春:在04/05级本科生中开展编译实验 目前仍在进一步改进和完善中 编译原理课程实践改革探索 10/35 课程实验的组成要素(1) 源语言 SimpleMiniJOOL语言(仅有一个main函数、整型) SkipOOMiniJOOL语言(非面向对象,有整型、布尔型、一维数组类型) MiniJOOL语言(面向对象) 中间表示 高级中间表示:Eclipse JDT中的AST 低级中间表示:降低汇编代码生成的难度,开展优化 目标机的选择 X86: CISC MIPS: RISC 编译器组件:分析器、解释器、优化器、汇编代码生成器…… 汇编代码的内部表示 统一表示,以此为基础设计实现寄存器分配器 编译原理课程实践改革探索 11/35 课程实验的组成要素(2) MiniJOOL程序 转换器 优化器 低级中间表示 (三地址码) X86汇编代码 生成器 MIPS汇编代码 生成器 寄存器分配器 分析器 编译原理课程实践改革探索 12/35 实验平台与相关软件(1) 编译器开发所使用的语言:Java Java SDK 1.5以上 Eclipse IDE 分析器的生成工具 词法分析器的生成工具:JFlex LALR分析器的生成工具:CUP LL(k)分析器的生成工具:Java CC 目标机 X86汇编代码:GCC(MinGW), GDB MIPS汇编代码:SPIM模拟器 编译工具:ant 编译原理课程实践改革探索 13/35 实验平台与相关软件(2) 实验平台软件(当前的版本

文档评论(0)

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

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

1亿VIP精品文档

相关文档