试题详情
- 简答题寄存器分配的原则是什么?
-
寄存器分配的原则是:
(1)当生成某变量的目标代码时,尽量让变量的值或计算结果保留在寄存器中,直到寄存器不够分配时为止。
(2)当到基本块出口时,将变量的值存放在内存中,因为一个基本块可能有多个后继结点或多个前驱结点,同一个变量名在不同前驱结点的基本块内出口前存放的寄存器可能不同,或没有定值,所以应在出口前把寄存器的内容放在内存中,这样从基本块外入口的变量值都在内存中。
(3)对于在一个基本块内后边不再被引用的变量所占用的寄存器应尽早释放,以提高寄存器的利用效率。 关注下方微信公众号,在线模考后查看
热门试题
- 将编译程序分成若干个“遍”是为了()
- 一个算符优先文法可能不存在算符优先函数与
- 一个结点相应的文法符号属性值是由该结点兄
- 语法分析的主要任务是什么?常分为哪二类方
- 前缀
- 活前缀
- 自顶向下的语法分析方法的基本思想是:从文
- 词法分析器用于识别()
- 源程序
- 目标代码生成时,应考虑如何充分利用计算机
- SLR(1)分析法的名字中,“L”的含义
- ()这样一些语言,它们能被确定的有穷自动
- 一个确定有穷自动机有且只有一个终态。
- 编译程序中语法分析器接收以()为单位的输
- 正规式M1和M2等价是指()。
- 词法分析
- 逆波兰法表示的表达式把运算对象放在运算符
- 构造LR分析器的任务就是产生LR分析表。
- 说明下面文法G[S]是二义性文法:S→S
- 句子的二义性(这里的二义性是指语法结构上