【哈工大编译原理资料分享和复习建议】

笔者刚刚经历了大三下最痛苦的一段时间,即专业核心课实验+编译系统考试+数据库系统考试(有人说这算什么?回答:菜鸡本菜)。尽管有很多学长学姐写的经验贴,但是于我而言,复习期间发现他们所描述的并不总是那么奏效,于是我决定结合自身经验,浅写一下复习经验,也是趁着记忆尚存,权作纪念。笔者为了大家复习方便,不眼花缭乱,病急乱投医(网上资料很多,但并不是都要学,也不是都要看。),所以全文都是干货!!!

Ps:复习过程中,一直就想去写这个博客,现在终于有时间可以为学弟学妹们写一下这门课复习建议了。

编译系统

前言:这门课往年应该是两个老师负责,今年由于另外一个老师有事情,所以cy老师全权负责,为专业400多名学生讲授这门课程。还有就是今年由于疫情原因,大概后两个月(记不太清了emm)的课程都是线上,包括3次的实验验收。考试是线下,且据我观察,年年都是要和数据库一起考,大概间隔两天这样~,今年是5月19编译系统,5月21数据库系统。

首先说一下今年的分数组成:

平时分10分:SPOC(注意是SPOC,所以假期提前做测试是没用的!!具体细节详见MOOC评分标准)以及平时的慕课堂上的随堂测验

实验20分:词法分析、语法分析、语义分析和中间代码生成共三次实验(18级及以前学长的实验就不要看了,因为19级改实验了..)

期末考试,卷面分100分折合成70分:填空10分、选择10分、6道大题80分。

上课形式与一点建议:这门课程是和计算机网络类似,需要结合mooc去学习,但是没有翻转课堂,只是一些cy老师认为简单的内容会让大家提前预习mooc对应章节,然后课上只会简单提一下这些内容。教材的话,我不建议买,因为真的用不上(我在复习过程中,书一点没看)买了就是供着...当然,如果想买个心安,买也可以,买蓝色封皮的本科教学版就行。cy老师上课讲的很清晰,都是知识点,只是前期线下的时候,经常会提前下课(有一次提前了将近20分钟),感觉cy老师不是很愿意讲课的样子~其次就是,上课经常就是mooc15分钟的拉长版...总而言之,这门课上课跟住老师就行,不懂的内容课下多看几遍慕课,龙书我不建议看,私以为逻辑很混乱(翻译的书,懂的都懂)。如果有精力的话,可以在学完对应章节之后,把SPOC的习题(不是mooc选择题测验,是一个200+页的PPT!!!)做一做。当然,最后复习一起做也可以(我就是这么做的)。最后:这门课据往年学长所说,老师基本不捞人,且由于期末占比很高,所以挂科率在20%左右..

多说几句:包括我在内的部分同学都觉得老师的MOOC内容过于简练,经常难以理解,因此尝试过去看其他学校的编译原理MOOC,如国科大。这里给出我的建议:由于每个学校的这门课的慕课内容侧重点并不完全一样,因此如果你想考的好一点,我建议其他学校不要全看,可以是cy老师讲解的哪块你不理解再去寻求解读~

复习

1) 如果因为其他私情,主要是想以过为主,三天足矣,但是要面向考题(习题PPT+2020考试题)复习。

2) 否则,因为和数据库要一起考试,而且今年是编译原理(05.19)先考的,所以如果你是要卷学分绩的话,我建议要提前两周复习更好一些,两门课一起复习。专业课复习大家各有各的做法,我就说一下我的复习方法叭。因为老师已经明确强调,本课主要学的不是自动机内容,所以考试只会出一个很简单的DFA自动机构造,所以由于有大二的基础,我只是简单过了一下2020年的自动机相关部分的题目,没有深入复习,今年的考试题也确实如老师所说(很良心!!),是一个很简单的DFA。我是和年级的另一名佬同时复习的(不是坐一起),不会的、不理解的问题都会在QQ上讨论,不确定的知识点会再去通过QQ问老师,老师解答十分耐心!然后我是先过了一遍MOOC全部内容,同时做好笔记(ipad和纸质都有,只记了重点,会的不记),接下来就是做题(前文提到的PPT)和网上已有的2020年的两套考题,画*的就不用做了,因为考试考的都是比较基础的内容(如果想训练自己的水平,当我没说)。因为我是参考了2020考题去估计题型,事实上最后考试也的确如此。

关于期末考试的填选:这个真的是看自己精力叭,最后一章代码生成只用了半节课讲完的,只会出几分的小题,笔者复习中精力没那么充沛(),这章的很多概念都是理解着记忆的,最后填空出的稍微偏那么一点,我期末考试的卷面分数基本都错在填空了(),选择题把MOOC的选择刷一刷叭,原题还是有的,虽然不多。

期末考试大题的题型cy老师并没详细说,这是我今年考完试记下来的)为:

1)画一个简单的DFA

2)LL(1)构造、画表

3)LR(1)构造、画表

4)修改左递归文法,然后重新设计一个SDD(今年是求二进制数的十进制数值)

5)符号表以及非局部数据访问(访问链)和嵌套深度的考察、

6)三元式的生成和基本块划分、流图、自然循环、支配结点、以及DAG图。

所以大家复习时,一定重点关注这些内容,尤其最后一题中间代码生成代码优化部分的内容,如果中间代码生成出错了,接下来基本没分了..今年这道题是28*0.7分,分值还是相当大的。

最后:本文仅是笔者结合往届学长和自身经验去提供的建议,仅供参考,并不具备普适价值。希望本文能对大家有帮助,鉴于我校的规格严格,未敢公开资料,所以如果有想要相关资料的可以私信我联系方式,注明来意~。two-two-five-zero-eight-four-six-four-seven-five

最后的最后~,附上笔者的这门课成绩吧,以免误人子弟~:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值