编译器的主要工作过程是将以文本形式输入的代码逐步转化为各种形式,最终生成可执行代码。现代编译器主要关注编译过程和程序的中间表示,围绕程序的各种形态进行转化与处理。针对这种特征,现代编译器应该采用()架构风格最为合适。A.数据共享B.虚拟机C.隐式调用D.管道-过滤器

题目
编译器的主要工作过程是将以文本形式输入的代码逐步转化为各种形式,最终生成可执行代码。现代编译器主要关注编译过程和程序的中间表示,围绕程序的各种形态进行转化与处理。针对这种特征,现代编译器应该采用()架构风格最为合适。

A.数据共享

B.虚拟机

C.隐式调用

D.管道-过滤器


相似考题
参考答案和解析
参考答案:A

本题主要考查对架构风格的理解和掌握。根据题干描述,现代编译器主要关注编译过程和程序的中间表示,围绕程序的各种形态进行转化与处理。这种情况下,可以针对程序的各种形态构建数据库,通过中心数据库进行转换与处理。根据上述分析,选项中列举的架构风格中,数据共享风格最符合要求。

更多“编译器的主要工作过程是将以文本形式输入的代码逐步转化为各种形式,最终生成可执行代码。现代编译器主要关注编译过程和程序的中间表示,围绕程序的各种形态进行转化与处理。针对这种特征,现代编译器应该采用()架构风格最为合适。 ”相关问题
  • 第1题:

    一个软件的架构设计是随着技术的不断进步而不断变化的。以编译器为例,其主流架构经历了管道—过滤器到数据共享为中心的转变过程。以下关于编译器架构的叙述中,错误的是______。

    A.早期的编译器采用管道—过滤器架构风格,以文本形式输入的代码被逐步转化为各种形式,最终生成可执行代码

    B.早期的编译器采用管道-过滤器架构风格,并且大多数编译器在词法分析时创造独立的符号表,在其后的阶段会不断修改符号表,因此符号表并不是程序数据的一部分

    C.现代的编译器采用以数据共享为中心的架构风格,主要关心编译过程中程序的中间表示

    D.现代的编译器采用以数据共享为中心的架构风格,但由于分析树是在语法分析阶段结束后才产生作为语义分析的输入,因此分析树不是数据中心的共享数据


    正确答案:D
    解析:一个软件的架构设计是随着技术的不断进步而不断变化的。以编译器为例,其主流架构经历了管道-过滤器到数据共享为中心的转变过程。早期的编译器采用管道-过滤器架构风格,以文本形式输入的代码被逐步转化为各种形式,最终生成可执行代码。早期的编译器采用管道-过滤器架构风格,并且大多数编译器在词法分析时创造独立的符号表,在其后的阶段会不断修改符号表,因此符号表并不是程序数据的一部分。现代的编译器采用以数据共享为中心的架构风格,主要关心编译过程中程序的中间表示。现代的编译器采用以数据共享为中心的架构风格,分析树是在语法分析阶段结束后才产生作为语义分析的输入,分析树是数据中心中重要的共享数据,为后续的语义分析提供了帮助。

  • 第2题:

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

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

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

  • 第3题:

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

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

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

  • 第4题:

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

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

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

  • 第5题:

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

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

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