当前位置:首页 » 编程软件 » 解析语言和编译语言

解析语言和编译语言

发布时间: 2025-03-17 17:29:07

1. 计算机高级语言里面的编译型和解释型有什么区别

高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可
将它们分为两类:
1.解释类:执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由
相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不
能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可
以动态地调整、修改应用程序,典型的解释型的高级语言有BASIC。
2.编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码
(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。
但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(*.OBJ)才
能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型
的,例如Visual C++、Delphi等。
高级语言里一个程序的编译和执行大概是 下面的情况:

编译器将高级语言从源代码翻译成与之等价的目标程序(就相当于从中文翻译成中文),而后就隐退了。在随后的某个时刻,用户启动目标程序由操作系统执行。实现高级语言的另外一种方式为解释:

与编译不同的是,解释器在目标程序(其实根本就没有目标程序,只是与编译来对比)执行期间,解释器一直随之运行。这种执行过程完全由解释器控制的。从效果上看,解释器实现了一台“虚拟计算机”,其“机器语言”就是高级语言,解释器一次读入一条或多条语句,按照其自身规定的方式去执行相应的操作。一般说来,解释比编译有着很好的灵活性;编译一般有着较好的性能。但是有些语言确是采用了两者的混合形式:

书中的原文:”如果初始阶段的翻译器比较简单,我们就说这个语言是“解释的”。如果翻译器很复杂,我们就说这一语言是“编译的”。现在两者的区分变得有些模糊了,因为“简单”和“复杂”都是修饰性术语,也因为完全可能出现用一个编译器(复杂的翻译过程)生成代码,而后又由一个复杂的虚拟机(解释器)执行。对于最后这种情况,如果翻译器对程序做了彻底的分析(而不是做某种“机械的”变换),而且有关的中间语言程序与源程序并没有很强的相似性,我们还是说这个语言是编译的。这两种特性----彻底的分析和非平凡的变换-----是刻画编译方式的标志性特征。“
根据以上标准,首先CSC只是对C#到IL做”机械“的翻译,而且C#和IL之间有很强的相似性,因为两者的程序代码几乎可以100%相互转换(比如reflector可以将C#反编成IL,也可以将IL反编为C#)。您认为呢?
PS:再者某些人认为的ngen和cache程序集其实也是支持C#是解释语言的结论,因为编译型语言因为性能的天然因素是不需要这些手段的

应该是这个吧。。。。。。。

2. 编译型语言和解释型语言的区别:如何工作运行方式代表性语言有哪些各自的优势

编译型语言与解释型语言在计算机编程领域扮演着重要角色,它们的主要区别在于翻译过程和执行效率。编译型语言如C、C++在编写完成后,由编译器将所有源代码翻译成机器语言,生成可执行文件,程序运行时直接调用即可执行。
相比之下,解释型语言如Python、javaScript,程序员在开发环境内编写代码,程序执行时,解释器逐行读取并翻译代码为机器语言,再执行。解释器按顺序一行行翻译并执行代码。
从执行速度来看,编译型语言通常更快,因为生成的可执行文件是硬件可以直接识别和执行的,而解释型语言需要逐行解释,效率较低。编译型语言适用于开发操作系统、数据库等对执行速度有较高要求的应用。
跨平台能力是另一个考量因素,解释型语言在这方面更具优势。因为解释器可以在不同操作系统上安装,程序只需完成一次编写就能在多个平台上运行,而编译型语言需要为每个平台编译生成对应可执行文件。解释型语言适用于开发网页脚本、服务器脚本等跨平台需求较高的应用。
综上所述,选择编译型语言还是解释型语言,取决于具体应用的需求。编译型语言在执行效率上更胜一筹,而解释型语言在跨平台能力上展现出优势。开发者应根据项目需求和目标选择合适的编程语言。

3. 解释性编程语言与编译性编程语言有何区别

解释性语言是指,在执行时由相关程序实时读取程序语句,然后再编译执行的语言,这样的源程序多为文本文件。可以理解为由专门的程序读取你用文本写的程序,然后边解释边执行。
而编译语言则是可以有计算机直接执行的机器语言,以二进制的形式存储
最大的区别就是,编译好的程序比解释性的快很多,效率高很多。

4. 解释型语言和编译型语言

编译型是使用编译器编译后生成计算机硬件可直接执行的指令,解释型是在运行时才由解释器逐语句去执行。编译型代表:C&C++,C#,Java,解释型代表:html,javascript。区别有很多。
1、编译型语言的源代码有错误编译不通过,无法生成可执行代码,更无法执行程序;解释型语言只有执行时才会判断是否出错,即使一句出错,也可以继续执行下一句。
2、编译型语言都为强类型,即必须说明数据的类型,如inta;解释型语言多为弱类型,如js中vara,a可以为字符串也可以为整形。
3、编译型语言执行效率上大大优于解释型,主要因为编译器在编译过程中会根据不同平台自动优化目标代码,且特点为1次编译,N次运行,另外强类型的程序安全性高;解释型语言无上述过程,逐语句翻译造成执行效率低下,每次执行都会重复解释一遍,并且安全性低。
4、编译型程序适合对通用性,重复性,高效性有要求的系统,如开发操作系统;相比解释型语言更具灵活性,如开发网站前台页。
更多关于解释型语言和编译型语言,进入:https://www.abcgonglue.com/ask/d95b531616100786.html?zd查看更多内容

热点内容
云终端买什么服务器 发布:2025-03-18 11:13:13 浏览:986
比分网源码 发布:2025-03-18 11:00:22 浏览:749
不显示脚本错误 发布:2025-03-18 10:58:14 浏览:417
网络摄像头与服务器怎么搭建 发布:2025-03-18 10:51:49 浏览:554
java区块链 发布:2025-03-18 10:35:54 浏览:368
私自搭建服务器盈利违法么 发布:2025-03-18 10:32:33 浏览:7
os压缩文件 发布:2025-03-18 10:26:54 浏览:866
安卓什么样的型号算是大陆国行 发布:2025-03-18 10:14:54 浏览:729
android添加百度地图 发布:2025-03-18 10:05:41 浏览:419
音乐源码开发 发布:2025-03-18 09:41:45 浏览:51