0% found this document useful (0 votes)
244 views21 pages

300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Uploaded by

Natanem Yimer
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
244 views21 pages

300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Uploaded by

Natanem Yimer
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

HOME Interview Questions MCQs Class Notes *LAB VIVA SEMINAR TOPICS
ONLINE TEST GATE CAT Internship ABOUT US

Any Skill Sear


Home » Compiler Design Mcqs » 300+ TOP Compiler Design
MCQs and Answers Quiz Exam

300+ TOP Compiler Design MCQs


and Answers Quiz Exam
Compiler Design Multiple Choice Questions
1) For the C program given below the statement that does
not hold true is

for (i = 0; ifor(j = 0; jif (i%c)


{
x += (4*j+5*i);
y+=(7+4*j);
}
}
}

A. There is a scope strength reduction


B. There is a scope of dead code elimination
C. There is a scope of common sub-expression elimination
D. None of the above

Answer: There is a scope of dead code elimination

2) In compilers generation of intermediate code based on


an abstract machine model is useful because


https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 1/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

A. Syntax-directed translations can be written for intermediate code


generation
B. To generate code for real machines directly from high-level
language programs is not possible
C. Portability of the front end of the compiler is enhanced
D. Implementation of lexical and syntax analysis is easier

Answer: Implementation of lexical and syntax analysis is easier

3) Consider the grammar where P, Q, R are not terminals


and r, s, t are terminals

A. P->Q R
B. P->Q s R
C. P->ε
D. P->Q t R r

The grammar rules that violate the requirements of an operator


grammar is

A. a and c only
B. b and c only
C. a and d only
D. a only

Answer: a and c only



https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 2/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

4) Which one of the following statement is false for the SLR


(1) and LALR (1) parsing tables for a context free grammar?

A. The reduce entries in both the tables may be different


B. The error entries in both the tables may be different
C. The go to part of both tables may be different
D. The shift entries in both the tables may be identical

Answer: The go to part of both tables may be different

5) We have a grammar with not epsilon and unit production


(i.e. of type A->ε and
A ->a) to parse a string, with n tokens. What is the
maximum number of reduces moves that can be taken by a
bottom-up parser for this grammar?

A. 2n – 1
B. 2n
C. n-1
D. n/2

Answer: 2n – 1

For questions 6 and 7 refer to the data given below:


The processor allows only register operands in its instructions and the
given code segment is executed in that processor. For each instruction

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 3/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

almost two source operands and one destination

operand is available. Assume that all the variables are dead after this
code segment.

z = x + y;
p = z * x;
q = c + x;
j = z * z;

If (j > x)
{
M = x*x;
}
else
{
p = p*p;
q = q*q;
}

6) Only two registers are available in the instruction set


architecture of the processor. The code motion moves the
statements from one place to another while preserving
correctness. The only allowed complier optimization is code
motion. In the compiled code, the minimum number of
spills to memory is

A. 0
B. 1
C. 2
D. 3

Answer: 1

7) Assume that no other optimization other than optimizing


register allocation is applieD. To compile this code segment
without any spill to memory the minimum number of

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 4/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

registers needed in the instruction set architecture of the


processor is

A. 3
B. 6
C. 4
D. 5

Answer: 4

8) We have the grammar E->E + n I E x n I n. The handles


in the right-sentential form of the reduction for a sentence
n + n x n are

A. n, n + n and n + n x n
B. n, E + n and E x n
C. n, E + n and E + E x n
D. n, E + n and E + n x n

Answer: n, E + n and E x n

9) The languages that need heap allocation in the runtime


environment are

A. Those that use global variables


B. Those that use dynamic scoping
C. Those that support recursion
D. Those that allow dynamic data structure

Answer: Those that allow dynamic data structure

10) When is the type checking usually done?

A. During syntax directed translation


B. During lexical analysis
C. During code optimization
D. During syntax analysis

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 5/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Answer: During syntax directed translation

11) What information need to be included in an object


module, if a linker is given object modules for a set of
programs that were compiled separately?

A. Names and locations of all external symbols defined in the object


module
B. Object code
C. Absolute addresses of internal symbols
D. Relocation bits

