Part A: System Software
1 Implementation of TWO Pass assembler with hypothetical Instruction set. Instruction set should include all types of assembly language statements such as Imperative, Declarative and Assembler Directive. While designing stress should be given on
a) How efficiently Mnemonic opcode table could be implemented so as to enable faster retrieval on op-code.
b) Implementation of symbol table for faster retrieval. ( Concepts in DSF should be applied while design)
2 Implementation of Macro Processor. Following cases to be considered
a) Macro without any parameters
b) Macro with Positional Parameters
c) Macro with Key word parameters
d) Macro with positional and keyword parameters. ( Conditional expansion , nested macro implementation not expected)
3 Regular Expression to DFA ( To be taken from compiler point of view) The implementation to be done as per the algorithm covered in the book “ Compiler – Design and Principles” By Aho – Ullman Sethi.
4 Lexical Analyzer for subset of C.
5 Recursive Descent parser for assignment statement.
6 Implementation of Calculator using LEX and YACC.
7 Screen Editor with following Features
i. Open an existing file
ii. Create and Save the current file.
iii. All cursor movements up, down, left, right arrow keys
iv. Delete and backspace keys.
8 Implementation of DLL.
Part B: DAA
Any two problems such as 8 queen, tower of Hanoi, Knapsack etc using different algorithmic strategy.
Staff In-charge should frame assignments based on the above topics. It is expected that this variation between assignments to individual students. Students must submit the term-work in the form of a journal at each assignment has to be well documented with problem definition, code documented \title comments. The assignments will be documented. using software-engineering principles. Staff in charge will assess the assignments continuously and grade or mark each assignment on completion date declared for each assignment.