编译过程中,比较常见的中间语言有()。A、波兰表示B、逆波兰表示C、三元式D、四元式

题目

编译过程中,比较常见的中间语言有()。

  • A、波兰表示
  • B、逆波兰表示
  • C、三元式
  • D、四元式

相似考题
更多“编译过程中,比较常见的中间语言有()。”相关问题
  • 第1题:

    将高级语言源程序翻译为机器语青程序的过程中常引人中间代码。以下关于中间代码的叙述中,错误的是( )。

    A.不同的高级程序语言可以产生同一种中问代码

    B.使用中间代码有利于进行与机器无关的优化处理

    C.使用中间代码有利于提高编译程序的可移植性

    D.中间代码与机器语言代码在指令结构上必须一致


    正确答案:D
    解析:编译器对高级语言源程序的处理过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等阶段,以及符号表管理模块和出错处理模块。尽管可以将源程序直接翻译成目标语言代码,但使用与机器无关的中间表示形式具有两个优点。(1)重置目标比较容易。不同机器上的编译器可以在已有前端的基础上附加一个适合这个机器的后端来生成。(2)可以在中间表示应用与机器无关的代码优化器。

  • 第2题:

    将高级语言源程序先转化为一种中间代码是现代编译器的常见处理方式。常用的中间代码有后缀式、()、语法树等。

    A.前缀码

    B.三地址码

    C.符号表

    D.补码和移码


    正确答案:B

  • 第3题:

    将高级语言源程序翻译成机器语言程序的过程中,常引入中间代码。以下关于中间 代码的叙述中,不正确的是 ( 22)。

    A.中间代码不依赖于具体的机器

    B.使用中间代码可提高编译程序的可移植性

    C.中间代码可以用树或图表示

    D.中间代码可以用栈和队列表示


    正确答案:D
    本题考查程序语言基础知识。从原理上讲,对源程序进行语义分析之后就可以直接生成目标代码,但由于源程序与目标代码的逻辑结构往往差别很大,特别是考虑到具体机器指令系统的特点,要使翻译一次到位很困难,而且用语法制导方式机械生成的目标代码往往是繁琐和低效的,因此有必要设计一种中间代码,将源程序首先翻译成中间代码表示形式,以利于进行与机器无关的优化处理。由于中间代码实际上也起着编译器前端和后端分水岭的作用,所以使用中间代码也有助于提高编译程序的可移植性。常用的中间代码有后缀式、三元式、四元式和树(图)等形式。

  • 第4题:

    将高级语言源程序先转化为一种中间代码是现代编译器的常见处理方式。常用的中间代码有后缀式、( ) 、树等。

    A.前缀码
    B.三地址码
    C.符号表
    D.补码和移码

    答案:B
    解析:
    常用的中间代码的表达形式有语法树、后缀式、三地址代码。

  • 第5题:

    编译器和解释器是两种基本的高级语言处理程序。编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等阶段,其中,( )并不是每个编译器都必需的,与编译器相比,解释器( )。

    A.词法分析和语法分析
    B.语义分析和中间代码生成
    C.中间代码生成和代码优化
    D.代码优化和目标代码生成

    答案:C
    解析:
    在编译过程中:词法分析;语法分析;语义分析;目标代码生成是必须的

  • 第6题:

    用高级语言编写的源程序在翻译过程中有两种方式:解释方式和编译方式。解释方式执行比编译方式()

    • A、快
    • B、慢
    • C、差不多
    • D、元法比较

    正确答案:B

  • 第7题:

    通常编译程序是把高级语言书写的源程序翻译为__(1)__程序。一个编译程序除了可能包括词法分析、语法分析、语义分析和中间代码生成、代码优化、目标代码生成之外,还应包括__(2)__。其中__(3)__和优化部分不是每个编译程序都必需的。空白(1)处应选择()

    • A、Basic程序
    • B、中间语言
    • C、另一种高级语言
    • D、低级语言

    正确答案:D

  • 第8题:

    用VB.NET语言开发的源代码文件被编译器编译成()

    • A、中间语言(IL)代码
    • B、C#代码
    • C、机器码
    • D、以上都不是

    正确答案:A

  • 第9题:

    以下关于编译程序的说法正确的是()。

    • A、编译程序属于计算机应用软件,所有用户都需要编译程序
    • B、编译程序不会生成目标程序,而是直接执行源程序
    • C、编译程序完成高级语言程序到低级语言程序的等价翻译
    • D、编译程序构造比较复杂,一般不进行出错处理

    正确答案:C

  • 第10题:

    填空题
    高级语言编译后生成的目标代码与汇编生成的代码比较,前者()

    正确答案: 代码长、执行速度慢
    解析: 暂无解析

  • 第11题:

    单选题
    用Visual Studio.NET编写的程序被编译成中间语言(MSIL)后,运行时还要再一次被编译,这种编译被称为()。
    A

    CLR

    B

    JIT

    C

    GC

    D

    GDI


    正确答案: A
    解析: 暂无解析

  • 第12题:

    单选题
    通常编译程序是把高级语言书写的源程序翻译为__(1)__程序。一个编译程序除了可能包括词法分析、语法分析、语义分析和中间代码生成、代码优化、目标代码生成之外,还应包括__(2)__。其中__(3)__和优化部分不是每个编译程序都必需的。空白(1)处应选择()
    A

    Basic程序

    B

    中间语言

    C

    另一种高级语言

    D

    低级语言


    正确答案: C
    解析: 暂无解析

  • 第13题:

    在编译过程中,为什么要生成中间代码?常见的中间代码形式有哪几种?


    参考答案:中间代码生成实际上是根据语法分析所指示的语法范畴进一步确定语句的语义,并生成相应的中间代码序列。常见的中间代码形式有三元式、四元式和逆波兰表示式。

  • 第14题:

    以下关于编译程序的说法正确的是( )。

    A.编译程序直接生成可执行文件

    B.编译程序直接执行源程序

    C.编译程序完成高级语言程序到低级语言程序的等价翻译

    D.各种编译程序构造都比较复杂,所以执行效率高


    正确答案:C
    编译程序也叫编译系统,是把用高级语言编写的面向过程的源程序翻译成目标程序的语言处理程序。因此答案选择C。

  • 第15题:

    ( 2 )以下关于编程语言的描述中,正确的是

    A )汇编语言是符号化的机器语言,机器可以直接执行

    B )为了完成编译任务,编译程序要对源程序进行扫描

    C )解释程序比较简单,所以解释型程序执行速度很快

    D )编译程序非常复杂,所以编译出的程序执行速度很慢


    正确答案:B

  • 第16题:

    编译器和解释器是两种基本的高级语言处理程序。编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等阶段,其中,( )并不是每个编译器都必需的

    A.词法分析和语法分析
    B.语义分析和中间代码生成
    C.中间代码生成和代码优化
    D.代码优化和目标代码生成

    答案:C
    解析:
    在编译过程中:词法分析;语法分析;语义分析;目标代码生成是必须的

  • 第17题:

    用VB.NET语言开发的源代码文件被编译器编译成()

    A中间语言(IL)代码

    BC#代码

    C机器码

    D以上都不是


    A

  • 第18题:

    无论使用那种.NET语言,MSIL是所有的.NET程序所编译成的通用中间格式。


    正确答案:正确

  • 第19题:

    高级语言编译后生成的目标代码与汇编生成的代码比较,前者()


    正确答案:代码长、执行速度慢

  • 第20题:

    编译程序的输出结果可以是()。

    • A、目标代码
    • B、汇编语言代码
    • C、中间代码
    • D、优化后的中间代码
    • E、可重定位代码

    正确答案:A,B,C,D,E

  • 第21题:

    多选题
    编译过程中,比较常见的中间语言有()。
    A

    波兰表示

    B

    逆波兰表示

    C

    三元式

    D

    四元式


    正确答案: B,D
    解析: 暂无解析

  • 第22题:

    单选题
    用高级语言编写的源程序在翻译过程中有两种方式:解释方式和编译方式。解释方式执行比编译方式()
    A

    B

    C

    差不多

    D

    元法比较


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    用VB.NET语言开发的源代码文件被编译器编译成()
    A

    中间语言(IL)代码

    B

    C#代码

    C

    机器码

    D

    以上都不是


    正确答案: B
    解析: 暂无解析