Answer: Absolute addresses of internal symbols

12) We have two sets of LR (1) items of LR (1) grammar


described below.

X->C.X, c/d X->C.X, $


X->.cX, c/d X->.cX, $
X->.d, c/d X->.d, $

Related to the merging of two sets in the corresponding parser, the


statement that does not hold true is

A. Cannot be merged since look aheads are different.


B. Cannot be merged but will result in R-R conflict

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 6/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

C. Cannot be merged but will result in S-R conflict


D. All of the above

Answer: All of the above

13)A. Begin
B. Program
C. <>

While compiling a Pascal program, without looking at the


next input character the string that can be definitely said to
be token is

A. b
B. c
C. a
D. All of the above

Answer: c

14) S->xx W {print”1”}


S->y {print”2”}
W->Sz {print”3”}

A shift reduce parser carries out the actions specified


within braces immediately after reducing with the
corresponding rule of grammar. Using the syntax directed
translation scheme described

by the above rule, the translation of xxxxyzz is

A. 11231
B. 11233
C. 23131
D. 33211


Answer: 23131

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 7/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

15) In some programming language, L denotes the set of


letters and D denotes the set of digits. An identifier is
permitted to be a letter followed by any number of letters or
digits. The expression that defines an identifier is

A. (L.D)*
B. (L + D)*
C. L (L.D)
D. L (L + D)*

Answer: L (L + D)*

16) Which one of the following statement is true?

A. Canonical LR parser is more powerful than LALR parser


B. SLR parser is more powerful than LALR
C. LALR parser is more powerful than canonical LR parser
D. SLR parser, canonical LR parser and LALR parser all have the same
power

Answer: Canonical LR parser is more powerful than LALR parser

17) The activities are listed below. What is the pass numbers
of each of the activities respectively?


A. Object code generation
B. Literals added to the literal table

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 8/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

C. Listing printed
D. Address resolution of local symbols that occur in a two pass
assembler

A. 1, 2, 2, 2
B. 2, 1, 1, 1
C. 1, 2, 1, 2
D. 2, 1, 2, 1

Answer: 2, 1, 2, 1

18) In a compiler _______________ checks every


character of the source text.

A. The lexical analyzer


B. The syntax analyzer
C. The code generator
D. The code optimizer

Answer: The lexical analyzer

For questions 19 and 20 refer to the data given below:

The programming language given below is written in the


programming language that does not allow nested declarations of
functions and allows global variables.
global int j = 100, k = 5;
void M(n)
{
int j = 10;
print (n + 10);
j = 200;
k = 20;
print (n);
}
main()
{

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 9/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

M(j + k);
}

19) What is the output of the above program if the


programming language uses static scoping and call by need
parameter passing mechanism?

A. 25, 220
B. 115, 105
C. 220, 115
D. 105, 220

Answer: 115, 105

20) What is the output of the above program if the


programming language uses dynamic scoping and call by
name parameter passing mechanism?

A. 105, 25
B. 105, 115
C. 220, 25
D. 115, 220

Answer: 115, 220


21) ______________ is not an advantage of using shared,
dynamically linked libraries as opposed to using statically

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 10/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

linked libraries.

A. Lesser overall page fault rate in the system


B. Faster program startup
C. Existing programs need not be relinked to take advantage of newer
versions
D. Smaller sizes of executable files

Answer: Existing programs need not be relinked to take advantage of


newer versions

22) The instructions of a simplified computer, which has


only two registers, are given below:
OP Rj, Rk – Performs Rj OP Rk and stores the result in
register Rk.
OP m, Rj – Performs the content of memory location m OP
Rj and stores the result in Rj
MOV m, Rk – Moves the content of memory location m to
register Rk.
MOV Rk, m – Moves the content of register Rk to memory
location m.
OP is either ADD or SUB.

We have the following basic block:

T1 = a + b
T2 = c + d
T3 = e – T2
T4 = T1 – T3

Assuming that all operands are initially in memory and the


final value of the computation in memory, the minimum
number of MOV instructions in the code generated for this
basic block is

A. 3
B. 2

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 11/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

