itgle.com

将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关于中间代码的叙述中,正确的是( )。A.中间代码常采用符号表来表示 B.后缀式和三地址码是常用的中间代码 C.对中间代码进行优化要依据运行程序的机器特性 D.中间代码不能跨平台

题目
将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关于中间代码的叙述中,正确的是( )。

A.中间代码常采用符号表来表示
B.后缀式和三地址码是常用的中间代码
C.对中间代码进行优化要依据运行程序的机器特性
D.中间代码不能跨平台

相似考题
更多“将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关于中间代码的叙述中,正确的是( )。”相关问题
  • 第1题:

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

    A.词法分析和语法分析

    B.语义分析和中间代码生成

    C.中间代码生成和代码优化

    D.代码优化和目标代码生成


    正确答案:C
    解析:本题考查程序语言翻译基础知识。编译器对高级语言源程序的处理过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等阶段,以及符号表管理模块和出错处理模块。在编译器的分析综合模式中,前端将源程序翻译成一种中间表示,后端根据这个中间表示生成目标代码。目标语言的细节尽可能限制在后端。尽管可以将源程序直接翻译成目标语言代码,但使用与机器无关的中间表示形式具有以下优点:①重置目标比较容易。不同机器上的编译器可以在已有前端的基础上附加一个适合这个机器的后端来生成。②可以在中间表示上应用与机器无关的代码优化器。

  • 第2题:

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

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

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

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

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


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

  • 第3题:

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

    A.前缀码

    B.三地址码

    C.符号表

    D.补码和移码


    正确答案:B

  • 第4题:

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

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

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

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

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


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

  • 第5题:

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

    A.中间代码不依赖于具体的机器
    B.使用中间代码可提高编译程序的可移植性
    C.中间代码可以用树或图表示
    D.中间代码可以用栈和队列表示

    答案:D
    解析:
    中间代码是源程序的一种内部表示,或称中间语言。中间代码的作用是使编译程序的结构在逻辑上更为简单明确。使用中间代码可提高编译程序的可移植性,常见的有逆波兰记号、四元式、三元式和树。

  • 第6题:

    编译和解释是实现高级语言翻译的两种基本方式,相对应的程序分别称为编译器和解释器。与编译器相比,解释器( )。编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段;其中,代码优化和(请作答此空)并不是每种编译器都必需的。词法分析的作用是识别源程序中的( )。

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

    答案:C
    解析:
    本题考查程序语言基础知识。
    在实现程序语言的编译和解释两种方式中,编译方式下会生成用户源程序的目标代码,而解释方式下则不产生目标代码。目标代码经链接后产生可执行代码,可执行代码可独立加载运行,与源程序和编译程序都不再相关。而在解释方式下,在解释器的控制下执行源程序或其中间代码,因此相对而言,用户程序执行的速度更慢。
    中间代码生成和优化不是编译过程中必需的阶段。对用户源程序依次进行了词法分析、语法分析和语义分析后,原则上就可以产生目标代码了,只是目标代码的质量和效率可能不够高。
    词法分析时编译或解释用户源程序过程中唯一与源程序打交道的阶段,其主要功能是按顺序分析出源程序的记号。

  • 第7题:

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

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

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

  • 第8题:

    ( ) 属于系统软件,它直接执行高级语言源程序或与源程序等价的某种中间代码。

    A 编译程序
    B 预处理程序
    C 汇编程序
    D 解释程序

    答案:D
    解析:
    本题考查计算机系统软件方面的基础知识。 计算机系统中的软件可分为系统软件和应用软件两大类,语言处理程序用于将高级语言编写的程序翻译成汇编语言或机器语言,以便在计算机上执行。编译程序、汇编程序和解释程序是常见的语言处理程序,其工作对象或方式不同。汇编程序将汇编语言编写的程序翻译成机器语言程序。编译程序的翻译方式是将高级语言源程序翻译成目标程序(汇编语言或机器语言形式),进行汇编及连接后在计算机上执行。解释程序直接执行高级语言源程序或先翻译成某种中间代码形式再执行,不形成与源程序功能等价的目标程序。有些语言在编译之前还需要进行预处理,如C/C++语言等。

  • 第9题:

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

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

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

  • 第10题:

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

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

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

  • 第11题:

    对高级语言源程序进行编译或翻译的过程可以分为多个阶段,解释方式不包含()阶段。

    • A、词法分析
    • B、语法分析
    • C、语义分析
    • D、目标代码生成

    正确答案:D

  • 第12题:

    单选题
    ()属于系统软件,它直接执行高级语言源程序或与源程序等价的某种中间代码。
    A

    编译程序

    B

    预处理程序

    C

    汇编程序

    D

    解释程序


    正确答案: A
    解析: 汇编程序用来翻译由汇编语言编写的源程序,翻译成目标程序后执行。而用汇编语言编写的程序是低级程序。如果源程序是用某种高级语言编写的,则需要响应的编译程序或解释程序对其进行翻译,然后在机器上执行。
    编译程序需要把用高级语言编写的源程序翻译成与之等价的目标程序之后才能执行;而解释程序可直接运行由高级语言编写的源程序,也可以先将源程序翻译成某种中间代码形式,然后对中间代码进行解释执行。

  • 第13题:

    什么属于系统软件,它直接执行高级语言源程序或与源程序等价的某种中间代码。

    A.编译程序

    B.预处理程序

    C.汇编程序

    D.解释程序


    正确答案:D

  • 第14题:

    以下关于高级程序设计语言实现的编译和解释方式的叙述中,正确的是()

    A.编译程序不参与用户程序的运行控制,而解释程序则参与

    B.编译程序可以用高级语言编写,而解释程序只能用汇编语言编写

    C.编译方式处理源程序时不进行优化,而解释方式则进行优化

    D.编译方式不生成源程序的目标程序,而解释方式则生成。


    正确答案:D

  • 第15题:

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

    A. 中间代码不依赖于具体的机器B. 不同的高级程序语言不能翻译为同一种中间代码C. 汇编语言是一种中间代码D. 中间代码的优化必须考虑运行程序的具体机器


    正确答案:A

  • 第16题:

    ●编译器对高级语言源程序的处理过程可以划分为同法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段:其中,代码优化和 ()并不是每种编译器部必需的。()A.词法分析 B.语法分析 C.中间代码生成 D.语义分析


    正确答案:C
    中间代码生成:在语法和语义分析的基础上,将源程序转变为一种内部表示形式(中间语言、中间代码),它通常易于生成、易于翻译成目标代码。不过,并不是所有的语言都必须经过这一步。
    代码优化:对前阶段生成的中间代码进行变换或改造,以使生成的目标代码更节省时间和空间。不过,这个工作也并非是每种编译器都需要的。

  • 第17题:

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

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

    答案:C
    解析:
    本题考查程序语言基础知识。解释程序也称为解释器,它可以直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行;而编译程序(编译器)则首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序。这两种语言处理程序的根本区别是:在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。解释器翻译源程序时不产生独立的目标程序,而编译器则需将源程序翻译成独立的目标程序。分阶段编译器的工作过程如下图所示。其中,中间代码生成和代码优化不是必需的。

  • 第18题:

    编译和解释是实现高级语言翻译的两种基本方式,相对应的程序分别称为编译器和解释器。与编译器相比,解释器( )。编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段;其中,代码优化和( )并不是每种编译器都必需的。词法分析的作用是识别源程序中的(请作答此空)。

    A.常量和变量
    B.数据类型
    C.记号
    D.语句

    答案:C
    解析:
    本题考查程序语言基础知识。
    在实现程序语言的编译和解释两种方式中,编译方式下会生成用户源程序的目标代码,而解释方式下则不产生目标代码。目标代码经链接后产生可执行代码,可执行代码可独立加载运行,与源程序和编译程序都不再相关。而在解释方式下,在解释器的控制下执行源程序或其中间代码,因此相对而言,用户程序执行的速度更慢。
    中间代码生成和优化不是编译过程中必需的阶段。对用户源程序依次进行了词法分析、语法分析和语义分析后,原则上就可以产生目标代码了,只是目标代码的质量和效率可能不够高。
    词法分析时编译或解释用户源程序过程中唯一与源程序打交道的阶段,其主要功能是按顺序分析出源程序的记号。

  • 第19题:

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

    A.中间代码不依赖于具体的机器
    B.使用中间代码可提高编译程序的可移植性
    C.中间代码可以用树或图表示
    D.中间代码可以用栈和队列表示

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

  • 第20题:

    将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关手中间代码的叙途中,正确的是( )。

    A.中间代码常采用符号表来表示
    B.后缀式和三地址码是常用的中间代码
    C.对中间代码进行优化要依据运行程序的机器特性
    D.中间代码不能跨平台

    答案:B
    解析:
    中间代码的作用是可使程序的结构在逻辑上更为简单明确,特别是可使目标代码的优化比较容易实现。中间代码有多种形式,常见的有逆波兰记号(后缀式)、四元式和三元式,它们的共同特点是与具体的机器无关,不依赖于具体的计算机。

  • 第21题:

    将高级语言源程序翻译为可在计算机上执行的形式有多种不同的方式,其中( )。

    A.编译方式和解释方式都生成逻辑上与源程序等价的目标程序
    B.编译方式和解释方式都不生成逻辑上与源程序等价的目标程序
    C.编译方式生成逻辑上与源程序等价的目标程序,解释方式不生成
    D.解释方式生成逻辑上与源程序等价的目标程序,编译方式不生成

    答案:C
    解析:
    解释程序也称为解释器,它或者直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行;编译程序(编译器)则是将源程序翻译成目标语言程序,然后在计算机上运行目标程序。两种语言处理程序的根本区别是:在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,而在解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。解释器翻译源程序时不生成独立的目标程序,而编译器则将源程序翻译成独立的目标程序。

  • 第22题:

    使用编译或解释两种方式将高级语言编写的源程序翻译成机器指令,下列表述中,正确的是()。

    A、机器语言经编译方式转换为计算机能执行的指令
    B、汇编语言必须经解释方式转换为计算机能执行的指令
    C、编译方式是将源程序逐句翻译,边翻译边执行
    D、解释过程不产生目标程序

    答案:D
    解析:
    机器语言和汇编语言,经编译方式和解释方式转换为计算机能执行的指令;解释方式是将源程序逐句解释,边解释边执行。

  • 第23题:

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

    • A、词法分析
    • B、语法分析
    • C、中间代码生成
    • D、目标代码生成

    正确答案:C