假设H是基本块出口的活跃变量,R0和R1是可用寄存器,对下列四元式组成基本块:
生成目标代码如下:
其中空白处的代码为()。
A.LD R0,H
B.LD R1,H
C.ST R0,H
D.ST R1,H
您可能感兴趣的试卷
你可能感兴趣的试题
按照基本快划分算法,以下中间语言程序划分成的基本块数目是()。
A.3
B.4
C.5
D.6
对于下面的程序
若参数传递的方法为传地址,程序执行时所输出的A是()。
A.2
B.7
C.8
D.9
对于下面的高级语言程序:
若参数传递的方法为传值,程序执行时所输出的A是()。
A.2
B.7
C.8
D.9
关于下面的while-do语句的属性文法,说法正确的是()。
A.E .true和E .false都是综合属性
B.E .true和E .false都是继承属性
C.综合属性S .begin存放E的代码开头的对应的标号
D.继承属性S .next存放语句S的后继语句对应的标号
A.布尔表达式在程序中可以用于逻辑演算、以及将逻辑计算的结果用作控制语句的条件
B.在不同的程序设计语言中,布尔表达式的计算规则是一样的
C.在不同的程序设计语言中,布尔表达式的计算规则可能是不同的
D.对于一个程序设计语言,布尔表达式的计算可以有不同的翻译方法,但是计算得到的逻辑结果(真假值)应当是一样的
产生式E®E1+E2的语义动作中关于E.type的语义规则可定义为:
下面的说法正确的是()。
A.整型表达式和整型表达式做加法,结果是整型
B.整型表达式和整型表达式做加法,结果是实型
C.整型表达式和实型表达式做加法,结果是整型
D.整型表达式和实型表达式做加法,结果是实型
A.编译程序在翻译数组元素引用时,会在生成的代码中插入计算数组元素地址的代码
B.编译程序产生数组元素地址计算代码,其中的不变部分与数组的定义相关
C.编译程序产生数组元素地址计算代码,其中的可变部分与数组的定义、数组元素引用的下标都相关
D.数组元素引用的翻译可以从左到右一遍扫描生成地址计算代码
关于下面的赋值语句生成三地址代码的属性文法,说法正确的是()。
A.E .place表示存放E值的单元的名字(地址)
B.E .code表示对E求值的三地址语句序列
C.S .code代表赋值语句S的三地址代码
D.上述属性文法不是S-属性文法
某语言的do-while语句的语法形式为
S ®do S(1)While E
其语义解释为:
该语句的一遍扫描翻译模式如下,其中空白处应该填写()。
A.backpatch(E .truelist,nextquad )
B.backpatch(E .falselist,nextquad )
C.backpatch(E .truelist,U .quad)
D.backpatch(E .falselist,U .quad)
最新试题
FORTRAN这样的语言,不允许过程递归,不含可变体积的数据对象或待定性质的名称,能在编译时完全确定其程序的每个数据对象在运行时存储空间的位置,可采用()
使用二叉树组织符号表查找时,以下说法()是错误的。
在循环内可以实行的优化有()
由“非终结符-->符号串”这种产生式构成的文法是()
对于基本快内Out集合由In集合计算出来,而对于基本块之间,In集合由前驱基本块的Out集合计算出来。这样的数据流问题属于()
如果一个文法是二义文法,必然有()的现象存在。
以下()不是中间代码的表示形式。
在编译中产生语法树是为了()
若有定义二进制数的文法如下:(1)试为该文法构造LR分析表,并说明属哪类LR分析表。(2)给出输入串101.110的分析过程。
一个语法的文法是()