开学进入大三了 听说编译原理很难学的 请教...(100分)

瀚HAN 2004-08-27 02:09:26
请教各位前辈们怎么学还这门课程 学这门课需要辅以其他什么知识吗?
...全文
4254 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
雪域红莲 2004-08-28
  • 打赏
  • 举报
回复
要是只要求考试通过那么,编译原理不难...
要是要求学好,那么编译原理真的还TMD...
Inkick 2004-08-28
  • 打赏
  • 举报
回复
我们的离散数学已经学完了,编译原理是大三第二学期的课程,其实底层的东西比较好玩吧~虽然很痛苦~
snow810211 2004-08-28
  • 打赏
  • 举报
回复
这个课程,我学的一般,不知道在实际中怎么用~~~可能还没有用到的时候,但是只要听老师讲课,没有问题
xqing157 2004-08-28
  • 打赏
  • 举报
回复
编译课里的东西主要讲些原理性的东西。一个实际的编译器可以分为前端和后端,而我们的编译教材和老师上课讲的东西大都是前端的东西。自己写一个编译器是比较困难的。写一个c++的前端也比较困难。经常听人说实现了什么什么简单语言的词法、语法分析,实际上这和c++的前端还差的远。网上有一个开放源码的c++前端,cppp。很经典的!源代码大概3万行左右,用面向对象方法设计实现的。分析这个东西很有启发。不知道csdn上有没有其他朋友分析过,我这个暑假都没有回家,就一直在分析这个。本来是打算先分析gcc的前端的,但是还是觉得这个前端设计得更好。
瀚HAN 2004-08-28
  • 打赏
  • 举报
回复
今天教材发下来了 西安那本 交我们课的老师听说也不错 是计算机学院副院长 谢谢大家的箴言 虽然上期我们老师说这门是最难学的 我也很有信心了
66889900aa 2004-08-28
  • 打赏
  • 举报
回复
用心学就行
sandrowjw 2004-08-28
  • 打赏
  • 举报
回复
还好考试的时候没有考数据流方程,不过制导翻译那个东西我没背(我实际上根本不知道是怎么回事,到后来做课程设计的时候才明白一点),大概就这一道没作出,哈哈。
yingqing 2004-08-28
  • 打赏
  • 举报
回复
呵呵,编译原理是计算机大学里面最难的吧,如果数据结构学得好,离散数学不差,再加上你有一定的自然语言能力,应该可以学好的。编译器能够编个模拟的就不错了啊
xjp6688 2004-08-28
  • 打赏
  • 举报
回复
不难
earthharp 2004-08-28
  • 打赏
  • 举报
回复
学了总有好处的
说不定哪天就用上了
junmayang 2004-08-28
  • 打赏
  • 举报
回复
学了操作系统\编译原理你工作后才会觉得和别的专业的程序员有区别,只有这才是优势
好好学吧

hewittlee 2004-08-28
  • 打赏
  • 举报
回复
迟点就要学了!我觉得应该比较难的!
ywfscu 2004-08-28
  • 打赏
  • 举报
回复
不用怕,我暑假也刚看了,多联系前后章节,多问为什么要安排这个章节,它在编译器中实现了什么功能,这样做到总缆全局,然后仔细想是怎样实现了这个功能的,有没有改进的方法,这样就把握细节了,应该就可以了,应付考试绰绰有余了
fanbest 2004-08-28
  • 打赏
  • 举报
回复
编译原理考试自然不用愁,学校根本不会考那些难的东西.

但我不清楚类似于我们这样的大三学生,掌握这门课应该到一种什么样的程度?
或者可以这样问,这门课哪些是非得需要了解的东西呢?
我们应该掌握那些重点才能表明这门课没有白学呢?
北极猩猩 2004-08-27
  • 打赏
  • 举报
回复
编译并没有传说得那么难,不过前提是你有个不错的基础。
所谓基础主要包括是“形式语言与自动机”还有就是算法的基础。
楼上说得没错,编译实际上考的就是几个算法,不过与以前不同的是,编译中的算法很复杂,而且很抽象,如果不能理解仅靠记忆是非常困难的。所以,理解算法对于编译原理课程来说是十分重要的(不仅是考试还有应用)。

其实,学习编译原理的主要目的并不是要求你去作出一个编译器,那还需要太多的其他东西,而在于掌握它的思想和算法,不夸张地说,编译原理中的算法在很多地方都会用到,而且掌握之后可以事半功倍的解决许多问题。

PS:单论考试来说,我当时只上过两次课,复习5天,结果94分。所以放松啦,没什么的。
antidestiny 2004-08-27
  • 打赏
  • 举报
回复
我刚去年学玩,刚开始一塌糊涂,没点头绪,后来慢慢根据老师的讲义,根据老师的一些练习,慢慢的比较轻松,考试勉强过关,但是说要做个编译器,我没那个水平,呵呵
baconbally 2004-08-27
  • 打赏
  • 举报
回复
编译走的要更远,我觉得抽象的东西太多

我们老师让我们做了:词法分析器、语法分析、四元式-〉目标代码生成等等
最终我也没能把它们连成一个编译器

必看书:dragon book
推荐书:西安交大的那本

zdcscc 2004-08-27
  • 打赏
  • 举报
回复
编译原理如果为了考试一点也不难咯.
如果想学了编译原理就可以开发出一个编译器.
可以说那是不可能的事.
不过在以后的工作中.
编译原理中的正则表达试挺重要的.
也用的比较广泛咯.
好好吧.
理论的东西本来就很枯燥无味的.
snipersu 2004-08-27
  • 打赏
  • 举报
回复
编译原理很有用的啊!

学过之后就知道了。呵呵!

举个小case:
如:c++里我们写过 vector< vector<int> >,其中 在> > 之间是有一个以上的空格的,否则会出错,为何呢?
学了编译起码就知道了,呵呵,是编译里有个最小识别的问题(好像名字是这个,具体的名字给忘了,呵呵),就是最先识别成什么就是什么,如果没有空格>>就会首先被识别成一个操作符了。
CNXQS 2004-08-27
  • 打赏
  • 举报
回复
就学个编译原理,应该是写不出象样的编译器的吧?(个人主观认为)
加载更多回复(13)

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