📜  门| GATE-CS-2016(套装1)|第 56 题

📅  最后修改于: 2021-09-26 04:24:24             🧑  作者: Mango

考虑以下语法定向翻译方案 (SDTS),具有非终结符 {S, A} 和终结符 {a, b}}。

GT46

使用上面的 SDTS,由自底向上解析器打印的输出,对于输入aab
(一) 1 3 2
(乙) 2 2 3
(C) 2 3 1
(D)语法错误答案: (C)
解释:自底向上解析器自底向上构建解析树,即从给定的字符串到起始符号。给定的字符串是 aab,起始符号是 S。

所以这个过程是从aab开始,到达S。

=>aab(给定字符串)
=>aSb(减少 S->a 后,因此打印 2)
=>aA(减少 A->Sb 后,因此打印 3)
=>S(减少 S->aA 后,因此打印 1)

当我们从字符串到达起始符号时,该字符串属于语法语言。

另一种做同样事情的方法是:-自底向上解析器通过 RMD 反向解析。

RMD如下:

=> S
=> aA(因此,打印 1)
=> aSb(因此,打印 3)
=> aab(因此,打印 2)

如果我们采用 Reverse,它将打印:231这个问题的测验