关于下面的赋值语句生成三地址代码的属性文法,说法正确的是()。
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)
假设与下图所示的if-then-else的语义对应的属性文法中
与产生式S→if E then S1else S2对应的语义规则如下,其中空白处应该填写()。
A.newlabel
B.E .true
C.E .false
D.S .next
将语句
if (A< 0)then while (C>0)do C:=C-D
翻译成下面的四元式序列,其中空白处应该填写()。
A.(j,-,-,100)
B.(j,-,-,102)
C.(j,-,-,104)
D.(j,-,-,107)
将布尔表达式
(A>B)and (B< C)or (E < F)
翻译成下面的四元式序列,其中空白处应该填写()。
A.(j,-,-,102)
B.(j,-,-,104)
C.(j,-,-,106)
D.(j,-,-,112)
将赋值语句A:=B*(-C)+D*(E-F)翻译成下面的三地址代码,其中空白处应该填写()。
A.T3:=T2+D
B.T3:=D *E
C.T3:=E -F
D.T3:=F –E
A.
B.
C.
D.
对于翻译模式
编写R的翻译子程序如下:
其中AST_node为抽象语法树(AST)结点类型。关于该子程序实现,下列说法正确的是()。
A.函数R的返回结果是指向抽象语法树结点的指针,指向翻译得到的抽象语法树的根结点
B.R的继承属性i实现为函数的形式参数in
C.如果R与e匹配,则该函数返回null值
D.R的综合属性s实现为函数的返回值
给定属性文法G(P),语法制导定义如下:
假设语法单位P对应程序,D对应声明语句,id对应标识符,T对应类型,按照该属性文法的定义,下列说法中正确的是()。
A.该文法生成的程序只能包含有一个声明语句
B.在该文法生成的程序中,可以在声明语句中声明多个变量名
C.D .i表示D对应的声明语句的数目
D.D .i表示D对应的声明语句中的标识符的数目
A.
B.
C.
D.
A.属性文法是对上下文无关文法的扩展
B.属性文法只能描述语言的语法知识
C.属性文法提供了描述语言的语义的机制
D.所有属性文法都是良定义的
![](https://static.ppkao.com/ppmg/img/appqrcode.png)
最新试题
由“非终结符-->符号串”这种产生式构成的文法是()
编译程序在其工作过程中使用最多的数据结构是()。它记录着源程序中的各种信息,以便查询或修改。
对于某文法规范句型aBcDef,如果句柄是Bc,下面哪些字符串是活前缀?()
文法识别符号经过任意步推导得到的结果是()
一个字符属于FOLLOW(S),这个字符的含义是()
面向机器语言的特点是()
词法分析器的另一个名称是()
一个语法的文法是()
递归子程序法属于()语法分析方法。
采用确定的自顶向下分析时,必须()