单选题编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(2)处应选择()A 基本块B 循环语句C 赋值语句D 整个程序

题目
单选题
编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(2)处应选择()
A

基本块

B

循环语句

C

赋值语句

D

整个程序


相似考题
更多“编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范”相关问题
  • 第1题:

    编译程序对中间代码的优化,根据优化所涉及的程序范围,可分为局部优化、循环优化和全局优化。所谓局部优化是指在(30)范围内做的优化。

    A.表达式

    B.语句

    C.函数

    D.基本块


    正确答案:D
    解析:局部优化是在基本块范围内进行的优化。所谓基本块是指程序中一个顺序执行的语句(四元式)序列,其中只有一个入口和一个出口。入口就是其中的第1条语句,出口是最后一条语句。对一个给定的程序,把它划分成一系列的基本块,以基本块为结点,构建程序流图。对中间代码优化,首先是在各基本块范围内,分别进行局部优化,然后,进行基于循环的优化和全局优化。一个基本块中的四元式序列,可以先把它表示成一个DAG(有向无环)图,然后,根据DAG图的依赖关系,把这个DAG图重新写成一个基本块的四元式序列。在重建基本块的四元式序列过程中,进行已知量的合并、删除多余运算和删除无用赋值的优化。

  • 第2题:

    下列优化中,不属于循环优化的是(42)。

    A.强度削弱

    B.合并已知量

    C.删除归纳变量

    D.代码外提


    正确答案:B
    解析:循环优化包括:代码外提,强度削弱,删除归纳变量,循环展开和循环合并。

  • 第3题:

    一个典型的编译程序中,不仅包括()、()、()、代码优化、目标代码生成等五个部分,还应包括表格处理和出错处理。


    正确答案:词法分析;语法分析;中间代码生成

  • 第4题:

    在编译程序中与生成中间代码的目的无关的是()

    • A、便于目标代码优化
    • B、便于存储空间的组织
    • C、便于目标代码的移植
    • D、便于编译程序的移植

    正确答案:B

  • 第5题:

    代码的优化可以分为局部优化、循环优化和全局优化。强度削弱属于()优化,删除公共子表达式属于()优化。


    正确答案:循环;局部

  • 第6题:

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

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

    正确答案:D

  • 第7题:

    编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(1)处应选择()

    • A、基本块
    • B、循环语句
    • C、赋值语句
    • D、整个程序

    正确答案:A

  • 第8题:

    通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括()。

    • A、模拟执行器
    • B、解释器
    • C、表格处理和出错处理
    • D、符号执行器

    正确答案:C

  • 第9题:

    填空题
    代码的优化可以分为局部优化、循环优化和全局优化。强度削弱属于()优化,删除公共子表达式属于()优化。

    正确答案: 循环,局部
    解析: 暂无解析

  • 第10题:

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

    词法分析

    B

    语法分析

    C

    中间代码生成

    D

    目标代码生成


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

  • 第11题:

    多选题
    常见的代码优化包括()。
    A

    常量合并

    B

    公共子表达式删除

    C

    复写传播

    D

    死代码删除


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

  • 第12题:

    单选题
    在编译程序中与生成中间代码的目的无关的是()
    A

    便于目标代码优化

    B

    便于存储空间的组织

    C

    便于目标代码的移植

    D

    便于编译程序的移植


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

  • 第13题:

    在编译程序时,采用的对中间代码的优化方法中,(30)是基于循环结构进行的优化处理。

    ①合并已知量

    ②删除归纳变量

    ③删除多余运算

    ④强度削弱

    ⑤复写传播

    ⑥代码外提

    A.①③⑤

    B.②④⑥

    C.①②③

    D.④⑤⑥


    正确答案:B
    解析:针对循环能采用的优化技术有代码外提、强度削弱和删除归纳变量。代码外提是把循环体中不随循环的执行改变计算结果的表达式外提到循环的前置块中。强度削弱是用较弱的运算代替较强的运算,例如用加法运算代替乘法运算。为了实施这种优化技术,要先找出归纳变量,什么是归纳变量呢?若在循环体中变量i只有唯一的形式i:=i+c,其中c是常量,则称i是基本归纳变量。若在循环体中有另一个变量j,其值是基本归纳变量i的线性函数,则称j是普通归纳变量。删除归纳变量是在强度削弱后进行的,用和基本归纳变量同族的归纳变量代替之,使基本归纳变量成为无用赋值,故可删去。

  • 第14题:

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

    A.词法分析

    B.语法分析

    C.语义分析

    D.代码优化


    正确答案:A

  • 第15题:

    常见的代码优化包括()。

    • A、常量合并
    • B、公共子表达式删除
    • C、复写传播
    • D、死代码删除

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

  • 第16题:

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

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

    正确答案:C

  • 第17题:

    编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(2)处应选择()

    • A、基本块
    • B、循环语句
    • C、赋值语句
    • D、整个程序

    正确答案:B

  • 第18题:

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

    • A、符号执行器
    • B、模拟执行器
    • C、解释器
    • D、表格管理和出错处理

    正确答案:D

  • 第19题:

    编译程序分6个阶段();()、语议分析、源代码程序优化、代码生成器和目标代化优化程序。


    正确答案:扫描程序、语法分析

  • 第20题:

    单选题
    编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(2)处应选择()
    A

    基本块

    B

    循环语句

    C

    赋值语句

    D

    整个程序


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

  • 第21题:

    单选题
    编译程序中代码优化的目的在于使目标程序的执行速度加快。采用的优化方法中,合并已知量和删除公共子表达式是在__(1)__范围内进行;代码外提、删除归纳变量和强度削弱等是在__(2)__范围内进行。空白(1)处应选择()
    A

    基本块

    B

    循环语句

    C

    赋值语句

    D

    整个程序


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

  • 第22题:

    填空题
    编译程序分6个阶段();()、语议分析、源代码程序优化、代码生成器和目标代化优化程序。

    正确答案: 扫描程序、语法分析
    解析: 暂无解析

  • 第23题:

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

    Basic程序

    B

    中间语言

    C

    另一种高级语言

    D

    低级语言


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

  • 第24题:

    填空题
    一个典型的编译程序中,不仅包括()、()、()、代码优化、目标代码生成等五个部分,还应包括表格处理和出错处理。

    正确答案: 词法分析,语法分析,中间代码生成
    解析: 暂无解析