zoukankan      html  css  js  c++  java
  • 编译型语言和解释型语言 【转载】

     

           计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。翻译的方式有两种,一个是编译,一个是解释。
           1).编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用 编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。   
           2).解释则不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接 执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。 

           编译型语言和解释型语言的区别:前者由于程序执行速度快,同等条件下对系统要求较低,因此像开发操作系统、大型应用程序、数据库系统等时都采用它,像 C/C++、Pascal/Object   Pascal(Delphi)、VB等基本都可视为编译语言;而一些网页脚本、服务器脚本及辅助开发接口这样的对速度要求不高、对不同系统平台间的兼容性 有一定要求的程序则通常使用解释性语言,如Java、JavaScript、VBScript、Perl、Python、MATLAB 等等。

    下面举个例子:
           甲和乙同时读一本外国小说。
           甲:一边看外国小说,一边查阅外文词典;
           乙:一边看外国小说,一边查阅外文词典,同时把查阅的外文解释记录下来。
    结果第一次看这本小说时甲比乙先看完,但是以后再读这本书的话乙比甲先看完。这里的甲就相当于是解释型,乙相当于是编译型的。


  • 相关阅读:
    用 Java 写一个折半查找?
    阐述 ArrayList、Vector、LinkedList 的存储性能和特性?
    简述一下面向对象的”六原则一法则”?
    如何通过反射调用对象的方法?
    用 Java 写一个单例类?
    事务的 ACID 是指什么?
    如何通过反射创建对象?
    如何通过反射获取和设置对象私有字段的值?
    JDBC 中如何进行事务处理?
    获得一个类的类对象有哪些方式?
  • 原文地址:https://www.cnblogs.com/haibin168/p/2079442.html
Copyright © 2011-2022 走看看