zoukankan      html  css  js  c++  java
  • 解释程序和编译程序的区别

    将高级语言程序翻译成机器语言程序的软件称为翻译程序

    翻译程序有两种,一种是编译程序,一种是解释程序

    1编译程序是将高级语言程序(如pascal ,fortran,c等)源代码作为输入,直接进行翻译生成出机器语言的目标程序,然后再让计算机执行这个目标程序,得到计算结果

    编译程序工作时,先分析,后综合,从而得到目标程序,

    分析指的是词法分析和语法分析,综合指的是代码的优化,存储的分配和代码的生成

    为了完成分析综合任务,编译程序对源程序进行一次甚至多次的扫描,每次扫描完成一项或多项任务,也有可能一项任务呗分成多次扫描才能完成,

    eg:进行一项4次扫描的翻译

    (1)第一遍扫描做词法分析

    (2)第二遍扫描做语法分析

    (3)第三遍扫描做代码优化和存储分配,

    (4)第四遍扫描做代码生成

    另外,大多数扫描直接生成机器语言的目标代码,但是有的也生成汇编语言的目标代码,进而在转化为机器语言的目标代码

    2解释程序

    同样将源代码(如basic语言)的程序作为输入,解释一句就提交计算机执行一次,并不形成目标文件,就想口语交际的中翻译,说出一句翻译一句,或者是终端的dos窗口,在终端输入一条命令语句,解释程序立刻返回给终端若干句;

    这种只是适用于小型机器的计算问题,解释程序的执行速度较慢,如果出现循环,也是重复着提交那么一句

    在日常生活中,如果需要大量的计算,建议使用招待速度较快的编译程序,虽然编译程序较为复杂,但是一旦生成目标文件。以后就可以多次使用。对于小型的计算,就多采用解释性的回话高级语言

  • 相关阅读:
    python 常用的模块(hashlib)转
    python 常用的模块(struct)转
    python 常用的模块(base64)转
    python 常用的模块(collections)转
    django xadmin的使用和改造
    django静态html中做动态变化
    django 用model来简化form
    InstallShield2015制作安装包----------安装后实现电脑开机自启动
    InstallShield2015创建安装包
    InstallShield :cannot rename directory ...
  • 原文地址:https://www.cnblogs.com/13224ACMer/p/5228694.html
Copyright © 2011-2022 走看看