4 Sem
4 Sem
SEMESTER IV MA T41 DISCRETE MATHEMATICS AND GRAPH THEORY UNIT I Connectives, Statement formulae, Equivalence of Statement formulae, Functionally complete set of connectives NAND and NOR connectives, implication, Principal conjunctive and disjunctive normal forms. UNIT II Inference calculus - Derivation process - Conditional proof - Indirect method of proof- Automatic theorem proving Predicate calculus. UNIT III Partial ordering Lattices Properties - Lattices as algebraic system - sub lattices - Direct product and homomorphism - Special lattices - Complemented and Distributive lattices. UNIT IV Graphs - Applications of graphs degree - pendant and isolated vertices - isomorphism-sub graphs walks - paths and circuits - connected graphs Euler graphs - operations on graphs - More on Euler graphs Hamilton paths and circuits - complete graph. UNIT V Trees - properties of Trees - Pendant vertices in a Tree - Distance and Center in a Tree rooted and binary trees spanning trees - Fundamental Circuits - Distance between spanning trees shortest spanning trees - Kruskal algorithm. TEXT BOOKS 1. J.P. Tremblay and R. Manohar, "Discrete Mathematical Structures with applications to Computer Science", Tata McGraw-Hill Publishing Company Pvt. Ltd., New Delhi, 1997. 2. Narsingh Deo, "Graph Theory with Applications to Engineering and Computer Science", Prentice-Hall of India, Pvt. Ltd., New Delhi, 1987. REFERENCES 1. Kenneth H. Rosen, "Discrete Mathematics and its Applications", Tata McGraw-Hill Publishing Company, Pvt. Ltd., Fifth edition, New Delhi, 2003. 2. C.L. Liu, "Elements of Discrete Mathematics", Second edition, McGraw-Hill Book Company, New York, 1988. 3. F. Harary, "Graph Theory", Narosa Publishing House, New Delhi Chennai- Mumbai, 1988. 4. Douglas B. West, "Introduction to Graph Theory", Pearson Education, Second edition (Indian), 2002.
CS T42 MICROPROCESSORS AND MICROCONTROLLERS UNIT I Intel 8085 Microprocessor: Introduction - Need for Microprocessors Evolution Intel 8085 Hardware Architecture Pin description - Internal Registers Arithmetic and Logic Unit Control Unit Instruction word size Addressing modes Instruction Set Assembly Language Programming - Stacks and Subroutines - Timing Diagrams. UNIT II Intel 8085 Interrupts and DMA: 8085 Interrupts Software and Hardware Interrupts 8259 Programmable Interrupt Controller - Data Transfer Techniques Synchronous, Asynchronous and Direct Memory Access (DMA) and 8237 DMA Controller- 8253 Programmable Interval Timer. UNIT III Memory & I/O Interfacing: Types of memory Memory mapping and addressing Concept of I/O map types I/O decode logic Interfacing key switches and LEDs 8279 Keyboard/Display Interface - 8255 Programmable Peripheral Interface Concept of Serial Communication 8251 USART RS232C Interface. UNIT IV Intel 8086 Microprocessor: Introduction-Intel 8086 Hardware Pin description External memory Addressing Bus cycles. Addressing modes - Instruction set Directives Assembly Language Programming.- Evolution of Microprocessors 8-bit, 16-bit and 32-bit microprocessors UNIT V Microcontroller: Intel 8051 Microcontroller: Introduction Architecture Memory Organization Special Function Registers Pins and Signals Timing and control Port Operation Memory and I/O interfacing Interrupts Instruction Set and Programming. TEXT BOOKS 1. Ramesh S.Gaonkar, Microprocessor Architecture, Programming and Applications with 8085, Penram International Publications, Fifth Edition. [UNIT I to III] 2. Krishna Kant, Microprocessors and Microcontrollers Architectures, Programming and System Design 8085, 8086, 8051, 8096, PHI, 2008. (UNIT IV & V) REFERENCE BOOKS 1. Douglas V.Hall, Microprocessors and Interfacing Programming and Hardware, Tata Mc Graw Hill, 2003. 2. A. P. Godse and D.A Godse, Microprocessors and Microcontrollers, Technical Publications, Fourth Edition, 2008. 3. Barry B. Brey, The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386 and 80486, Pentium, Pentium Pro Processor, Pentium II, Pentium III Pentium 4 Architecture, Programming and Interfacing, 7th Edn., PHI, 2008.
CS T43 AUTOMATA LANGUAGES AND COMPUTATION UNIT I Finite Automata and Regular Expressions: Formal Languages and Regular expressions, Deterministic and NonDeterministic Finite Automata, Finite Automata with -moves, Equivalence of NFA and DFA, Minimization of finite automata, Two-way finite automata, Moore and Mealy machines, Applications of finite automata. UNIT II Regular Sets and Context Free Grammars: Properties of regular sets, Context-Free Grammars Derivation trees, Chomsky Normal Forms and Greibach Normal Forms, Ambiguous and unambiguous grammars. UNIT III Pushdown Automata and Parsing Algorithms: Pushdown Automata and Context-Free Languages; Top-down parsing and Bottom-up parsing, Properties of CFL, Applications of Pumping Lemma, Closure properties of CFL and decision algorithms. UNIT IV Turing machines: Turing machines (TM) computable languages and functions Turing Machine constructions Storage in finite control variations of TMs Recursive and Recursive enumerable languages, Recursive Function, Partial and Total Recursive Function, Primitive Recursive Function. UNIT V Introduction to Computational Complexity: Time and Space complexity of TMs Complexity classes Introduction to NP-Hardness and NP-Completeness. TEXT BOOK 1. John E. Hopcroft and Jeffrey D. Ullman, Introduction to Automata Theory, Languages and Computation, Narosa Publishers, 2002. REFERENCES 1. Michael Sipser, Introduction to the Theory of Computations, Brooks/Cole, Thomson Learning, 1997. 2. John C. Martin, Introduction to Languages and the Theory of Computation, Tata McGraw-Hill, 2003.
CS T44 DESIGN AND ANALYSIS OF ALGORITHMS UNIT I Algorithms: Definitions and notations: standard notations - asymptotic notations worst case, best case and average case analysis; big oh, small oh, omega and theta notations; Recursive algorithms, analysis of non-recursive and recursive algorithms, solving recurrence equations, analyzing control structures. Analysis of Sorting and Searching: Heap, shell, radix, insertion, selection and bubble sort; sequential, binary and Fibonacci search. UNIT II Divide and Conquer Method: General Method binary search finding maximum and minimum merge sort and quick sort Strassens Matrix multiplication. Greedy Method: General method knapsack problem minimum spanning tree algorithms single source shortest path algorithm scheduling, optimal storage on tapes, optimal merge patterns. UNIT III Dynamic Programming: General method multi-stage graphs all pair shortest path algorithm 0/1 Knapsack and Traveling salesman problem chained matrix multiplication approaches using recursion memory functions. Basic Search and Traversal technique: Techniques for binary trees and graphs AND/OR graphs biconnected components topological sorting. UNIT IV Backtracking: The general method 8-queens problem sum of subsets graph coloring Hamiltonian cycle Knapsack problem. UNIT V Branch and Bound Method: Least Cost (LC) search the 15-puzzle problem control abstractions for LC-Search Bounding FIFO Branch-and-Bound - 0/1 Knapsack problem traveling salesman problem. Introduction to NP-Hard and NP-Completeness. TEXTBOOK 1. Ellis Horowitz, Sartaj Sahni, Sanguthevar Rajasekaran, Fundamentals of Computer Algorithms, Galgotia Publications Pvt. Ltd., 2008. REFERENCES 1. Paneerselvam, Design and Analysis of Algorithms, Prentice-Hall of India, 2006 2. Anany Levitin, Introduction to The Design and Analysis of Algorithms, Pearson Education, 2005. 3. Gilles Brassard and Paul Bratley, Fundamentals of Algorithms, Prentice-Hall of India, 1997. (UNIT I) 4. Thomas H. Corman, Charles E. Leiserson, Ronald and L. Rivest, Introduction to Algorithms, Prentice-Hall of India, Second edition, 2003. 5. Richard Johnsonbaugh and Marcus Schaefer, Algorithms, Pearson Education, 2004.
CS T45 OBJECT ORIENTED PROGRAMMING LANGUAGES UNIT I Review of object oriented programming concepts data types constructs pointers arrays structures functions Classes Objects. UNIT II Operator overloading String Handling - Inheritance Polymorphism Manipulators Templates Exception Handling I/O Streams. UNIT III Introduction to JAVA Features Data Types Classes, Objects and methods Inheritance. GUI Components Swing Components Adapter Handling - Event Handling Layout Managers Graphics and Java2D - Packages - Files and Streams Exception Handling. UNIT IV Multithreading Applets - JDBC database programming Introduction to Servlets Network Programming RMI. UNIT V Byte code Interpretation - Customizing application - Data Structures - Collection classes. Activation - Object serialization -Distributed garbage collection - JINI overview. Note : UNIT I and UNIT II have to be dealt in C++ and remaining three units are to be dealt in JAVA. TEXT BOOKS 1. P.J. Deitel, C++ How to Program, Prentice-Hall of India Pvt. Ltd., Sixth edition, 2008, 2. H.M. Deitel and P.J. Deitel, Java How to Program, Prentice-Hall of India, Seventh edition, 2007. REFERENCES 1. Herbert Schildt, Java SE 6: The Complete Reference, McGraw-Hill, Seventh edition, 2006. 2. E. Balagurusamy, Object-Oriented Programming with C++, Tata McGraw-Hill, Third edition, 2006. 3. Bjarne Stroustrup, The C++ Programming Language, Addison-Wesley, Third and Special edition, 2004.
CS T46 COMPUTER ORGANISATIONS AND ARCHITECTURE UNIT I Basic Computer Organization and Design: Instruction Codes Computer Registers Computer Instructions Computer Instructions Timing and Control Instruction Cycle Memory reference Instructions - Input Output and Interrupt Design of Basic Computer Design of Accumulator logic. UNIT II Micro programmed Control: Control Memory-Address sequencing- Micro program Example Design of control unit. Processor Organization: general register organization stack organization instruction formats addressing modes data transfer and manipulation program control. Computer Arithmetic: Addition, Subtraction, Multiplication, Division algorithms- Floating point arithmetic operations- Decimal arithmetic operations. UNIT III Memory Organization: Memory hierarchy main memory auxiliary memory Associate memory Cache memory Virtual memory. UNIT IV Input-Output Organization: Input-output interface asynchronous data transfer - modes of transfer priority interrupt DMA IOP serial communication. UNIT V Parallel Processing: Multiple processor organizations Symmetric Multi processors Cache coherence and MESI protocol Clusters Non Uniform Memory Access Vector Computation. TEXT BOOKS 1. M. Morris Mano, Computer System Architecture, Prentice-Hall of India, Pvt. Ltd., Third edition, 2007 (UNITs I, II, III & IV) 2. William Stallings Computer Organization and Architecture, Prentice-Hall of India, Pvt. Ltd., Seventh edition, 2005. (UNIT V) REFERENCES 1. Carl Hamacher, Zvonko G. Vranesic and Safwat G. Zaky, Computer Organization, McGraw-Hill, Fifth edition, 2001. 2. John P. Hayes, Computer Architecture and Organisation, McGraw Hill, 1998. 3. P. Pal Chaudhuri, Computer Organization and Design, Prentice-Hall of India, Pvt. Ltd., Second edition, 2002. 4. Vincent P. Heuring and Harry F. Jordan, Computer System Design and Architecture, Prentice-Hall of India, Pvt. Ltd., Second edition, 2003.
CS P41 MICROPROCESSORS AND MICROCONTROLLERS LABORATORY LIST OF EXPERIMENTS Experiment Using 8085 Microprocessor 1. Study of 8085 Microprocessor Trainer Kit 2. 8-bit Arithmetic Operations (Addition, Subtraction, Multiplication and Division) 3. Block Operations (Move, Exchange, Compare, Insert and Delete) 4. Code Conversions 5. Digital Clock simulation 6. Moving Display 7. Printer interfacing 8. Serial Communication 9. Interrupt Programming 10. Elevator Simulation 11. Traffic Light Control Experiments Using 8086 Microprocessor with MASM 12. Arithmetic Operations 13. Sorting and Searching Experiments Using 8051 Microcontroller 15. Arithmetic operations 16. ADC & DAC Interfacing 17. Stepper Motor and DC Motor Interface CS P42 DESIGN AND ANALYSIS OF ALGORITHMS LABORATORY LIST OF EXPRIMENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. Implementation of sorting algorithms with analysis of time and space complexity. Implementation of searching algorithms with analysis of time and space complexity Solving problems using Divide-and-Conquer technique. Solving problems using Greedy technique. Solving problems using Dynamic Programming technique. Implementation of Traversal techniques. Implementation of Backtracking. Implementation of Branch-and-Bound technique. Solving NP-Complete problems (using heuristics).
CS P43 OBJECT ORIENTED PROGRAMMING LANGUAGES LABORATORY Cycle 1: Experiments to be implemented in C++ 1. Classes, objects and namespaces 2. Constructors & destructors 3. Operator overloading 4. Inheritance 5. Polymorphism & Virtual functions, 6. Exception handling 7. Templates 8. I/O streams Cycle 2: Experiments to be implemented in JAVA 9. Inheritance 10. Package and Interfaces 11. Exception Handling 12. Collections 13. Multithreaded Programming 14. Files and Sockets 15. AWT and Applets 16. Swing 17. Event Handling 18. RMI