Frage 1
Frage
Which of the following is NOT a top-down parsing?
Frage 2
Frage
Which of the following is true for parser generator
Antworten
-
The input of a parser generator is a token stream
-
The output of a parser generator is abstract syntax tree(AST)
-
CFG of a programming language is part of the input to a parser generator.
-
Flex is a parser generator
Frage 3
Frage
Which of the follwoing is NOT true for parser?
i. The parser is to process a token stream
ii. One of the major responsibilities of parser is to detect syntax errors.
iii. The output of parser is an abstract syntax tree.
Antworten
-
i
-
i, ii
-
i, ii, iii
-
ii, iii
-
iii
-
None of the above.
Frage 4
Frage
Grammar that produce more than one parse tree for same sentence:
Antworten
-
is ambiguous
-
is unambiguous
-
has syntax errors
-
is not LL(1) grammar
Frage 5
Frage
Which of the following is WRONG
Antworten
-
A CFG grammar is said to be ambiguous if for a sentence, there is a leftmost derivation and a rightmost derivation
-
A DFG grammar is said to be ambiguous if for a sentence, there are two leftmost derivations.
-
A CFG grammar is said to be ambiguous if for a sentence, there are two rightmost derivations.
-
A CFG grammar is said to be ambiguous if for a sentence, there are two different parse tree representations.
Frage 6
Frage
The context free grammar S -> SS | 0S1 | 1S0| ε generates.
Antworten
-
Equal number of 0's and 1's
-
Unequal number of 0's and 1's
-
Number of 0's followed by any number of 1's
-
None of the above.
Frage 7
Frage
Which of the following is a Tiger program with syntax errors?
Antworten
-
1
-
"1"
-
x = 5
-
var x: int := 5
-
All of the above
Frage 8
Frage
Which of the following is a Tiger program without syntax errors?
Antworten
-
(1, 2, 3)
-
(1; 2; 3;)
-
(1; 2; 3)
-
(1, 2, 3,)
-
None of the above
Frage 9
Frage
Which of the following is a Tiger expression with syntax errors?
Antworten
-
a(1)
-
b[1]
-
c[2] of 3
-
(10)
-
NONE of the above
Frage 10
Frage
Which of the following derivations does a LL(1) parser use while parsing an input string? The input is assumed to be scanned in left to right order?
Antworten
-
Leftmost derivation
-
Rightmost derivation
-
None of the above
Frage 11
Frage
Assume X (terminal or non-terminal) is the top symbol in the stack, and c is the next symbol in the input in LL(1) parsing, which of the following indicates a syntax error?
i. x is any terminal other than c
ii. x is a non-terminal, but the cell M[X,c] in the parsing table is empty
iii. x is any non-terminal other than c
iv. x is a non-terminal, but the cell M[X,c] in the parsing table is not empty
Antworten
-
i
-
i and iii
-
i, ii, iii, and iv
-
None of the above
Frage 12
Frage
Assume FIRST(A) = {b, c, d, ε} for a non-terminal A, what's the result of FIRST(eAf) where e and f are terminals?
Antworten
-
{b, c, d, e}
-
{b, c, d}
-
{e, f}
-
{e}
Frage 13
Frage
Assume FIRST(A) ={b, c, d, ε} for a non-terminal A, what's the result of FIRST(Ae) where e is a terminal?
Antworten
-
{b, c , d, e}
-
{b, c, d}
-
{e}
-
{b, c, d, e, ε}
Frage 14
Frage
Assume FIRST(A) ={1, 2, ε}, and FIRST(B) = {b, d} for non- terminal A and B, what's the result of FIRST(AB)?
Antworten
-
{b, d, ε}
-
{1, 2}
-
{b, d, 1, 2}
-
{1, 2, ε}
-
{b, d, 1, 2, ε}
Frage 15
Frage
Assume FIRST(A) ={1, 2, ε}, and FIRST(B) = {b, d} for non- terminal A and B, what's the result of FIRST(BA)?
Antworten
-
{b, d}
-
{1, 2}
-
{b, d, 1, 2}
-
{1, 2, ε}
-
{b, d, 1, 2, ε}
Frage 16
Frage
Assume FIRST(A) ={1, 2, ε}, and FIRST(B) = {b, d, ε} for non- terminal A and B, what's the result of FIRST(BA)?
Antworten
-
{b, d, ε}
-
{1, 2}
-
{b, d, 1, 2}
-
{1, 2, ε}
-
{b, d, 1, 2, ε}
Frage 17
Frage
Assume FOLLOW(A) ={b, d}, FIRST(B) = {1, 2}, for non-terminal A and B, which of the following statements is correct for a production: A-> ABgh where g and h are terminals?
Antworten
-
FOLLOW(B) contains g
-
FOLLOW(B) contains h
-
FOLLOW(B) contains both g and h
-
g and h are not in FOLLOW(B)
-
FOLLOW(B) contains b, and d
Frage 18
Frage
Assume FOLLOW(A) ={b, d}, FIRST(B) = {1, 2, ε}, for non-terminal A and B, which of the following statements is correct for a production: A-> ACB where C is a non-terminal?
Antworten
-
FOLLOW(C) contains {1, 2, ε}
-
FOLLOW(C) contains {b, d}
-
FOLLOW(C) contains {1, 2, b, d, ε}
-
FOLLOW(C) contains {1, 2, b, d}