全部科目 > 网络管理员 >
2011年下半年 上午试卷 综合知识
第 15 题
知识点 编译程序基本原理   解释程序基本原理  
关键词 编译程序   解释程序   编译  
章/节 软件基础知识  
 
 
编译程序与解释程序的不同之处是(15)。
 
  A.  解释程序不需要进行词法和语法分析,而是直接分析源程序的语义并产生目标代码
 
  B.  编译程序不需要进行词法和语法分析,而是直接分析源程序的语义并产生目标代码
 
  C.  编译程序不生成源程序的目标代码,而解释程序则产生源程序的目标代码
 
  D.  编译程序生成源程序的目标代码,而解释程序则不产生源程序的目标代码
 
 




 
 
相关试题     程序设计语言基础 

  第12题    2018年上半年  
将某高级语言程序翻译为汇编语言形式的目标程序,该过程称为( )。

  第15题    2016年下半年  
以下关于解释方式运行程序的叙述中,错误的是(15)。

  第16题    2016年下半年  
编写程序时通常为了提高可读性而加入注释,注释并不参与程序的运行过程。通常,编译程序在(16)阶段就会删除源程序中的注释。

 
知识点讲解
· 编译程序基本原理
· 解释程序基本原理
 
        编译程序基本原理
        编译程序的功能是把用高级语言书写的源程序翻译成与之等价的目标程序。编译程序的工作可以分为6个阶段。
        (1)词法分析阶段。这个阶段的任务是对源程序从前到后逐个字符进行扫描,从中识别出一个个单词符号。
        (2)语法分析阶段。语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。通过语法分析,确定整个输入串是否构成一个语法上正确的程序。
        (3)语义分析阶段。语义分析的一个主要工作是进行类型分析和检查。
        (4)中间代码生成阶段。根据语义分析的输出生成中间代码。中间代码的设计原则是:容易生成,容易被翻译成目标代码。中间代码生成所依据的原则是语言的语义规则。
        (5)代码优化阶段。优化所依据的原则是程序的等价变化规则。
        (6)目标代码生成阶段。这是编译工作的最后一个阶段,任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。
        在编译中,如果发现源程序有错,编译程序要将错误信息报告给用户。程序错误大致可以分为静态错误和动态错误两种。静态错误是指编译时所发现的程序错误,又分为词法错误和静态语义错误,如单词拼写错误、标点符号错误、表达式中缺少操作数、括号不匹配等有关语言结构上的错误称为语法错误;而运算符与运算对象类型不匹配等错误属于静态语义错误。动态错误指程序中包含的逻辑错误,它们发生在程序运行时,如变量取零做除数、引用数组下标越界等错误。
 
        解释程序基本原理
        解释程序在运行用户程序时,直接执行源程序或源程序的内部形式,不产生源程序的目标代码。解释程序也可以先将源程序翻译成某种中间代码形式,然后对中间代码进行解释,实现用户程序的运行。
        解释方式跟编译方式相比,一般效率低、灵活性好、易于移植。在解释方式下运行程序,可能需要反复扫描源程序,而源程序只需要被编译程序翻译一次,就可以多次运行。由于解释程序需要反复检查源程序,这也使解释方式更灵活。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有