`

编译性语言、解释性语言和脚本语言收藏

阅读更多

什么是编译性语言、解释性语言和脚本语言

  计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能值型高级语言编写的程序。

  翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言 的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型 语言的程序执行效率高。

 解释则不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。
 什么是脚本语言?

1.脚本语言(JavaScript,VBscript等)介于HTML和C,C++,Java,C#等编程语言之间。
HTML通常用于格式化和链结文本。而编程语言通常用于向机器发出一系列复杂的指令。
2.脚本语言与编程语言也有很多相似地方,其函数与编程语言比较相象一些,其也涉及到变量。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些.
3.与程序代码的关系:脚本也是一种语言,其同样由程序代码组成。
注:脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。JAVASCRIPT,ASP,PHP,PERL都是脚本语言。C/C++编译、链接后,可形成独立执行的exe文件。
4.脚本语言是一种解释性的语言,例如vbscript,javascript,installshield script等等,它不象c\c++等可以编译成二进制代码,以可执行文件的形式存在.
脚本语言不需要编译,可以直接用,由解释器来负责解释。
5.脚本语言一般都是以文本形式存在,类似于一种命令.
举个例子说,如果你建立了一个程序,叫aaa.exe,可以打开.aa为扩展名的文件.
你为.aa文件的编写指定了一套规则(语法),当别人编写了.aa文件后,你的程序用这种规则来理解编写人的意图,并作出回应.那么,这一套规则就是脚本语言.

JAVA语言


 java很特殊,java程序也需要编译,但是没有直接编译称为机器语言,而是编译称为字节码,然后 用解释方式执行字节码。Java既可以被编译,也可以被解释。通过编译器,可以把Java程序翻译成一种中间代码 - 称为字节码 - 可以被Java解释器解释的独立于平台的代码。通过解释器,每条Java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。下图说 明了它是如何工作的:

1flow.gif (3652 bytes)

可以把Java字节码看作运行在Java虚拟机(Java VM)上的机器代码指令。每中Java解释器,不管是Java开发工具还是可以运行Java小应用程序的Web浏览器,都是一种Java VM的实例。JavaVM也可以由硬件实现。

 Java字节码使“写一次,到处运行”成为可能。可以在任何有Java编译器的平台上把Java程序编译成字节码。这个字节码可以运行在任何Java VM上。例如,同一个Java程序可以运行在WindowsNT、Solaris和Macintosh上。

2comp.gif (6076 bytes)

Java平台

 平台是程序运行的硬件或软件环境。Java平台与大多数其它平台不同之处在于它是运行于其它基于硬件平台的纯软件平台。大多数其它平台是硬件和操作系统的结合。

Java平台由两部分组成:

  • Java虚拟机(Java VM)
  • Java应用程序界面(Java API)

我们已经介绍了Java VM,它是Java平台的基础,可以移植到各种基于硬件的平台上。 Java API是软件组件的集合,它们提供了很多有用的功能,如图
形用户界面(GUI)。Java API被分组为相关组件的库(包)。

 下图描述了一个运行在Java平台上的Java程序,如应用程序(application)或小应用程序(applet)。如图中显示的,JavaAPI和VM把Java程序从硬件依赖中分离出来。

3play.gif (1479 bytes)

作为一种独立于平台的环境,Java比本地代码慢一些。然而,聪明的编译器、很好地调制过的解释器和即时字节码编译器可以在不牺牲可移植性的条件下使Java的表现接近本地代码。

分享到:
评论

相关推荐

    编译性语言、解释性语言和脚本语言

    编译性语言、解释性语言和脚本语言 编译性语言、解释性语言和脚本语言

    Python 简介 Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言.rar

    2.介于标记语言和编程语言之间,脚本语言脚本语言不需要编译,可以直接用,由解释器来负责解释,只在被调用时进行解释或编译。 (2)编程语言(programming language): 1.是用来定义计算机程序的形式语言。它是...

    第4章__客户端脚本语言_java客户端脚本语言_

    java客户端脚本语言。JavaScript是一种嵌入HTML的脚本语言,它不需要编译,在客户端可以通过浏览器解释执行。JavaScript具有跨平台、基于对象和事件驱动的特点,同时它也具有一定的安全性。

    Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言 Python 的设计具有很强的可读性,相比其他

    Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。 像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)...

    TCL脚本语言编程

    Tcl 全称是Tool command Language。它是一个基于字符串的命令语言,基础结构和...Tcl语言是一个解释性语言,所谓解释性是指不象其他高级语言需要通过编译和联结,它象其他shell语言一样,直接对每条语句顺次解释执行。

    D语言简易教程

    D 不是脚本语言,也不是一种解释型语言。它不需要虚拟机、宗教、或者高于一切的哲学。它是给实际的编程者使用的实际的语言,它帮助编程者快速、可靠的完成易于维护、易于理解的代码。 D 是数十年来实现多种语言...

    高级shell脚本编程指南

    shell 内建命令,比如 test 与循环结构,也会给脚本添加强力的支持和增加灵活性.Shell脚本对于 管理系统任务和其它的重复工作的例程来说,表现的非常好,根本不需要那些华而不实的成熟 紧凑的程序语言.

    ric-script:我自己的脚本语言; 使用yacc和flex在C中实现

    这是一种解释性语言,我从Python和Javascript中获得了很多启发。 AST是使用yacc构建的,我使用C语言实现了所有功能。我一直在为我的语言进行解释器的开发,并且这项工作仍在进行中。 将来,我可能可以将程序编译为...

    VBScript脚本详细教程

    VBS是Visual Basic的的一个抽象子集,是系统内置的,用它编写的脚本代码不能编译成二进制文件,直接由Windows系统执行(实际是一个叫做宿主host的解释源代码并执行),高效、易学,但是大部分高级语言能干的事情,它...

    Python语言程序设计习题答案.zip

    学习本章,要了解Python作为一种计算机程序设计脚本语言,结合了解释性、编译性和互动性的特点;了解在Linux和Windows中安装Python的方法;了解IDLE、PyCharm和Jupyter三种常用Python程序编辑环境。工欲善其事,必先...

    Python3:强大的编程语言及其广泛应用

    Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

    Ruby是一种强大而优雅的编程语言,以其简洁的语法、动态性、面向对象编程和丰富的类库而著称 以下是对Ruby的500字资源介绍:

    此外,Ruby还是一种解释型语言,程序无需编译即可执行,方便快捷。 Ruby的动态性是其另一大特点。它支持动态类型、动态方法定义和元编程,允许开发者在运行时动态地修改类和对象的行为。这种灵活性使得Ruby在快速...

    python语言教程

    Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

    JAVA习题库及答案

    一、选择题 1. 下列不属于java语言鲁棒性特点的是: A. java能检查程序在变异和运行时的错误 B....C. java 自己操纵内存减少了内存出错的可能性 D....2. java语言的执行模式是: ... 同脚本语言的解释模式

    python属于解释型语言么

    当然,所谓的脚本语言就是这么运行的。 在 Python 中,源代码会被编译为更低级的一种形式,我们称之为字节码。字节码是一串指令,和 CPU 的指令集类似。但是字节码并不直接被 CPU 执行,而是在虚拟机中执行的。当然...

    python资源汇总,学习资料整理.rar

    Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。 Python 是交互式语言: 这意味着,您可以在...

    揭秘JavaScript:网页开发的魔法师揭秘JavaScript:网页开发的魔法师

    作为一门动态、解释性语言,JavaScript能够通过网页中嵌入的脚本代码,为用户提供互动性和动态性的网页体验。本文将详细介绍JavaScript的历史、特点和应用领域,让你全面了解这位网页开发的魔法师。 一、JavaScript...

    gox_win.zip

    Gox语言是脱胎于Go语言(Golang)的开源脚本语言,解释执行,但相比Go语言更贴近高级语言,语法硬性限制也少一些;是一门偏向快速应用的语言,也可以说是一个集成工具; - Gox语言主要优势有三点: - 第一,Gox...

    Python入门教程.docx

    Python是一种解释性语言:这意味着在开发过程中没有编译。类似于PHP和Perl ??? Python的发展历史 python是由guidovanrossum在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。 Python本身是...

Global site tag (gtag.js) - Google Analytics