编译方式和解释方式的区别
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通常有两种方式,即编译方式和解释方式。编译方式是指利用事先编好的一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户将高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是指源程序进入计算机后,解释程序边扫描边解释,逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。如PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。 编译程序、解释程序、汇编程序是3种语言处理程序。其区别主要为:汇编程序(为低级服务)是将汇编语言书写的源程序翻译成由机器指令和其他信息组成的目标程序。解释程序(为高级服务)直接执行源程序或源程序的内部形式,一般是读一句源程序,翻译一句,执行一句,不产生目标代码,如BASIC解释程序。编译程序(为高级服务)是将高级语言书写的源程序翻译成与之等价的低级语言的目标程序。编译程序与解释程序最大的区别之一在于前者生成目标代码,而后者不生成;此外,前者产生的目标代码的执行速度比解释程序的执行速度要快;后者人机交互好,适于初学者使用。用COBOL、FORTRAN等语言编写的程序考虑到执行速度一般都是编译执行。
易语言静态编译和独立编译的区别
在电脑中的作用不同,预编译是编译的预备工作,编译利用编译程序从源语言编写的源程序产生目标程序的过程,两者是电脑中不同的程序。
预编译又称为预处理,是代码文本的替换工作,是整个编译过程的最先做的工作。
编译是把高级语言变成计算机可以识别的2进制语言,因为计算机只认识1和0,编译程序把人们熟悉的语言换成2进制,从而可以被电脑识别。
1、库文件和程序文件不同,编译是把支持库文件和程序分开来,如果给别人去用,别人却没安装易语言,就要把支持库文件带上给那人才能用。但是静态编译是把支持库文件打包到程序里去.这样,如果对方没装易语言也照样可以正常使用和独立编译。
2、可执行文件的过程不同,静态编译是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。但是编译就是把可执行文件和支持库一起写出到外部,在需要的时候直接对其中一个支持库进行搜索某一条命令。
3、编译过程不同,通俗的说静态编译是将支持静态版的支持库静态链接(需要链接器,一般用VC6的)到EXE中去,库就在EXE中,用时不用释放。 PS:支持静态的支持库是易公司出5.0时重新整理并发布的。和原来的不一样,而且通过链接器编译后,也和原来的独立编译大大的不一样,使静态编译出的EXE更像是VC的程序,只是像,并不是,
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!