12、语法制导翻译中语义分析与语法分析是同时进行的。

题目

12、语法制导翻译中语义分析与语法分析是同时进行的。


相似考题
更多“12、语法制导翻译中语义分析与语法分析是同时进行的。”相关问题
  • 第1题:

    以下关于编译系统对某高级语言进行翻译的叙述中,错误的是( )。

    A.词法分析将把源程序看作一个线性字符序列进行分析

    B.语法分析阶段可以发现程序中所有的语法错误

    C.语义分析阶段可以发现程序中所有的语义错误

    D.目标代码生成阶段的工作与目标机器的体系结构相关


    正确答案:C
    解析:语义分析阶段只能发现程序中的语法错误,而不能发现程序中存在的逻辑上的错误。

  • 第2题:

    自下而上语法制导翻译法的特点是语法分析栈与语义分析栈不需同步操作。()


    参考答案:错误

  • 第3题:

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

    A.词法分析

    B.语法分析

    C.语义分析

    D.代码优化


    正确答案:C
    对源程序进行编译的过程可以分为词法分析,语法分析,语义分析,中间代码生成和优化,目标代码生成等阶段。其中,词法分析是分析各种构造形式的单词,如整型常量,浮点常量,标识符,运算符等;语法分析是分析各种构造形式的表达式和语句,词法分析和语法分析都是对程序的结构进行分析。语义分析是值分析程序中各种语言成分的含义,是对程序的静态语义的分析,程序运行时体现程序的体态语义。

  • 第4题:

    编译程序一般采用(29)技术进行语义分析和生成中间代码。

    A.数据控制翻译

    B.流程控制翻译

    C.语法制导翻译

    D.面向对象的翻译


    正确答案:C
    解析:目前,编译程序一般采用语法制导翻译技术进行语义分析和生成中间代码,概括说明如下所述。根据语义分析和生成中间代码的需要,给每个文法符号设置若干个属性,用以表示它的语义信息。例如,变量可设置类型、层次、内存单元地址等;表达式可设置类型、中间代码等。然后对语言的文法进行扩充,对每条产生式编写一个语义子程序(或函数),用以计算有关文法符号的属性值,即在语法分析过程中使用这条产生式进行语法分析时,调用它的语义子程序完成相应的语义分析和翻译任务。随着语法分析的步步进展,当一条产生式获得匹配(自顶向下分析)或用于归约(自底向上分析)时,就执行这条产生式所对应的语义子程序进行翻译,这种方法称作语法制导翻译。它既适用于自顶向下分析,又适用于自底向上分析。例如,若仅把赋值语句翻译成四元式形式的中间代码,下面给出了每个产生式及相应的翻译子程序。S→id=E{p=Entry(id.name);if(p!=NULL)GEN(:=,E.place,-,p);elseerror;}E→E1+E2{E.place=newtemp;GEN(+,E1.place,E2.place,E.place);}E→E1*+E2{E.place=newtemp;GEN(*,E1.place,E2.place,E.place);}E→id{p=Entry(id.name);if(p!=NULL)E.place=p;elseerror;}

  • 第5题:

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

    A.词法分析

    B.语法分析

    C.语义分析

    D.目标代码生成


    正确答案:D

  • 第6题:

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

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


    正确答案:C

  • 第7题:

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

    (21)

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

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

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

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


    正确答案:A

  • 第8题:

    语法制导翻译是一种( )方法。

    A.动态语义分析
    B.中间代码优化
    C.静态语义分析
    D.目标代码优化

    答案:C
    解析:
    程序设计语言的语义分为静态语义和动态语义,其中静态语义分析方法是语法制导翻译,其基本思想是将语言结构的语义以属性的形式赋予代表此结构的文法符号,而属性的计算以语义规则的形式赋予文法的产生式。

  • 第9题:

    在编译的各阶段中,和目标机器关系最为密切的是()。

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

    正确答案:D

  • 第10题:

    语法分析器则可以发现源程序中的()

    • A、语义错误
    • B、语法和语义错误
    • C、错误并校正
    • D、语法错误

    正确答案:D

  • 第11题:

    下列()是数据库设计的阶段。

    • A、语义分析
    • B、需求分析
    • C、语法分析
    • D、数据分析

    正确答案:B

  • 第12题:

    判断题
    语法制导翻译只适用于自下而上的语法分析方法。
    A

    B


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

  • 第13题:

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

    (7)A.词法分析

    B.语法分析

    C.语义分析

    D.代码优化


    正确答案:C

  • 第14题:

    ●以下关于高级程序设计语言翻译的叙述中,正确的是 (48) 。

    (48)

    A.可以先进行语法分析,再进行词法分析

    B.在语法分析阶段可以发现程序中的所有错误

    C.语义分析阶段的工作与目标机器的体系结构密切相关

    D.目标代码生成阶段的工作与目标机器的体系结构密切相关


    正确答案:D

  • 第15题:

    程序以解释方式运行时,不(31)。

    A.进行词法分析

    B.进行语法分析

    C.进行语义分析

    D.产生目标程序文件


    正确答案:D
    解析:本题考查关于语言处理的编译和解释基本概念。编译和解释足两种处理程序语言的方式。编译程序(编译器)首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序;而解释程序(也称为解释器)或者直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行。这两种语言处理程序的根本区别是:在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。词法分析、语法分析和语义分析是进行语言翻译不可或缺的基本工作阶段,是编译和解释方式都要处理的。简单来说,解释器翻译源程序时不产生独立的目标程序,而编译器则需将源程序翻译成独立的目标程序。

  • 第16题:

    程序以解释方式运行时,不______。

    A.进行词法分析

    B.进行语法分析

    C.进行语义分析

    D.产生目标程序文件


    正确答案:D
    解析:解释方式执行是直接执行源程序或源程序的内部形式,所以它不需要产生目标程序文件。本题正确答案为选项D。

  • 第17题:

    以编译方式翻译C/C++杆源程序的过程中,( )阶段的主要任务是对各条语句 的结构进行合法性分析。

    A.词法分析

    B.语义分析

    C.语法分析

    D.目标代码生成


    正确答案:C

  • 第18题:

    以编译方式翻译C/C++源程序的过程中,语句结构的合法性分析是( )的任务。

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


    正确答案:C

  • 第19题:

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

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

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

  • 第20题:

    以编译方式翻译C/C++源程序的过程中,判断表达式的除数是否为零是( )的任务。

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

    答案:B
    解析:
    语义分析阶段:主要检查源程序是否存在静态语义错误,并收集类型信息供后面的代码生成阶段使用,如:赋值语句的右端和左端的类型不匹配。表达式的除数是否为零等。

  • 第21题:

    语法制导翻译只适用于自下而上的语法分析方法。


    正确答案:错误

  • 第22题:

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

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

    正确答案:D

  • 第23题:

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

    词法分析

    B

    语法分析

    C

    语义分析

    D

    目标代码生成


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

  • 第24题:

    单选题
    语法分析器则可以发现源程序中的()
    A

    语义错误

    B

    语法和语义错误

    C

    错误并校正

    D

    语法错误


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