Compiler Design

By Prof. Santanu Chattopadhyay   |   IIT Kharagpur
Learners enrolled: 6767
Compilers have become part and parcel of today’s computer systems. They are responsible for making the user’s computing requirements, specified as a piece of program, understandable to the underlying machine. There tools work as interface between the entities of two different domains – the human being and the machine. The actual process involved in this transformation is quite complex. Automata Theory provides the base of the course on which several automated tools can be designed to be used at various phases of a compiler. Advances in computer architecture, memory management and operating systems provide the compiler designer large number of options to try out for efficient code generation. This course on compiler design is to address all these issues, starting from the theoretical foundations to the architectural issues to automated tools. Being primarily targeted to a one-semester course for the undergraduate students, the course will follow the current GATE syllabus, enabling the students to prepare well for the same. It can also help all other participants looking for an introduction to the domain of compiler designs and code translators.

INTENDED AUDIENCE : Undergraduate students of CSE, IT, B.Sc (Computer Science), MCA, MS (Computer Science)
INDUSTRY SUPPORT  : All software industries
Course Status : Ongoing
Course Type : Core
Duration : 12 weeks
Start Date : 18 Jan 2021
End Date : 09 Apr 2021
Exam Date : 24 Apr 2021
Enrollment Ends : 01 Feb 2021
Category :
  • Computer Science and Engineering
  • Systems
Level : Undergraduate

Course layout

Week 1  :  Introduction
Week 2   :  Lexical Analysis
Week 3   :  Parsing – Part I
Week 4   :  Parsing – Part II
Week 5   :  Parsing – Part III
Week 6   :  Syntax Directed Translation
Week 7   :  Type Checking and Symbol Tables
Week 8   :  Runtime Environment Management – Part I 
Week 9   :  Runtime Environment Management – Part II 
Week 10  :  Intermediate Code Generation – Part I
Week 11  :  Intermediate Code Generation – Part II
Week 12  :  Intermediate Code Generation – Part III

Books and references

1. Santanu Chattopadhyay, “Compiler Design”, PHI Learning Pvt. Ltd., 2015.
2. A.V. Aho, R. Sethi, J.D. Ullman, “Compilers Principles, Techniques and Tools”, Addison-Wesley, 1986.

Instructor bio

Prof. Santanu Chattopadhyay

IIT Kharagpur
Santanu Chattopadhyay received his BE degree in Computer Science and Technology from Calcutta University (B.E. College) in 1990. He received M.Tech in Computer and Information Technology and PhD in Computer Science and Engineering from Indian Institute of Technology Kharagpur in 1992 and 1996, respectively. He is currently a Professor in the Department of Electronics and Electrical Communication Engineering, IIT Kharagpur. Prior to this, he had been a faculty member in the IIEST Sibpur and IIT Guwahati in the departments of Computer Science and Engineering. In both these places he has taught the subject of Compiler Design several times. His research interests include Digital Design, Embedded Systems, System-on-Chip (SoC) and Network-on-Chip (NoC) Design and Test, Power- and Thermal-aware Testing of VLSI Circuits and Systems. He has published more than 150 papers in reputed international journals and conferences. He has published several text and reference books on Compiler Design, Embedded Systems and other related areas. He is a senior member of the IEEE and an Associate Editor of IET Circuits Devices and Systems journal.

Course certificate

The course is free to enroll and learn from. But if you want a certificate, you have to register and write the proctored exam conducted by us in person at any of the designated exam centres.
The exam is optional for a fee of Rs 1000/- (Rupees one thousand only).
Date and Time of Exams: 24 April 2021 Morning session 9am to 12 noon; Afternoon Session 2pm to 5pm.
Registration url: Announcements will be made when the registration form is open for registrations.
The online registration form has to be filled and the certification exam fee needs to be paid. More details will be made available when the exam registration form is published. If there are any changes, it will be mentioned then.
Please check the form for more details on the cities where the exams will be held, the conditions you agree to when you fill the form etc.


Average assignment score = 25% of average of best 8 assignments out of the total 12 assignments given in the course.
Exam score = 75% of the proctored certification exam score out of 100

Final score = Average assignment score + Exam score

YOU WILL BE ELIGIBLE FOR A CERTIFICATE ONLY IF AVERAGE ASSIGNMENT SCORE >=10/25 AND EXAM SCORE >= 30/75. If one of the 2 criteria is not met, you will not get the certificate even if the Final score >= 40/100.

Certificate will have your name, photograph and the score in the final exam with the breakup.It will have the logos of NPTEL and IIT Kharagpur .It will be e-verifiable at nptel.ac.in/noc.

Only the e-certificate will be made available. Hard copies will not be dispatched.

Once again, thanks for your interest in our online courses and certification. Happy learning.

- NPTEL team

MHRD logo Swayam logo


Goto google play store