(SEM V) THEORY EXAMINATION 2023-24 COMPILER DESIGN

B.Tech Engineering 0 downloads
₹29.00

SECTION A — Short Answers (2 × 10 = 20 Marks)


(a) Explain cross compiler with example.

A cross compiler is a compiler that runs on one system (host) but generates executable code for another system (target).
Example:
A compiler that runs on a Windows machine but generates executable code for an ARM-based embedded device.
→ Used in embedded systems and IoT development.


(b) Regular Expression for a Valid Identifier

A valid identifier (starts with a letter or underscore, followed by letters, digits, or underscores):

RE=[A_a−zA−Z][A_a−zA−Z0−9]∗RE = [A\_a-zA-Z][A\_a-zA-Z0-9]^*RE=[A_a−zA−Z][A_a−zA−Z0−9]∗

Example valid identifiers: _count1, total_sum, x12.


(c) Bottom-up Parsing — Reduction Steps

Grammar:        S → aSB | d B → b            String: aaaadbbbb              Reductions:

d → S S → aSB → a(aSB)B → a(a(aSB)B)B → a(a(a(d)B)B)B → a(a(a(S)B)B)B 

Each B → b adds 1 reduction; total reductions = 9 (4 for ‘aS’ patterns, 4 for B→b, 1 for final S).


Answer: 9 reduction steps

(d) Remove Left Recursion          Given:         S → Aa | b | ε   A → Ac | SAd | ε

Step 1: Substitute S in A’s productions, then remove direct and indirect recursion.
Resulting grammar:

 

S → bS' | ε   S' → aS' | ε   A → bAd | ε

 Grammar is now free from left recursion.


(e) Syntax Directed Definition (SDD)

An SDD specifies how semantic rules are associated with grammar productions.
Example:

 

E → E1 + T   { E.val = E1.val + T.val } E → T        { E.val = T.val } T → num      { T.val = num.val }

It defines how semantic values (like computed results) are derived.

(f) Syntax Tree for (a*c)+b*((c*a)+d)

 

          +        /   \      *       *    /  \     /   \   a    c   b     +                 / \               *     d              / \             c   a 

 Root = +, left = (a*c), right = b*((c*a)+d).

(g) Static vs Dynamic Scope Rule

FeatureStatic ScopeDynamic Scope
DefinitionVariable resolved using program structureVariable resolved using call sequence
DeterminedAt compile timeAt run time
Language ExamplesC, JavaLisp, Perl
 Static scope preferred for predictability.  

(h) Activation Record (AR)

A data structure that stores information about a function call.

Fields:

Return address                                                                Parameters

Local variables                                                                 Saved registers

Control link (previous AR)                                               Access link (for non-local variables)


(i) Design Issues in Code Generation                              Correctness of generated code

Machine dependency (instruction set, registers)            Efficiency (time & space)

Register allocation strategy                                             Handling control flow and data types


(j) DAG Nodes for Code Segment

a = b + c; e = a + 1; d = b + c; f = d + 1; g = e + f;

Common sub-expressions: (b+c) and (x+1) reused.
Nodes: {b, c, +, 1, a/e/d/f/g} → 7 nodes total

 

SECTION B — Short Descriptive (Any 3 × 10 = 30 Marks)


(a) Compilation Process (Example: c = a*b + 10)

Phases:

Lexical Analysis: tokens → id(a) id(b) op(*) num(10)    Syntax Analysis: builds parse tree

Semantic Analysis: type checking                              Intermediate Code: t1 = a*b; t2 = t1 + 10; c = t2

Code Optimization: reuse temp variables                  Code Generation: machine instructions

Linking & Loading


(b) Problems in Top-Down Parsing                              Left Recursion (e.g., A→Aα|β)

Ambiguity in grammar                                               Backtracking
Solutions: eliminate left recursion, use predictive (LL(1)) parsing.


(c) Syntax Directed Translation

Attaches semantic actions to grammar productions.
Example:

 

E → E1 + T  { print('+') } E → T T → id      { print(id.lexeme) }

Translates expression into postfix form.


(d) Symbol Table Data Structures                                   Hash Table: Fast lookup

Binary Search Tree: Ordered entries                             Linked List: Simple sequential
Fields: name, type, scope, memory location.


