已知文法G(E): E→ET+|T T→TF*|F F→F↑|a 文法的句型FF↑↑*中关于非终结符F的短语为_______、_______、_______和_______;直接短语为_______和_______;该句型的句柄为_______;素短语为_______。
设有文法G的符号集V,非终结符集VN,终结符集VT,下列叙述中正确的是_______。
A.V=VT
B.V=VN
C.V=VT∩VN
D.V=VT∪VN
设有下列文法Gi: (1)G1:A→AaB|bB B→Dc D→Ad (2)G2:S→aABbcd|ε A→ASd|ε B→PC|SAh|ε C→Sf|Cg|ε ①计算上述文法中的每个非终结符的FIRST和FOLLOW集合。 ②证明上述文法是否为LL(1)文法?说明为什么? ③若不是LL(1)文法能否改写?构造LL(1)分析表。
设有文法G(S是G的开始符号): S→do S or S|do S|S;S|act (1)构造识别该文法可归前缀的DFA。 (2)试判断该文法是LR(0):艾法,还是SLR(1)文法,并说明理由。 (3)若对一些终结符的优先级以及算符的结合规则规定如下: ①or优先性大于do; ②;服从左结合; ③;优先性大于do; ④;优先性大于or; 请构造该文法的LR分析表。
写出一种高级语言的基本算术表达式的非二义性文法:运算符包括+、-、*、/、**(幂运算)、(),基本运算对象只含常数和变量,常数和变量是本文法的终结符。
A.LL(1)分析表指示栈顶为非终结符时面临输入符号应该选择的产生式
B.LL(1)文法的LL(1)分析表可以有多重定义
C.一个产生式只能在LL(1)分析表中填写一次
D.LL(1)分析表也可用于自底向上语法分析
A.非终结符排序不同,消除左递归的结果可能不同
B.不能改变文法的开始符号
C.消除左递归后的结果形式上可能不同,但它们是等价的
D.以上都对
将下面的左递归文法G(S)改为非左递归的。 S→SaP|Sf|P P→Q6P|Q Q→cSd|e