- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译实习 课 程 介 绍 一、为什么要进行编译实习 二、如何组织实习 三、如何辅导与检查 四、成绩如何计算 五、其它信息 一、为什么要进行编译实习 宋·陆游 古人学问无遗力 少壮工夫老始成 纸上得来终觉浅 绝知此事要躬行 Learning by doing 任何人 想 仅仅通过单纯的阅读 而 不把所学到的知识应用于特定问题 并 强迫自己反复进行思考 就 掌握一门学问 如果说 不是不可能的 那也是困难的 凡是 人们自己亲身探索、体会到的东西 学得最好 课程目的 巩固所学习的编译知识 深入理解编程语言:新语言? 深入理解处理器:多核编程? 学习典型开发工具:新工具? 体会大项目流程:软件工程? 学、做、说、写 学: 学习 编译知识、开发工具、开发流程 做: 开发 解释器、编译器 说: 讲解 自己的工作 写: 撰写 基于 自己工作 的 报告 主要挑战是什么 警示数据 08年未获得成绩率:15/122! 缓考 笔试分数低 未交作业 作弊 为什么? 难!必修---限选;教务 目标不清楚 时间投入不足 二、如何组织实习 与以往有较大不同 从 老教师 到 新教师 从 指定到 指定 + 自选 给同学更多的选择 教材 从无到有 参考 国内其他学校 从 C 到 Java 实用性更强 从 2 次检查 到 4 次检查 更多的过程控制点 开发一个 miniJava 的编译器 1-2人 1人为主:完整体验 允许2人:极限编程 Vs. 滥竽充数 便于辅导、检查 MiniJava 编译器描述 输入 符合 MiniJava 语言规范的源程序 P 输出 对 P 进行编译 检查 P 的词法、语法、语义、(优化) 生成能在 SPIM 上运行的目标码 怎么做? 热身:直线程序解释器(第一月) 语言简单 不借助任何工具(直接在JDK上运行) 体会编译涉及的基本环节 熟悉工作环境: JDK, (Eclipse) 实战:MiniJava 编译器(第二、三月) 复杂,但比完整的 Java 语言简单 借助工具 JavaCC 完成词法分析器 与 语法分析器 生成目标码 编译器的基本内部流程 MiniJava 编译器 面向实际项目 探索课程间协作 鼓励创新 总共4个左右 2-3人 一个项目 自选题目(少数) 题目来源 与《体系结构实习》联合 软件分析 多核相关 自己设计 例如: 不同方式界面的转换 三、如何辅导与检查 4位助教为主 每位助教负责:1 + 1 + 1 1个班 1个自选题目 1次点评 辅导与检查方式 辅导方式 作业批注 上课点评 检查方式 电子方式提交 北大教学网() 约定时间到院软件实验室检查 集中、顺序 现场 询问、检查 四、成绩如何计算:4+1 4次 平时作业:程序4 * 20 = 80% 1个 实习报告:文档+体会+建议1 * 20 = 20% 总体上:按学校要求的正态分布 85(含)以上:1-45 人 60(不含)以下:1-5 人 五、其它信息 * 课程介绍 */27 编译实习 * 编译实习 北京大学信息学院 王 千 祥 理科一号楼1803 如何与老师联系? Email:wqx@ 电话O) 高级软工、操作系统 助教: 邵津 shaojin07 梁广泰 lianggt08 刘海文 liuhw08 石奎 shikui08 @ 同教: 郭耀 参与 辅导环节 与 成绩计算环节 联系方式:略 理科1号楼1726 非常投入 非常收获! 非常投入 非常投入 非常投入 指定题目(多数) 前端(分析) 后端(综合) 内 部 表 示 目标程序 源程序 出错信息 指令 选择 分配 寄存器 词法 分析 语法 分析 扫描 Eclipse 开发环境 扫描器 词法 分析器 语法 分析器 语义 分析器 寄存器 分配 代码 生成 Java 语言 JavaCC MiniJava Grammer SPIM 编译器内部模块 课堂介绍内容 自选题目(少数) 时间安排 9.17 课程介绍,题目介绍 9.24 Java、Eclipse 介绍 10.15 MiniJava 语法、题目筛选 10.22 JavaCC 介绍 10.29 答疑 11.5 点评 11.12 答疑 11.19 答疑 11.26 点评,SPIM 介绍 12.3 答疑 12.10 答疑 1
文档评论(0)