0% found this document useful (0 votes)
7 views8 pages

Acd (DS) Cis

The document provides a comprehensive course information sheet for the Automata Theory & Compiler Design course offered in the B. Tech. Computer Science and Engineering program at Narasaraopeta Engineering College. It outlines course outcomes, syllabus details, instructional methodologies, and assessment methods, emphasizing the knowledge and skills students will acquire. Additionally, it includes mappings of course outcomes with program outcomes and specific assignments related to each unit.

Uploaded by

Nageswara Rao G
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)
7 views8 pages

Acd (DS) Cis

The document provides a comprehensive course information sheet for the Automata Theory & Compiler Design course offered in the B. Tech. Computer Science and Engineering program at Narasaraopeta Engineering College. It outlines course outcomes, syllabus details, instructional methodologies, and assessment methods, emphasizing the knowledge and skills students will acquire. Additionally, it includes mappings of course outcomes with program outcomes and specific assignments related to each unit.

Uploaded by

Nageswara Rao G
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

NARASARAOPETA ENGINEERING COLLEGE

(Autonomous)
Yallmanda(Post), Narasaraopet- 522601
Department of Computer Science and Engineering (DS)
COURSE INFORMATION SHEET

PROGRAMME: B. Tech. Computer Science and Engineering (Data Science)

Course: Automata Theory & Compiler Design Semester : III/I CREDITS: 3


COURSE CODE:
REGULATION: R23 COURSE TYPE (CORE /ELECTIVE / BREADTH/ S&H): CORE

COURSE AREA/DOMAIN: Data Science /


Automata Theory & Compiler Design PERIODS: 6 Per Week.

COURSE PRE-REQUISITES:

[Link] COURSE NAME DESCRIPTION SEM


Theory III/I

COURSE OUTCOMES: At the end of the course the student will be able to
CO Course Outcome Statement
CO1 Able to employ finite state machines for modeling and solving computing problems.
CO2 Able to design context free grammars for formal languages.
CO3 Able to distinguish between decidability and undecidability.

CO4 Demonstrate the knowledge of patterns, tokens & regular expressions for lexical analysis.
CO5 Acquire skills in using lex tool and design LR parsers

SYLLABUS:

UNIT DETAILS
Formal Language and Regular Expressions: Languages, Definition Languages regular expressions,
I Finite Automata-DFA, NFA. Conversion of regular expression to NFA, NFA to DFA. Applications of
Finite Automata to lexical analysis, lex tools. Context Free grammars and parsing: Context free
grammars, derivation, parse trees, ambiguity LL(K) grammars and LL.(1) parsing.
Bottom up parsing handle pruning LR Grammar Parsing, LALR parsing, parsing
II ambiguous grammars, YACC programming specification.
Semantics : Syntax directed translation, S-attributed and L-attributed grammars,
Intermediate code - abstract syntax tree, translation of simple statements and control
flow statements.
Context Sensitive features - Chomsky hierarchy of languages and recognizers. Type
III checking, type conversions, equivalence of type expressions, overloading of functions
and operations.

Run time storage : Storage organization, storage allocation strategies scope access to
IV now local names. parameters, language facilities for dynamics storage allocation.
Code optimization : Principal sources of optimization, optimization of basic blocks,
peephole optimization, flow graphs, Data flow analysis of flow graphs.

Code generation : Machine dependent code generation, object code forms, generic
V code generation algorithm, Register allocation and assignment. Using DAG
representation of Block.

TEXT BOOKS
T BOOK TITLE/AUTHORS/PUBLISHER
1. Introduction to Theory of computation. Sipser, 2nd Edition, Thomson.
T1
2. Compilers Principles, Techniques and Tools Aho, Ullman, Ravisethi, Pearson
Education.
REFERENCE BOOKS
R BOOK TITLE/AUTHORS/PUBLISHER
R1 Modern Compiler Construction in C, Andrew [Link] Cambridge University Press.
R2 Compiler Construction, LOUDEN, Thomson

DELIVERY/INSTRUCTIONAL METHODOLOGIES:
 Chalk & Talk PPT ☐ Active Learning
 Web Resources  Students Seminars ☐ Case Study
☐ Blended Learning  Quiz  Tutorials

☐ Project based learning ☐ NPTEL/MOOCS ☐ Simulation


☐ Flipped Learning ☐ Industrial Visit ☐ Model Demonstration
 Brain storming ☐ Role Play ☐ Virtual Labs

MAPPING CO’S WITH PO’S

COs → POs ↓ PO1 PO2 PO3 PO4 PO5


CO1 3 3 2 2 1
CO2 3 3 2 1 1
CO3 3 3 2 1 1
CO4 3 3 2 2 2
CO5 3 2 3 2 3
MAPPING COURSE WITH POs & PSOs
Course PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2

3 3 2 2 2 3 3 2.33 2.33

COURSE OUTCOME RUBRIC (ASSESMENT PER STUDENT):


ASSESMENT ATTAINMENT ATTAINMENT ATTAINMENT ATTAINMENT
TOOL WITH METHOD LEVEL 3 LEVEL 2 LEVEL 1 LEVEL 0
WEIGHTAGE (EXCELLENT) (GOOD) (AVERAGE) (POOR)
Student secured ≥ Student secured Student secured Student secured
Internal tests 60% marks of < 60% and ≥50% < 50% and ≥40% < 40% marks of
Direct
(40%) allocated marks for marks of allocated marks of allocated allocated marks
that CO marks for that CO marks for that CO for that CO
Student secured Student secured Student secured Student secured
Assignments ≥ 80% marks ≥ 70% and <80% ≥ 60% and <70% < 60% of marks
Direct
(20%) allocated for that marks allocated marks allocated allocated for that
CO for that CO for that CO CO
End Semester Student secured Student secured Student secured Student secured
Examination Direct grades O*&E* in grades A*& B* in grades C*& P* in grades F* in
(30%) External Exam External Exam External Exam External Exam

Course end Student selected Student selected Student selected Student selected
Indirect
Survey (10%) option option option option

* Grade Definition: O : 91-100; E : 81-90; A : 71-80; B : 61-70; C : 51-60; P: 41-50; F: < 40

Course Coordinator Module Coordinator Head of the Department


ANNEXURE I:

(A) PROGRAM OUTCOMES (POs) Engineering Graduates will be able to:

P01: Engineering Knowledge: Apply the knowledge of mathematics, science, engineering fundamentals, and
an engineering specialization to the solution of complex engineering problems.
P02: Problem Analysis: Identify, formulate, review research literature and analyse complex engineering
problems reaching substantiated conclusions using first principles of mathematics, natural sciences and
engineering sciences.
P03: Design/development of solutions: Design solutions for complex engineering problems and design system
components or processes that meet the specified needs with appropriate consideration for the public
health and safety and the cultural, societal and environmental considerations.
P04: Conduct investigations of complex problems: Use research based knowledge and research methods
including design of experiments, analysis and interpretation of data and synthesis of the information to
provide valid conclusions.
P05: Model tool usage: Create, select and apply appropriate techniques, resources and modern engineering
and IT tools including prediction and modelling to complex engineering activities with an understanding
of the limitations.
P06: The engineer and society: Apply reasoning informed by the contextual knowledge to assess societal,
health, safety, legal and cultural issues and the consequent responsibilities relevant to the professional
engineering practice.
P07: Environment and sustainability: Understand the impact of the professional engineering solutions in
societal and environmental contexts, and demonstrate the knowledge of, and need for sustainable
development.
PO8: Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of the
engineering practice.
PO9: Individual and team work: Function effectively as an individual and as a member or leader in diverse
teams, and in multidisciplinary settings.
PO10: Communication: Communicate effectively on complex engineering activities with the engineering
community and with society at large, such as, being able to comprehend and write effective reports and
design documentation, make effective presentations and give and receive clear instructions.
PO11: Project management and finance: Demonstrate knowledge and understanding of the engineering and
management principles and apply these to one’s own work, as a member and leader in a team, to manage
projects and in multidisciplinary environments.
PO12: Life-long learning: Recognize the need for and have the preparation and ability to engage in independent
and life-long learning in the broad test context of technological change.
(B) PROGRAM SPECIFIC OUTCOMES (PSOs):

PSO1: Apply Data Science Techniques, statistical analysis, machine learning algorithms, data
visualization, and data manipulation effectively to solve complex data problems.

PSO2: Demonstrate proficiency in conducting data collection, preprocessing, analysis, and


interpretation, contributing to the advancement of the field.

PSO3: Able to independently carry out research and investigation to solve societal problems.

COURSE OUTCOMES: students will be able to

[Link] Course Outcome Statement Knowledge Level


1 Able to employ finite state machines for modeling and K3 - Apply
solving computing problems.
2 Able to design context free grammars for formal languages. K4 - Analyze
3 Able to distinguish between decidability and undecidability. K4 - Analyze
4 Demonstrate the knowledge of patterns, tokens & regular K2 - Understand
expressions for lexical analysis.
5 Acquire skills in using lex tool and design LR parsers. K3 - Apply

Cognitive levels as per Revised Blooms Taxonomy:

Cognitive
LEVEL Key words
Domain
Defines, describes, identifies, knows, labels, lists, matches, names,
Remember K1
outlines, recalls, recognizes, reproduces, selects, states.
Comprehends, converts, defends, distinguishes, estimates, explains,
Understand K2 extends, generalizes, gives an example, infers, interprets, paraphrases,
predicts, rewrites, summarizes, translates.
Applies, changes, computes, constructs, demonstrates, discovers,
Apply K3 manipulates, modifies, operates, predicts, prepares, produces, relates,
shows, solves, uses.
Analyzes, breaks down, compares, contrasts, diagrams, deconstructs,
Analyse K4 differentiates, discriminates, distinguishes, identifies, illustrates, infers,
outlines, relates, selects, separates.
Appraises, compares, concludes, contrasts, criticizes, critiques, defends,
Evaluate K5 describes, discriminates, evaluates, explains, interprets, justifies, relates,
summarizes, supports
Categorizes, combines, compiles, composes, creates, devises, designs,
Create K6 explains, generates, modifies, organizes, plans, rearranges, reconstructs,
relates, reorganizes, revises, rewrites, summarizes, tells, write
Unit wise Sample assignment questions

KNOWLEDGE
S NO QUESTION CO
LEVEL

UNIT - I
1. Q1. Define regular expressions and describe their conversion to NFA.
2. Q2. Explain the process of converting NFA to DFA with suitable example.
3. Q3. Discuss the concept and usage of LL(1) grammars in parsing.
4. Q4. What is ambiguity in grammars? Explain with example.
5. Q5. Describe the role of finite automata in lexical analysis.

UNIT - II
6. Q1. Explain LR parsing technique and handle pruning.
7. Q2. Describe LALR parsing and compare with SLR parsing.
8. Q3. Write a short note on YACC programming specification.
9. Q4. Differentiate between S-attributed and L-attributed grammars.
10. Q5. Explain abstract syntax tree and its role in translation.

UNIT - III
11. Q1. Describe the Chomsky hierarchy of languages.
12. Q2. What is type checking? Explain its types and importance.
13. Q3. Discuss type conversion and equivalence of type expressions.
14. Q4. Explain overloading of functions and operations with examples.
15. Q5. Differentiate context-free and context-sensitive grammars.

UNIT - IV
16. Q1. Describe various storage allocation strategies in compilers.
17. Q2. Explain peephole optimization with suitable example.
18. Q3. Discuss the importance of data flow analysis in optimization.
19. Q4. What is a flow graph? Describe its use in code optimization.
20. Q5. Explain scope and access mechanisms for non-local names.

UNIT - V
21. Q1. Outline the process of machine-dependent code generation.
22. Q2. What are the different forms of object code? Give examples.
23. Q3. Explain the generic code generation algorithm.
24. Q4. Describe register allocation and assignment techniques.
25. Q5. What is DAG representation and how is it used in code generation?
III [Link] I Semester Regular/Supple. Examinations, R23
Month/Year
Sub Code: SUBJECT: Automata Theory & Compiler Design
Time: 3 hours (Branch: Common to DS ,CYS Branches) Max. Marks: 70
Note: Question Paper consists of Two parts (Part-A and Part-B)
PART-A
Answering all the questions from Part-A is compulsory (10 x 2M=20M)

[Link] Questions KL CO Marks


a) Define DFA with example. K2 1 2M
b) What is Context free grammar? K2 1 2M
c)What are types of LR parsers? Compare them. K1 2
2M
d) What is abstract syntax tree? K3 2 2M
e) Construct DFA accepting the set of all strings containing 101 as a substring. K3 3 2M
1 f) Define Syntax directed translation. K1 3 2M
g) Define Chomsky hierarchy of Languages. K1 4 2M
h) What are the different storage allocation strategies K1 4 2M
i) What is peephole optimization? Give an example. K1 5 2M
j) What are object code forms? Give examples. K1 5 2M

Answer either ‘a’ or ‘b’ from each question of PART-B (5 x 10M=50M)


Q. No Question Cognitive
CO Marks
Level
a Explain how regular expressions can be converted to NFA with an
example. Show that L = {an b n c n | n >= 1} is not context free but K2 1 5
context sensitive
1 b Explain the process of converting NFA to DFA with an example. K3 1 5
a Convert the below CFG to CNF: K3 1 5
S → a | aA | B
A → aBB | ε
B → Aa | b
b Describe the applications of finite automata in lexical analysis.
K4 1 5
a Explain LALR parsing? How does it differ from SLR?
K2 2 5
2 b Explain YACC and its specification components.
K3 2 5
a Explain between S-attributed and L-attributed grammars. K3 3 5
Explain the abstract syntax tree? Give its role in intermediate code K3
b generation. 4 5
3
a Explain the Chomsky hierarchy of languages. K3 3 5

b What is type checking? Explain with types of checks K3 4 5


K2 5 5
a Describe type conversion and equivalence of type expressions
4
b Differentiate between context-free and context-sensitive grammars.
K3 5 5
a Explain data flow analysis and its importance
K3 5 10
5 a Explain the steps in machine-dependent code generation K3 5 10
b What is DAG representation and how is it used in code generation? And
Explain register allocation and assignment. K3 6 10

You might also like