NTHU_Course 板


LINE

※ [本文转录自 candog 信箱] 作者: [email protected] ("FireBolt") 标题: [心得] 编译器设计 锺叶青 时间: Wed Feb 15 01:32:46 2017 作者: koviankevin (Stolton) 站内: nthu.course 标题: [心得] 编译器设计 锺叶青 时间: 2011/07/06 Wed 16:10:17 课名:编译器设计 Compiler Design 科号:09920CS 340400 老师:锺叶青 课本:Crafting a Compiler with C', C. Fisher an R. Leblanc, 1991. 课别:资工系选修 学分:3 凉度:★★ 甜度:★★★★☆ 建议先修课程:程式设计 课程内容\简介: - Introduction (ch1) 简单介绍compiler在干嘛 - A Simple Compiler (ch2) 介绍一个简单的compiler,然後作业要写出来 - Scanning - Theory and Practive (ch3) 介绍scanner的作法 - Grammar and Parsing (ch4, First_Follow_Set) 介绍grammar的一些名词还有first set、follow set的求法 - Top-Down Parsing (ch5) 介绍LL parser - Bottom-Up Parsing (ch6-1, ch6-2, ch6-3) 介绍LR、SLR、LALR parser - Syntax-Directed Translation (ch7) 简介一些code generation的技巧 - Symbol Table and Declaration Processing (ch8) 介绍symbol table的实作方式 第八章只教一点点 上课方式: 每一章节都会发投影片讲义 很多很复杂的步骤都会讲得很清楚(课本可能就几行带过) 像是regular expression的ODFA得到的过程 LL、LR等等transition table得到的过程 在投影片都是每一步都列出来(所以页数很多) 上课速度本学期好像跟以前比有加快一些 因为老师想要多教点code generation的部分 不过最後还是没多教多少 老师都会在他要出国的时候考试 不然就是请助教讲lex and yacc 这两个工具只在最後一个作业时才用到 给分: 原本: 1. Programs: 40% (4次,各10分) 2. Mid-term Exam.: 20% 3. Final Exam: 30% 4. Quiz & Participation: 10% 最後: 1. Programs: 50% (最後一次20分,其他10分) 2. Exam.: 50% (考三次取两次,高的占30%,低的占20%) 3. Quiz & Participation: 10% (上课全到至少拿8分,quiz可看讲义) 而且无条件进位,逢九进十...有参与整学期课程的大概就过了 考试作业型态: 考试:考题其实都很简单 只要上课的例子都有弄懂大概就没有问题 但是写起来的过程非常烦 一点错可能就会让後面的也错 不只考上课内容也考细心 第三次考试有90%跟前两次一样 虽然助教似乎有改的比较严一点 但是有认真看应该都可以考不错 作业: Assignment 1: Micro Language Compiler 依照课本上的code大概就可以完成70%的作业 只要弄懂其中的关系把缺的部分补齐就可以了 Assignment 2: Lexcial parser for C 写一个Mini C的Scanner,反正就是很删减版的C 要判断一些符号或者是保留字 正常的作法是要依课本上建立finite state machine在化简 不过把state table写死也是可以的(容易很多) Assignment 3: LL(1) parser for C Grammar 给一个grammar要做出他的parsing tree 这个应该是四个作业里面最麻烦的 因为输入grammar之後要自动建立first set、follow set、predict set 然後才能得到parsing table 课本上都有写出上述程式的pseudo code 要实作出来虽然有些难度不过也没有到非常难的地步 其中最要小心的大概就是一个set做错大概後面就会有错 Assignment 4: Code generator for C Codes 这是唯一可以用lex和yacc来做的 lex可以取代第二个作业做的事情 yacc则是取代第三个作业 这两个真的是很厉害的工具 只要会使用整个作业就简单很多 而code generation的部分 本学期是产生MIPS组合语言 如果是本系生大概计算机结构都学过 翻翻之前的课本应该不是难事 而且助教已经事先公布所使用的测资 只有简单的加减乘除和IF-ELSE而已 比较困难的是要在grammar中加入适当指令来传递资料 这个就...看个人造化了XD 老师的喜好、个性: 蛮随和的,而且是少数在上课前五分钟就会进教室的教授 给加签吗? 没满 成绩分布: 99(有人比我高,但是逢九进十为什麽没有进位我也不知道XD) ↓每组人数 A+ 19.0% (11) A 6.9% ( 4) A- 12.1% ( 7) B+ 0.0% ( 0) B 6,9% ( 4) B- 19.0% (11) C+ 6,9% ( 4) C 12.1% ( 7) C- 5.2% ( 3) D以下 12.1% ( 7) (3个F,4个X) 58 人 --  ┌─│┌┌─┌─╮─┬┌─╮│ ┌─ telnet://imaple.tw  ├─││├─├┬╯ │├─││ ├─  IAS_EverTale   └─╯└─│╰ ││ ╯└─└─故 事 接 龙 板驿NAYURI  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ◆ From: koviankevin从114.43.185.89 wowslr推荐这堂课 07/06 17:11olfq christian老师的会早到教室给同学问问题 也很爱叫大家举手 07/06 22:40aQnF fasthall就算是大师也不太推 我觉得他教学没有认真准备 01/01 22:36aQMN



※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: candog (140.114.32.68), 02/15/2017 12:17:24







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP