itgle.com

表达式中括号不匹配错误可在编译程序______阶段检查出来。A.词法分析B.语法分析C.语义分析D.代码优化

题目

表达式中括号不匹配错误可在编译程序______阶段检查出来。

A.词法分析

B.语法分析

C.语义分析

D.代码优化


相似考题
更多“表达式中括号不匹配错误可在编译程序______阶段检查出来。A.词法分析B.语法分析C.语义分析D.代码优化”相关问题
  • 第1题:

    编译程序在语法分析阶段能检查出(41)错误。

    A.表达式中的括号不匹配

    B.以零作除数

    C.数组下标越界

    D.无穷递归


    正确答案:A
    解析:本题考查的是编译程序的基本工作原理和基本概念。编译程序的功能是把某高级语言编写的源程序翻译成与之对应的目标程序(汇编语言程序或机器语言程序)。编译程序的工作过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成等6个阶段。其中,词法分析阶段的任务是对源程序从前到后(从左到右)逐个字符地扫描,从中识别出一个个“单词”符号。在词法分析的基础上,语法分析阶段根据语言的语法规则将单词符号序列分解成各类语法单位,如“表达式”、“语句”、“程序”等。语法规则就是各类语法单位的构成规则。通过语法分析确定整个输入串是否构成一个语法上正确的程序。如果源程序中没有语法错误,语法分析后就能正确地构造出其语法树;否则就指出语法错误,并给出相应的诊断信息。语义分析阶段主要检查源程序是否包含语义错误,并收集类型信息供后面的代码生成阶段使用。只有语法和语义都正确的源程序才能被翻译成正确的目标代码。程序员编写的源程序中往往会有一些错误,这些错误大致被分为静态错误和动态错误两类。所谓动态错误,是指源程序中的逻辑错误,它们发生在程序运行的时候,比如算法逻辑上的错误。动态错误也被称为动态语义错误,如变量取值为0时被用作除数,引用数组元素时下标出界等。静态错误又可以分为语法错误和静态语义错误。词法和语法错误是指有关语言结构上的错误,如单词拼写错误就是一种词法错误,表达式中缺少操作数、括号不匹配是不符合语法规则要求的语法错误等。静态的语义错误是指分析源程序时可以发现的语言意义上的错误,如乘法运算的两个操作数中一个是整型变量名,而另一个是数组等。表达式中的括号不匹配属于语言结构上的错误,所以可在语法分析阶段检查出该错误。

  • 第2题:

    程序中的注释是为了提高可读性而加入的,它不影响程序实现的功能。编译程序在(9)阶段删除掉源程序中的注释。

    A.词法分析

    B.语法分析

    C.语义分析

    D.代码优化


    正确答案:A

  • 第3题:

    ●编译器在 ()阶段进行表达式的类型检查及类型转换。()A.词法分析 B.语法分析 C.语义分析 D.目标代码生成


    正确答案:C
    语义分析:审查源程序有无语义错误,为代码生成阶段收集类型信息。也就是说,编译器将在这个阶段进行表达式的类型检查和转换。
    目标代码生成:将中间代码变换成特定机器上的绝对指令代码(或可重定位的指令代码、汇编指令代码)。

  • 第4题:

    ● 编译程序分析源程序的阶段依次是 (21) 。

    (21)

    A. 词法分析、语法分析、语义分析

    B. 语法分析、词法分析、语义分析

    C. 语义分析、语法分析、词法分析

    D. 语义分析、词法分析、语法分析


    正确答案:A

  • 第5题:

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

    A.词法分析
    B.语法分析
    C.语义分析
    D.代码优化

    答案:A
    解析:
    本题考查程序语言基础知识。
    编译程序的工作过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、代码生成这6个阶段。一般情况下,注释本身并不为编译程序提供关于程序结构和语义的任何信息,编译程序在词法分析阶段就会删除源程序中的注释。

  • 第6题:

    在编译过程中,进行类型分析和检查是( )阶段的一个主要工作。

    A.词法分析
    B.语法分析
    C.语义分析
    D.代码优化

    答案:C
    解析:
    一般的编译程序工作过程包括词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成,以及出错处理和符号表管理。词法分析阶段是编译过程的第一阶段,这个阶段的任务是对源程序从前到后(从左到右)逐个字符地扫描,从中识别出一个个“单词”符号。语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位,如“表达式”、“语句”和“程序”等。语义分析阶段主要分析程序中各种语法结构的语义信息,包括检查源程序是否包含语义错误,并收集类型信息供后面的代码生成阶段使用。只有语法和语义都正确的源程序才能被翻译成正确的目标代码。由于编译器将源程序翻译成中间代码的工作是机械的、按固定模式进行的,因此,生成的中间代码往往在时间上和空间上有很大的浪费。当需要生成高效的目标代码时,就必须进行优化。

  • 第7题:

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

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

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

  • 第8题:

    编译程序分析源程序的阶段依次是( )。

    A.词法分析、语法分析、语义分析
    B.语法分析、词法分析、语义分析
    C.语义分析、语法分析、词法分析
    D.语义分析、词法分析、语法分析

    答案:A
    解析:
    编译程序分析源程序的阶段依次词法分析、语法分析、语义分析。

  • 第9题:

    将编译器的工作过程划分为词法分析,语义分析.中间代码生成,代码优化和目标代码生成时,语法分析阶段的输入是(请作答此空)若程序中的括号不配对,则会在( )阶段检查出错误

    A.记号流
    B.字符流
    C.源程序
    D.分析树

    答案:A
    解析:
    词法分析器的任务是把源文件的字符流转换成记号流。 语法分析器根据语法规则识别出记号流中的结构(短语、句子),并构造一棵能够正确反映该结构的语法树。

  • 第10题:

    编译程序的工作过程一般可以划分为词法分析,语法分析,语义分析,中间代码生成,代码优化等几个基本阶段,同时还会伴有()和()。


    正确答案:表格处理;出错处理

  • 第11题:

    多选题
    编译程序工作时,通常包括()阶段。
    A

    词法分析

    B

    语法分析

    C

    中间代码生成

    D

    语义检查

    E

    目标代码生成


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

  • 第12题:

    填空题
    编译程序的工作过程一般可以划分为词法分析,语法分析,语义分析,中间代码生成,代码优化等几个基本阶段,同时还会伴有()和()。

    正确答案: 表格处理,出错处理
    解析: 暂无解析

  • 第13题:

    编译程序的工作可分为6个阶段:词法分析、语法分析、(29)、中间代码生成、代码优化和目标代码生成。其中,中间代码生成和(30)不是必须经过的阶段。

    (65)

    A.过程分析

    B.语义分析

    C.数据分析

    D.单词分析


    正确答案:B

  • 第14题:

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


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

  • 第15题:

    ●在编译过程中,进行类型分析和检查是(29)阶段的一个主要工作。

    (29)A.词法分析

    B.语法分析

    C.语义分析

    D.代码优化


    正确答案:C

  • 第16题:

    在对源程序进行编译的过程中,( )是正确的顺序。

    A.语义分析、语法分析、词法分析
    B.语法分析、词法分析、语义分析
    C.词法分析、语法分析、语义分析
    D.词法分析、语义分析、语法分析

    答案:C
    解析:
    本题考查程序语言基础知识。
    编译程序的功能是把某高级语言书写的源程序翻译成与之等价的目标程序(汇编语言程序或机器语言程序)。编译程序的工作过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成、符号表管理和出错处理,如下图所示。

  • 第17题:

    编写程序时通常为了提高可读性而加入注释,注释并不参与程序的运行过程。通常,编译程序在_______阶段就会删除源程序中的注释。

    A.词法分析
    B.语法分析
    C.语义分析
    D.代码优化

    答案:A
    解析:
    通常先进行词法分析,在进行语法分析。因为注释不参与程序代码的编译与运行,因此在词法分析阶段就已经删除了。

  • 第18题:

    将编译器的工作过程划分为词法分析,语义分析.中间代码生成,代码优化和目标代码生成时,语法分析阶段的输入是( )若程序中的括号不配对,则会在(请作答此空)阶段检查出错误

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

    答案:B
    解析:
    语法分析主要检查句子的结构是否符合语法规则,“程序中的括号不配对”属于语法错误。

  • 第19题:

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

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

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

  • 第20题:

    在编译过程中,进行类型分析和检查是(7)阶段的一个主要工作。

    A.词法分析
    B.语法分析
    C.语义分析
    D.代码优化

    答案:C
    解析:
    一般的编译程序工作过程包括词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成,以及出错处理和符号表管理。
    词法分析阶段是编译过程的第一阶段,这个阶段的任务是对源程序从前到后(从左到右)逐个字符地扫描,从中识别出一个个“单词”符号。
    语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位,如“表达式”、“语句”和“程序”等。
    语义分析阶段主要分析程序中各种语法结构的语义信息,包括检查源程序是否包含语义错误,并收集类型信息供后面的代码生成阶段使用。只有语法和语义都正确的源程序才能被翻译成正确的目标代码。
    由于编译器将源程序翻译成中间代码的工作是机械的、按固定模式进行的,因此,生成的中间代码往往在时间上和空间上有

  • 第21题:

    编译程序工作时,通常包括()阶段。

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

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

  • 第22题:

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

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

    正确答案:C

  • 第23题:

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

    词法分析

    B

    语法分析

    C

    中间代码生成

    D

    目标代码生成


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