学好“计算机编译原理”需要具备其他一些知识么?

如题所述

就我来理解来说,起码会一门编程语言,国内的话,一般是要求用C/C++或JAVA来实现,练手写程序、编译器是必要的。
别的知识可要可不要,总之要个比较清晰的脑袋,不要动不动就说不会,做不出来,坚持上课,写项目、问问题,就可以了。
像我们上课,用C语言写,然后,写完的程序可以是直接运行,也可以是命令行下运行,你可以学点命令行,没关系。
然后用到两个工具,这个基本上是要现学的,运气不好,没中文版的话,还得会英语……
剩下的可以有比较深的数学原理,但是也可以选择不管,反正会实现就好了,又不是个数学家。
推荐书的话:编译原理:技术、工具(龙书)
编程语言实现模式。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-10
1.你要学到什么水平?是想考试考好还是想实际写出来一个足够强度的编译器?如果是前者,就一句:努力当学霸才是你唯一的出路。
2.对于scanner &parser的话,对于书上所讲的算法的要求是很高的,有很大的依赖性,所以必须理解透彻,即使没有机会实现也要自己动手画画。同时这也是本科阶段所学的编译原理的所有内容。虽然flex和bison很好使,但是强烈不建议使用。
3.对于生成器、连接器或者解释器的话,那么你要了解汇编语言、微处理器、微机接口等计算机基础学科。简单的说就是从底层学到高级语言的层面。这个要求是很高的,毕竟涉及到二进制代码优化等很麻烦的。本回答被提问者采纳
相似回答