- 1
- 0
- 约1.94千字
- 约 27页
- 2019-02-21 发布于湖北
- 举报
一、为什么要进行编译实习 二、如何组织实习 三、如何辅导与检查 四、成绩如何计算 五、其它信息 课 程 介 绍 精选编制 一、为什么要进行编译实习 宋·陆游 古人学问无遗力 少壮工夫老始成 纸上得来终觉浅 绝知此事要躬行 精选编制 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 完成词法分析器 与 语法分析器 生成目标码 怎么做? 精选编制 编译器的基本内部流程 前端(分析) 后端(综合) 内 部 表 示 目标程序 源程序 出错信息 指令 选择 分配 寄存器 词法 分析 语法 分析 扫描 精选编制 Eclipse 开发环境 MiniJava 编译器 扫描器 词法 分析器 语法 分析器 语义 分析器 寄存器 分配 代码 生成 Java 语言 JavaCC MiniJava Grammer SPIM 编译器内部模块 课堂介绍内容 精选编制 面向实际项目 探索课程间协作 鼓励创新 总共4个左右 2-3人 一个项目 自选题目(少数) 精选编制 自选题目(少数) 题目来源 与《体系结构实习》联合 软件分析 多核相关 自己设计 例如: 不同方式界面的转换 精选编制 时间安排 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 答疑 12.17 演示、点评 明确任务 规划题目 词法分析 语法分析 抽象语法 (数据流分析) 中间代码 最终集成 语义分析 目标代码 实习报告 精选编制 课程介绍 */27 编译实习 编译实习 编译实习 北京大学信息学院 王 千 祥 精选编制 理科一号楼1803 如何与老师联系? Email:wqx@pku.edu.cn 电话O) 高级软工、操作系统 精选编制 助教: 邵津 shaojin07 梁广泰 lianggt08 刘海文 liuhw08 石奎 shikui08 @sei.pku.edu.cn 同教: 郭耀 参与 辅导环节 与 成绩计算环节 联系方式:略 理科1号楼1726 精选编制 课程介绍 */27 编译实习 编译实习
原创力文档

文档评论(0)