
源程序的编译是指对于程序源代码的编译过程,由编译器完成,适用于编译语言,编译的过程会生成相应的程序的机器码。 源程序的解释是指对于程序源代码的解释的过程,由解释器完成,适用于解释语言。 解释语言和编译语言的区别在于解释语言编写的程序在每次运行时都需要通过解释器对程序进行动态解释和执行;解释语言编写的程序有时被称为脚本,一般是读者可以直接阅读的代码。解释器通过读取脚本,对它解释,然后执行脚本中的命令。 例如:我们通常使用的DOS命令行命令执行环境本身就是一个解释器。读入键入:“dir”命令并回车,解释器接收并翻译这条命令,然后进行系统调用来完成命令的运行,并把结果显示出来。相应的bat批处理文件可以说就是一种脚本。 编译语言需要通过编译器,将所编写的程序翻译成计算机的机器语言。完成编译后的程序无需其他程序,自己可独立运行。因为编译后的程序是由机器语言指令构成的,所以通常它的运行速度很快。但是使用不同硬件平台的计算机,它们的机器语言也是截然不同的,这同样使得编译过的程序不能顺利地从一个计算机平台往另外一个平台上移植。所以,在不同的平台之间,往往需要重新编译甚至重写程序。解释性程序没有这个限制。一般情况下,只要有相应版本的语言解释器,脚本程序就可以几乎不做任何修改地移植到其他平台上去。
翻译程序是指将用某种语言编写的程序转换成另一种语言形式的程序的程序,如编译程序和汇编程序等。
编译程序是把用高级语言编写的源程序转换(加工)成与之等价的另一种用低级语言编写的目标程序的翻译程序。
解释程序是解释、执行高级语言源程序的程序。
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
解析:
编辑和编译是完全不同的概念,,编辑 是指程序代码、界面等的输入、构建,编辑等,在这期间,开发工具会对输入的代码进行一般的语法检查等,,在可视化以前的开发环境下,主要是指代码的输入、编辑。编译是指 开发工具的编译程序对编辑过的代码进行转换,以便生成可以执行的代码文件,在可视化以前的开发环境下,编译都是在编辑工作完成以后进行的。
源程序是指程序员编写的代码,可以被编译程序编译为目标程序。
如果是C++,那么后缀为cpp
目标程序是编译程序将源程序编译后的结果,如果是C++,那么后缀是o
编译程序一般是编译器公司(比如微软
Intel他们都生产编译器)做的,它将源代码转化为机器可识别的文件,经过链接,生成可执行程序。
解释程序即解释器,它不需要经过编译阶段即可根据用户源程序执行。
程序语言分编译类和解释类语言。
1、词法分析
词法分析的任务是对由字符组成的单词进行处理,从左至右逐个字符地对源程序进行扫描,产生一个个的单词符号,把作为字符串的源程序改造成为单词符号串的中间程序。执行词法分析的程序称为词法分析程序或扫描器。
2、语法分析
编译程序的语法分析器以单词符号作为输入,分析单词符号串是否形成符合语法规则的语法单位,如表达式、赋值、循环等,最后看是否构成一个符合要求的程序,按该语言使用的语法规则分析检查每条语句是否有正确的逻辑结构,程序是最终的一个语法单位。
3、中间代码生成
中间代码是源程序的一种内部表示,或称中间语言。中间代码的作用是可使编译程序的结构在逻辑上更为简单明确,特别是可使目标代码的优化比较容易实现。中间代码即为中间语言程序,中间语言的复杂性介于源程序语言和机器语言之间。
4、代码优化
代码优化是指对程序进行多种等价变换,使得从变换后的程序出发,能生成更有效的目标代码。所谓等价,是指不改变程序的运行结果。所谓有效,主要指目标代码运行时间较短,以及占用的存储空间较小。这种变换称为优化。
5、目标代码生成
目标代码生成是编译的最后一个阶段。目标代码生成器把语法分析后或优化后的中间代码变换成目标代码。
扩展资料:
特点
数据结构分析和综合时所用的主要数据结构,包括符号表、常数表和中间语言程序。符号表由源程序中所用的标识符连同它们的属性组成。
其中属性包括种类(如变量、数组、结构、函数、过程等)、类型(如整型、实型、字符串、复型、标号等),以及目标程序所需的其他信息。常数表由源程序中用的常数组成,其中包括常数的机内表示,以及分配给它们的目标程序地址。
分析部分源程序的分析是经过词法分析、语法分析和语义分析三个步骤实现的。词法分析由词法分析程序(又称为扫描程序)完成。
其任务是识别单词(即标识符、常数、保留字,以及各种运算符、标点符号等)、造符号表和常数表,以及将源程序换码为编译程序易于分析和加工的内部形式。
参考资料来源:百度百科-编译程序
以上就是关于请问“源程序的编译”与“源程序的解释”的基本概念是什么如题 谢谢了全部的内容,包括:请问“源程序的编译”与“源程序的解释”的基本概念是什么如题 谢谢了、什么是翻译程序,编译程序,解释程序、程序编辑与编译有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)