1.编译原理就是什么?编程
我的理解,编译就是像翻译同样,将一种语言翻译成另外一种语言,编译就是将高级语言或汇编语言翻译成电脑能识别的二进制机器语言,编译原理就是讲解这个编译的过程。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。 编译原理是计算机专业设置的一门重要的专业课程。虽然只有少数人从事编译方面的工做,可是这门课在理论、技术、方法上都对学生提供了系统而有效的训练,有利于提升软件人员的素质和能力。工具
2.学习编译原理有什么好处?性能
学习编译原理可让咱们了解到机器语言和高级语言之间转换的方式,能够本身写出编译器;能够更加客观的比较出各类语言的差别;能够更加容易的理解在一个语言种哪些写法是等价的,哪些是有差别的;可让咱们对咱们写的程序和程序语言有更深的本质的认识;懂得代码的本源是什么,能够更好的理解程序,解决编程中的问题。总的来讲,可让咱们变得高大上,解决编程问题的会有更全新的角度去思考。学习
3.不学有什么损失?优化
若是不学,就会形成知识缺陷,遇到一些底层问题或者性能问题等,可能解决不了,在网上看了,若是是底层的语言,好比C语言,必定要学这门,否则会遇到不少难解决的问题,若是不学这门课,就没法了解到编译的过程,这样的话,我感受代码就只是代码了,就像工具同样,若是学好了这门,我能够知道各类语言的根源,更好地使用各类语言,甚至创造语言- -。翻译
4.如何学习编译原理?编译器
在网上看了不少资料,感受这门课就是天书,最难的一门课,不过仍是必需要学的。对于这门课,若是光看,确定是看不懂的,应该要多实践,多参考别的书籍,有一些太难的书不须要看,尽可能多结合理论再实践吧,虽然这门课很难,但仍是要努力学,上课认真听老师讲课,多看书,多实践,好好学习,每天向上,加油加油。编译