C. 6
D. 4

Answer: 3

For questions 23 and 24 refer to the data given below:

Consider the language L = {ai bi I i ? j}?

23) The grammar that generates this language is

A. S->aS\Sb\a\b
B. S->AC\CB
C->aC b\a\b
A->aA\ ∈
B->Bb\ ∈
C. S->AC\CB
C->aCb\∈
A->aA\a
B->bB\b
D. S->AC\CB
C->aC b\∈
A->aA\ ∈
B->Bb\ ∈

Answer: S->AC\CB
C->aCb\∈
A->aA\a
B->bB\b

24) In the correct grammar from question 23 to generate


the string al bm with l ≠ m, the length of the derivation
(number of steps starting from s) is

A. max (l, m) + 3
B. max (l, m) + 2
C. l + m + 2
D. l + m + 3 
https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 12/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Answer: max (l, m) + 2

25) Consider the following C program:

int min (){ /*line 1*/


int I, N; /*line 2*/
fro (I=0, I
While creating the object module, the compiler’s response
about line no. 3 is

A. Only syntax error


B. No compilation error
C. Only lexical error
D. Both lexical and syntax error

Answer: Only syntax error

26) We have the translation scheme given below:

S->FR
R->*E{print(‘*’);R\ε
E->F + E{print (‘+’);\F
F->(S)\id {print (iD.value);}

In the above translation scheme id represents the token in


integer form and id value represents the corresponding
integer value. What will be printed by this translation
scheme when an input

is ‘2 * 3 + 4’?

A. 2 3 * 4 +
B. 2 3 4 + *
C. 2 * + 3 4
D. 2 * 3 + 4


Answer: 2 3 4 + *

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 13/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

27) We have the grammar with the translation rules:

E->E1 # T {E.value = E1.value * T.value}


I T {E.value = T.value}
T->T1 & F {T.value = T1.value F.value}
I F {T.value = F.value}
F->num {F.value = num.value}

In the above grammar E is the start symbol. What will be


the value of E for the root parser tree for the expression 2 #
3 & 5 # 6 & 4?

A. 50
B. 100
C. 200
D. 160

Answer: 160

28) For the expression grammar

E->E*F I F+E I F
F->F – I id

The statement, which holds true, is

A. + and – have same precedence


B. Precedence of * is higher +
C. Precedence of – is higher *
D. Precedence of + is higher *

Answer: Precedence of – is higher *

29) Which one of the following statement holds true for a


bottom-up evaluation of syntax directed definition?


A. Inherited attributes can always be evaluated
B. Inherited attributes can never be evaluated

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 14/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

C. Inherited attributes can be evaluated only if the definition is L-


attributed
D. Inherited attributes can be evaluated only if the definition has
synthesized attributes

For questions 30 and 31 refer to the data given below:

{S, A, B} is the non-terminal alphabet and {a, b} is the terminal


alphabet of the CFG. S is the start symbol. The set of production rules
are given below,
S->aB S->bA
B->b A->a
B->bS A->aS
B->aBB A->bAA

Answer: Inherited attributes can be evaluated only if the definition


has synthesized attributes

30) The string that is generated by the grammar is

A. aabbbb
B. abbbba
C. aabbab
D. aaaabb

Answer: aabbab

31) The number of derivation trees for the correct answer


strings to question 30 is

A. 4
B. 1
C. 3
D. 2

Answer: 2


https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 15/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

32) For a grammar G, Shift reduce (S-R) conflicts is present


in LALR (1) parser, if and only if

A. The LR (1) parser for G has S-R conflicts


B. The LR (0) parser for G has S-R conflicts
C. The SLR (1) parser for G has S-R conflicts
D. The SLR (0) parser for G has S-R conflicts

Answer: The LR (1) parser for G has S-R conflicts

33) For arithmetic expression the grammar rule is E-


>E1-E2. A CPU has a single user register and the code
generated is target to the CPU. The first operand should be
in the register for the subtraction operation. E1 and E2 do
not have any common sub-expression. Which one of the
following is true in order to get the shortest possible code?

A. Order of evaluation of E1 and E2 has no consequence


