admin 管理员组文章数量: 1086019
2024年3月20日发(作者:blockchain钱包)
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,
通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通
常有两种方式,即编译方式和解释方式。编译方式是指利用事先编好的一个称为编译程序
的机器语言程序,作为系统软件存放在计算机内,当用户将高级语言编写的源程序输入计
算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后
计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是指源程序
进入计算机后,解释程序边扫描边解释,逐句输入逐句翻译,计算机一句句执行,并不产
生目标程序。如PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则
以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。
编译程序、解释程序、汇编程序是3种语言处理程序。其区别主要为:汇编程序(为
低级服务)是将汇编语言书写的源程序翻译成由机器指令和其他信息组成的目标程序。解
释程序(为高级服务)直接执行源程序或源程序的内部形式,一般是读一句源程序,翻译
一句,执行一句,不产生目标代码,如BASIC解释程序。编译程序(为高级服务)是将高
级语言书写的源程序翻译成与之等价的低级语言的目标程序。编译程序与解释程序最大的
区别之一在于前者生成目标代码,而后者不生成;此外,前者产生的目标代码的执行速度
比解释程序的执行速度要快;后者人机交互好,适于初学者使用。用COBOL、FORTRAN
等语言编写的程序考虑到执行速度一般都是编译执行。
解释:程序运行时,取一条指令,将其换化为机器指令, 再执行这条机器指令。
编译:程序运行时之前,将程序的把有代码编译为机器代码,再运行这个程序。
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,
通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通
常有两种方式,即编译方式和解释方式。
编译方式是指利用事先编好的一个称为编译程序的机器语言程序,作为系统软件存放
在计算机内,当用户将高级语言编写的源程序输入计算机后,编译程序便把源程序整个地
翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源
程序要处理的运算并取得结果。
解释方式是指源程序进入计算机后,解释程序边扫描边解释,逐句输入逐句翻译,计
算机一句句执行,并不产生目标程序。如PASCAL、FORTRAN、COBOL等高级语言执行
编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的
高级程序设计语言。
简单的说,编译就是全文翻译,全部翻译完才执行。解释就相当于同声翻译,边翻译
边执行。
解释语言, 比如以前的Basic, 源程序是文本的, 运行时有一个解释程序, 它把源程序
读入, 一条一条地现翻译现执行. 这当然慢了, 因为它要现场解释嘛. 现在网页中的
VBScript, JavaScript等也是如此.
编译语言, 比如C或C++, 你编一段程序, 由Turbo C, VC, 或其它什么编译器编译,
变成了一个可执行的程序文件 (在DOS或Windows下, 扩展名为 .EXE的), 以后运行这
个编译好的文件就成了. 因为已经翻译好了, 所以运行时就没有现场解释这一步, 当然快
得多了. DOS或Windows下的 EXE 文件, 都是编译或汇编出来的.
另外注意, 是否是编译或解释, 与语言种类其实无关. 过去一般说Basic是解释的, 其
版权声明:本文标题:编译与解释的区别 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1710923415a579775.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论