赞
踩
提示:阅读本文大约3分钟。
学习编译原理有什么好处?
当你真正完成编译原理的学习后,你对你所写的程序、程序语言都会有更深的本质认识,这样的认识也会让你站的高度完全不同,并且知道编译的过程方法理论,可以为以后学习工作打下基础,而且编译原理并不仅仅是用来写编译器的,还可以在许多意想不到的领域进行应用。如果以后走工程方向的,学好编译原理可以基本囊括所有需要的技术,锻炼脑力,同时可以有广泛应用,更本质上说,让你理解你天天用的语言,这是优秀程序员需要具备的专研精神。
不学有什么损失?
不学编译原理,可能永远给各种写编译器的人当奴隶,以为写程序只能按照他们设计的语言哲学来做。学好了编译原理,不一定非要自己写语言,但是至少能把很多其他程序员觉得很酷的东西看得透彻一点,不会被程序语言的设计表象骗到太多。
概念:编译原理是对高级程序语言进行翻译的一门科学技术, 我们都知道计算机程序由程序语言编写而成,计算机存储的数据和执行的程序都是由0、1代码组合而成的,不方便程序员记忆。所以人们一直在研究如何开发高效的计算机程序。降低编程门槛。
首先我们先了解一下编译程序和解释程序:
图片来源于网络,侵删。
简单来说编译程序就是将高级的程序设计语言翻译成计算机可以理解的机器语言。
编译程序的步骤:
词法分析:编译器会根据设定的语法规则,识别特定的单词并分类。主要有:关键字(int),标识符(a,b),常数(2,9),界符(: =+)。
语法分析:组词成句及语法错误检查。生成结果是一个语法树。
语义分析:分析各种语法成分。
优化处理:提高目标程序质量。
目标代码生成(汇编指令)
类似于外文翻译:
遍:编译程序对源程序或等价程序从头到尾扫描次数。
一般扫描两遍:
第一遍:词法分析,语法分析,语义分析。
第二遍:中间代码优化,生成目标代码。
第一次扫描后产生中间代码,保存结果。第二遍再对中间代码扫描。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。