哈工大_MOOC慕课_编译原理习题及答案 8_代码优化

本文详细探讨了代码优化的重要性,包括运行时间和内存占用的权衡,以及基本块内的优化策略。讨论了程序流图中的循环结构及其特征,并分析了中间代码优化的依赖性和等价变换原则。此外,还深入讲解了数据流分析,如到达-定值分析、活跃变量分析和可用表达式分析,以及它们在消除无用赋值和循环不变计算中的应用。文章通过习题解答帮助读者巩固相关知识。
摘要由CSDN通过智能技术生成

代码优化_1

1.优化可生成()的目标代码。

  • A.运行时间较短

  • B.占用存储空间较小

  • C.运行时间短但占用内存空间大

  • D.运行时间短且占用存储空间小

2.基本块内的优化为 ( )。

  • A.代码外提,删除归纳变量 

  • B.删除多余运算,删除无用赋值

  • C.强度削弱,代码外提

  • D.循环展开,循环合并

3.对一个基本块来说,( )是正确的。

  • A.只有一个入口语句和一个出口语句

  • B.有一个入口语句和多个出口语句

  • C.有多个入口语句和一个出口语句

  • D.有多个入口语句和多个出口语句

4.在程序流图中,我们称具有下述性质( )的结点序列为一个循环。

  • A.它们是非连通的且只有一个入口结点

  • B.它们是强连通的但有多个入口结点

  • C.它们是非连通的但有多个入口结点

  • D.它们是强连通的且只有一个入口结点

5.中间代码的优化依赖于具体的计算机。

  • ×.

6.代码优化应以等价变换为基础,既不改变程序的运行结果,又能使生成的目标代码更有效。

  • ×

7.一个程序可用一个流图来表示。

  • ×

8.优化工作只能在中间代码这一层次上进行。

  • ×

代码优化_2

1.数据流分析的主要应用不包括( )。

  • A.到达-定值分析

  • B.活跃变量分析

  • C.可用表达式分析

  • D.自然循环分析

2.以下说法不正确的是( )。

  • A.大部分全局优化是基于数据流分析技术实现的

  • B.数据流分析是一组用来获取程序执行路径上的数据流信息的技术

  • C.在每一种数据流分析应用中,都会把每个程序点和一个数据流值关联起来

  • D.一个语句之前和之后的数据流值不受该语句的语义的约束

3.以下说法不正确的是( )。

  • A.一个赋值语句之前和之后的数据流值的关系被称为传递函数<

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值