Professional Documents
Culture Documents
Mca-3rd Sem Syllabus
Mca-3rd Sem Syllabus
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
Semester –III
Subject Code Title of the subject L T P C QP
MCA20301 Compiler Design 3 0 0 3 A
UNIT:1 10 Hours
Introduction to Compilers: Compilers and translators, Phases of compiler design, cross compiler,
Bootstrapping, Design of Lexical analyser, LEX programming.Syntax Analysis: Specification of syntax
of programming languages using CFG, Topdown parser, design of LL (1) parser, bottom up parsing
technique, LR parsing algorithm, Design of SLR, LALR, CLR parsers.YACC programming.
UNIT:2 10 Hours
Syntax directed translation: Study of syntax directed definitions & syntax directed translation schemes,
implementation of SDTS, intermediate notations: postfix, syntax tree, TAC, translation of expression,
controls structures, declarations, procedure calls, Array reference.
Storage allocation & Error Handling: Run time storage administration, stack allocation, symbol table
management, Error detection and recovery: lexical, syntactic, semantic.
UNIT:3 10 Hours
Code optimization: Important code optimization techniques, loop optimization, control flow analysis, data
flow analysis, Loop invariant computation, Induction variable removal, Elimination of Common sub
expression.
UNIT:4 10 Hours
Code generation – Problems in code generation, Simple code generator, Register allocation and
assignment, Code generation from DAG, Peephole optimization.
UNIT:5(As per choice of faculty) Graphics using C. 06 Hours
(as per choice of faculty) Portion covered can be tested through Internal evaluation only not to be
included in University examination)
Teaching Methods: Chalk& Board/ PPT/Video Lectures/Lecture by Industry Expert/MOOCS
Text Books
1. Compilers: Principles Techniques and Tools 1st edition by A. V. Aho, Sethi, Ullman, Pearson
education.
2. Principal of Compiler Design – Alfred V. Aho& Jeffery D. Ullman ,Narosa Pub. House.
3. Principles of Compiler Design by Alfred V. Aho., Jeffrey D. Ulman.
4. “Compilers: Principles, Techniques and Tools” Aho, Ravi Sethi, Ullman, Pearson
Education, VIII Ed. 2002.
Ref. Books
1.Lex and Yacc by Johan R. levine, Tonny Mason, et. al. O” Reilly and Assosiates.
2. “Compilers Design in C” Allen I. Holub, PHI eastern economy edition 2003.
32
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
33
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
34
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
35
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
36
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
37
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
(distance between two balls centers) <= (sum of their radii) then (they are
colliding)
b) Find mean, median, mode for the given set of numbers in a list.
Exercise - 9 Functions - Continued
a) Write a function nearly_equal to test whether two strings are nearly equal.
Two strings a and b are nearly equal when a can be generated by a single
mutation on b.
b) Write a function dups to find all duplicates in the list.
c) Write a function unique to find all the unique elements of a list.
Exercise - 10 - Functions - Problem Solving
a) Write a function cumulative_product to compute cumulative product of a list of
numbers.
b) Write a function reverse to reverse a list. Without using the reverse function.
c) Write function to compute GCD, LCM of two numbers. Each function shouldn’t
exceed one line.
Exercise 11 - Multi-D Lists
a) Write a program that defines a matrix and prints
b) Write a program to perform addition of two square matrices
c) Write a program to perform multiplication of two square matrices
Exercise - 12 - Modules
a) Install packages requests, flask and explore them using (pip)
b) Write a script that imports requests and fetch content from the page. Eg. (Wiki)
c) Write a simple script that serves a simple HTTP Response and a simple HTML
Page
Exercise - 13 OOP
a) Class variables and instance variable
i) Robot
ii) ATM Machine
Exercise - 14 GUI, Graphics
1. Write a GUI for an Expression Calculator using tk.
2. Write a program to implement following figures using turtle
Exercise - 15 - Testing
a) Write a test-case to check the even numbers function even_numbers which
return True on passing a list of all even numbers.
b) Write a test-case to check the function reverse_string which returns the
reversed.
39
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
Exercise - 16 - Advanced
a) Build any one classical data structure.
b) Write a program to solve knapsack problem
40
GIET UNIVERSITY, GUNUPUR, ODISHA
SCHOOL OF ENGINEERING
Incorporated by Act 23 of Govt. of Odisha and under approval of UGC & AICTE
Accredited by NAAC with a CGPA of 3.28/4 at A Grade
www.giet.edu
41