(e) Target Code for x := (a+b)*c + d/(a+b)

Intermediate Code:

t1 = a + b t2 = t1 * c t3 = d / t1 t4 = t2 + t3 x = t4     Optimized Code: Reuse t1 for (a+b) to avoid recomputation.


SECTION C — Long Questions (Any 1 from each)


3(a) Construct Minimized DFA

Perform state equivalence method:             Group final/non-final states.

Iteratively divide based on transitions.           Replace equivalent states.

Final DFA has minimal states (illustrated in paper image, page 2).

3(b) Phases of Compiler                                   Lexical Analysis

Syntax Analysis                                                 Semantic Analysis

Intermediate Code Generation                        Code Optimization

Code Generation                                              Error Handling

Example: Compilation of x = a + b * 5.

4(a) LALR Parsing Table

Grammar:                                                         S → CC   C → aC | b 

Construct LR(0) items → merge states with identical cores to form LALR(1) table (ACTION & GOTO).


5(a) Syntax Directed Definition Example

Grammar:

 

E → E + T | T   T → T * F | F   F → num

Input: 4*7+3*9
Compute step-by-step using semantic rules and build annotated parse tree.

5(b) Quadruples, Triples, Indirect Triples

Expression: (x+y)*(y+z)+(x+y+z)

Quadruples:

oparg1arg2result
+xyt1
+yzt2
*t1t2t3
+xyt4
+t4zt5
+t3t5t6

Use index references for triples/indirect triples.


6(a) Run-Time Storage Allocation

Static Allocation: Fixed memory before execution (e.g., global vars).  
Stack Allocation: LIFO for recursive calls.      Heap Allocation: Dynamic, uses free memory blocks.
Tradeoff: flexibility vs. management cost.


7(b) Data Flow Analysis — Flow Graph

C code:

 

for(i=1; i<=5; i++) { sum = sum + a[i]; }

Flow graph:

 

Start → Init (i=1) → Condition (i<=5?) → Body (sum+=a[i]) → Increment (i++) → Condition

File Size
149.01 KB
Uploader
SuGanta International

Featured educators

Meet our verified teachers

Browse profiles with clear experience, subjects, and availability—then open the full profile in SuGanta.

KISHAN KUMAR DUBEY

KISHAN KUMAR DUBEY

Sant Ravidas Nagar Bhadohi, Uttar Pradesh

This is Kishan Kumar Dubey. I have done my schooling from CBSE, graduation from CSJMU, post graduation from ASU and appear in B.Ed. from MGKVP on aided seat. I have 2 years experience in academic class (Future Shapers C...

Both Online & Offline · Member since 2026

A-Level Chemistry A-Level Mathematics

Subjects

2

Experience

5 Years

Hourly

₹201-300

Swethavyas bakka

Swethavyas bakka

Hyderabad, Telangana

I have 10+ years of experience in teaching maths physics and chemistry for 10th 11th 12th and intermediate students all my students till today are 90% grade. Even an average student got 90%

Both Online & Offline · Member since 2026

A-Level Mathematics Advanced Chemistry (Secondary) +3

Subjects

5

Experience

10 Years

Hourly

₹501-600

Vijaya Lakshmi

Vijaya Lakshmi

Hyderabad, Telangana

I am an experienced teacher ,worked with many reputed institutions Mount Carmel Convent , Chandrapur Maharashtra India, St Paul’s H.S Hyderabad, Fiitjee school Narayanaguda. I have handled students of different age gr...

Online Only · Member since 2026

A-Level Biology A-Level Physics +8

Subjects

10

Experience

30+ Years

Hourly

₹501-600

Shifna sherin F

Shifna sherin F

Gudalur, Tamilnadu

Hi, I’m Shifna Sherin! I believe that every student has the potential to excel in Math with the right guidance. I offer dedicated tutoring for 10th-grade students, covering everything from foundational basics to advanced...

Both Online & Offline · Member since 2026

Advanced Mathematics (Middle School) Advanced Mathematics (Secondary) +6

Subjects

8

Experience

5 Years

Hourly

₹401-500

Divyank Gautam

Divyank Gautam

Pune, Maharashtra

An IIT graduate having 8 years of experience teaching Maths. Passionate to understand student problems and accordingly innovate teaching methodology.

Private tutor · Member since 2026

Subjects

—

Experience

—

Status

—

Explore Tutors In Your Location

Discover expert tutors in popular areas across India

SEO Training Near Noida Sector 93 – Learn Search Engine Op... Sector 93, Greater Noida
Data Analytics Training Near Noida Sector 94 – Learn Data... Greater Noida
SEO Training Near Noida Sector 95 – Learn Search Engine Op... Greater Noida
Digital Marketing Classes Near Noida Sector 96 – Learn Mod... Greater Noida
Graphic Designing Classes Near Noida Sector 97 – Learn Cre... Sector 97, Greater Noida
Digital Marketing Classes Near Noida Sector 98 – Learn Mod... Expressway, Sector 98, Noida, Greater Noid...
Graphic Designing Classes Near Noida Sector 99 – Learn Cre... Greater Noida
App Development Classes Near Noida Sector 100 – Learn Mobi... Sector 100, Greater Noida
Web Development Classes Near Noida Sector 101 – Learn Codi... Greater Noida
App Development Classes Near Noida Sector 102 – Complete G... Greater Noida
Web Development Classes Near Noida Sector 103 – Complete G... Greater Noida
TOEFL Coaching Near Noida Sector 104 – Complete Preparatio... Sector 104, Greater Noida
IELTS Coaching Near Noida Sector 105 – Complete Guide for... Greater Noida
TOEFL Coaching Near Noida Sector 106 – Complete Guide for... Greater Noida
IELTS Coaching Near Noida Sector 107 – Expert Training for... Greater Noida
Public Speaking Training Near Sector 108 Noida – Build Con... Greater Noida
Public Speaking Training Near Sector 109 Noida – Improve C... Greater Noida
🇯🇵 Japanese Language Classes Near Sector 110 Noida – Learn... Sector 110, Greater Noida
🇪🇸 Spanish Language Classes Near Sector 111 Noida – Learn... Greater Noida
🇫🇷 French Language Classes Near Sector 112 Noida – Learn F... Greater Noida
⭐ Premium Institute Network

Discover Elite Educational Institutes

Connect with top-tier educational institutions offering world-class learning experiences, expert faculty, and innovative teaching methodologies

SHASTRI'S PHYSICS CLASSES, NAGPUR

Type

Coaching Center

SHASTRI'S PHYSICS CLASSES, NAGPUR

Nagpur, Maharashtra

Best Physics Classes in Nagpur | Shastri's Physics Classes offers expert coaching for CBSE. MS-BOARD, NEET, JEE, MHT-CET, 11th & 12th Physics. Clear concepts, regular tests & personal doubt solving. J...

Private · Est. 2021-Present

Students

51-100

Teachers

1-10

Branches

1

Réussi Academy of languages

Type

Coaching Center

Réussi Academy of languages

Geeta Bhawan Square, Indore, Madhya pradesh

Excellence in Language. Leadership in Results. With over 18 years of distinguished experience, Réussi Academy of Language stands as a trusted name in foreign language and communication training. Foun...

Private · Est. 2021-Present

Students

1-50

Teachers

1-10

Branches

1

IGS Institute

Type

Coaching Center

IGS Institute

Sector 22, Noida, Uttar Pradesh

IGS Institute provide classes for SSC, Bank, Railway, Police, NDA, Airforce Group X and Group Y, Teaching exams. IGS - Institute for Government Services providing classes since 2018 to the students.

Private · Est. 2011-2020

Students

51-100

Teachers

1-10

Branches

1

Krishna home tutor

Type

School

Krishna home tutor

New Delhi, New Delhi

Hi everyone, Krishna home tutor. Providing tutors for all subjects and classes since 2001.

Private · Est. 2001-2010

Students

201-500

Teachers

76-100

Branches

1

Edustunt Tuition Centre

Type

Coaching Center

Edustunt Tuition Centre

Hoshiarpur, Punjab

We provide online& offline tuition classes,doubt clearance sessions & exam preparation services for students from school level to university level.

Private · Est. 2021-Present

Students

1-50

Teachers

1-10

Branches

1