B. E1 and E2 evaluation should be interleaved
C. E2 should be evaluated first
D. E1 should be evaluated first

Answer: E2 should be evaluated first

34) Consider the grammar G whose SLR parser has n1


states and LALR parser has n2 states. What is the relation
between n1 and n2?

A. n1 = n2
B. n1 < n2 C. n1 > n2
D. None of the above

Answer: n1 = n2

35) A program P has M1 and M2, the two source modules


contained in two different files. When is the reference


resolved if M1 contains reference to a function defined in
M2?

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 16/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

A. Edit time
B. Load time
C. Compile time
D. Link time

Answer: Link time

36) For predictive parsing the grammar A->AA I A. I ε is


not suitable because

A. The grammar is right recursive


B. The grammar is left recursive
C. The grammar is ambiguous
D. The grammar is an operator grammar

Answer: The grammar is left recursive

37) How many tokens are there in the following C


statement?

printf (“j=%d, &j=%x”, j&j)

A. 4
B. 5
C. 9
D. 10

Answer: 10

38) Assuming that the input is scanned in left to right order,


while parsing an input string the top-down parser use

A. Rightmost derivation
B. Leftmost derivation
C. Rightmost derivation that is traced out in reverse
D. Leftmost derivation that is traced out in reverse

Answer: Rightmost derivation 


https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 17/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

39) To convert an arbitrary CFG to an LL (1) grammar

A. Factor the grammar alone


B. Remove left recursion alone
C. Remove left recursion and factor the grammar
D. None of the above

Answer: Remove left recursion and factor the grammar

40) S->S*E
S->E
E->F+E
E->F
F->Id
Corresponding to the above grammar, we have following LR
(0) items.

A. S->S*E
B. E->F.+E
C. E->F+.E

The two items that will appear in the same set in the canonical sets-of-
items for the grammar is

A. a and c
B. a and b
C. b and c
D. a, b and c

Answer: a and c

41) __________________ is a top-down parser

A. Operator precedence parser


B. An LALR (k) parser
C. An LR (k) parser
D. Recursive descent parser

https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 18/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Answer: Recursive descent parser

42) Why is the code optimizations are carried out on the


intermediate code?

A. Because for optimization information from the front end cannot be


used
B. Because program is more accurately analyzed on intermediate code
than on machine code.
C. Because for optimization information from data flow analysis
cannot be used
D. Because they enhance the portability of the compiler to the other
target processor.

Answer: Because program is more accurately analyzed on


intermediate code than on machine code.

43) In a compiler, when is the keyboards of a language are


recognized?

A. During the lexical analysis of a program


B. During parsing of the program
C. During the code generation
D. During the data flow analysis

Answer: During the lexical analysis of a program

44) In a compiler, the data structure responsible for the


management of information about variables and their
attributes is

A. Semantic stack
B. Parser table
C. Symbol table
D. Abstract syntax-tree

Answer: Symbol table



https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 19/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

45) The lexical analysis for Java needs _____________ in


a necessary and sufficient sense.

A. Turing machine
B. Non-deterministic push down automata
C. Deterministic push down automata
D. Finite state automata

Answer: Finite state automata

COMPILER DESIGN Objective Questions ::

LEAVE A REPLY

Your email address will not be published. Required fields are marked *

Comment *

Name *

Email *

Website


https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 20/21
11/11/23, 5:15 PM 300+ TOP Compiler Design MCQs and Answers Quiz Exam 2023

Post Comment

Engineering 2023 , Multiple Choice Questions and Answers for Engineering & Medical , Theme by Engineering|| Privacy
Policy|| Terms and Conditions|| ABOUT US|| Contact US||
Engineering interview questions,Mcqs,Objective Questions,Class Lecture Notes,Seminor topics,Lab Viva Pdf PPT Doc Book
free download. Most Asked Technical Basic CIVIL | Mechanical | CSE | EEE | ECE | IT | Chemical | Medical MBBS Jobs
Online Quiz Tests for Freshers Experienced .


https://engineeringinterviewquestions.com/compiler-design-multiple-choice-questions-answers/ 21/21

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy