Scms School of Technology and Management
Scms School of Technology and Management
SCMS Campus, Prathap Nagar, Muttom, Aluva, COCHIN- 683 106. KERALA
MASTER OF COMPUTER APPLICATIONS MCA SEMESTER 3 SESSION PLAN COURSE NAME: SYSTEM SOFTWARE COURSE CODE : 303 FACULTY: J.M.LAKSHMI MAHESH COURSE OBJECTIVES: The course intends to
1. 2. 3. 4. Make the students understand the processes involved in the designing of a high-level programming language Introduce techniques for translating textual data from one form into another; in particular, translating highlevel program text into low-level text. Get a know-how on the different system utility programs .Help the students understand Grammars and their applications in compiler writing.
COURSE CONTENT:
Module I General concepts-Review of assembly and machine language programming, distinction between system software and application software, Language processors:- Introduction , Language processing activities. Assemblers:- Elements of Assembly language programming, A simple assembly scheme, Pass structure of assemblers, Design of two pass assemblers Module II Macros and macro processors:- Macro definition and call, Macro expansion, Nested macro calls, advanced macro facilities, design of macro pre processor Linker-Relocation and linking concepts-self relocating programs. Loader-Types of loaders Editor-Types of editors-Components of editor-Debug monitor Module III Introduction to compiling:- Compilers, Analysis of a source program, the phases of a compiler, Lexical analysis:-The role of the lexical analyzer, Input buffering, specification of tokens Recognition of tokens, Finite automata, Conversion of an NFA to DFA, From a regular expression to an NFA Module IV Syntax analysis:- the role of the parser, Context free grammars, writing a grammer, Top dowm parsing Bottom up parsing, syntax directed translation-syntax directed definition, , Construction of Syntax Tree, L R parsers-LR parsing algorithm, Constructing SLR parsing tables, SLR parsing table Module V Intermediate code generation-postfix notation, syntax tree, three-address code, basic blocks and flow graph,the DAG representation of basic blocks, Backpatching, Code optimization:- The principal sources of optimization, optimization of basic blocks, loops in flow graphs, Peephole optimization Code Generations:- Issues in the design of a code generator, simple code generator Code generation-object program, runtime addresses for names, problems in code generation, simple code generator.
*Assignments /Presentation : 1. Individual topic will be given for Assignment, & the same shall be taken as the presentation . 2. Topics will be related to system software ,that has not been prescribed in the syllabus. 2. Assignment :30 marks . Presentation :50 marks 3.. Topic & Date for submitting the Assignment will be announced After the completion of 3rd module.
Session Plan
Topic Session (s) Reference
Introduction To Computer SystemsMac Ewen, McGraw Hill System Programming And Operating Systems- D.M Dhamdhere ,Tata Mc Graw Hill (Modules 1& 2) Systems Programming John J Donovan, Mc Graw Hill System software-Santanu Chattopadhyay
Review Of m/c And Assembly Language Programming, Assembly Language Statements Language processing Assembly language,phases in designing MODULE II Macros-macro definition, macro call, macro expansion, nested macro calls - macro processors
Graw Hill (Modules 1& 2) Systems Programming John J Donovan, Mc Graw Hill System Software- Leland L Beck, Addison Wesley Publishing Company Linker-Relocation and linking concepts-self relocating programs. Loader-Types of loaders Editor-Types of editors-Components of editor-Debug monitor MODULE III Compiler-The phases of a compiler. Passes and reducing the number of passes. 17 18 19 20 Principles Of Compiler Design- Aho And Ullman Theory of computer science K.L.P Mishra & N. Chandrasekharan
High level programming languages Lexical Analysis-The role of lexical analyzer. Simple approach to the design of lexical analysis Implementation of transition diagram, regular expression Finite automata-DFA&NFA-conversion from regular expression to NFA and NFA to DFA. ,Introduction to flex MODULE IV The syntactic specification of a programming language- context free grammar derivation and parse tree, unambiguous grammar. Basic parsing technique-Bottom up and Top down parsers, representation of a parse tree. Shift reduce parsing-stack implementation of shift reduce parsing- constructing a parse tree -Introduction to Bison MODULE V Intermediate code generation-postfix notation, syntax tree, three-address code.
30-31
32 33-35 36-39
40-41
Crafting a compiler with C Charles N.Fisher, RichardJ.LeBlanc, Jr Principles Of Compiler Design- Aho And Ullman Theory of computer science K.L.P Mishra & N. Chandrasekharan
code optimization-local optimization, loop optimization - loop invariant computation, induction variable elimination, reduction in strength. The DAG representation of basic blocks. Code generation-object program, runtime addresses for names, problems in code generation, simple code generator.
presentations
50-55