Number systems and codes, Boolean algebra: postulates and theorems, constants, variables and functions, switching algebra, Boolean functions and logical operations, Karnaugh map: prime cubes, minimum sum of products and product of sums
Module 2 (10 (T) + 7(P) Hours)
Quine-McClusky algorithm, prime implicant chart, cyclic prime implicant chart, Petrick’s method, Combinational Logic: introduction, analysis and design of combinational logic circuits, parallel adders and look-ahead adders, comparators, decoders and encoders, code conversion, multiplexers and demultiplexers, parity generators and checkers
Module 3 (10 (T) + 7(P) Hours)
Programmable Logic Devices, ROMs, PALs, PLAs, PLA folding, design for testability. Introduction to sequential circuits, memory elements, latches
Module 4 (12 (T) + 7(P) Hours)
Flip-flops, analysis of sequential circuits, state tables, state diagrams, design of sequential circuits, excitation tables, Mealy and Moore models, registers, shift registers, counters
T. L. Floyd, R. P. Jain, Digital Fundamentals, 8/e, Pearson Education, 2006
C. H. Roth, Jr., L. L. Kinney, Fundamentals of Logic Design, 6/e, Cengage Learning, 2009
M M Mano, M D Ciletti, Digital Design, 4/e, Pearson Education, 2008
N. N. Biswas, Logic Design Theory, Prentice Hall of India, New Delhi, 1993
CS2301 INTRODUCTION TO PROGRAMMING
Total Hours: 56 Hrs
Module I: (14 Hours)
Data types, operators and expressions:Identifiers and keywords, data types, literals, variables, constants, operators- arithmetic, assignment, comparison, logical, bit-wise. Special operators
Control statements: conditional expressions, loop statements, nested control structures, breaking control statements.
Module 2: (14 Hours)
Functions and program structures: Defining functions, return statement, function prototype, user defined functions, actual and formal arguments,, local Vs global variables, default arguments, order of function declaration, mutually invocated functions, nested functions, scope rules, side effects, storage class specifiers, recursive functions, preprocessors, header files, standard functions.
Arrays:Array notation, declaration, initialization, processing with arrays, arrays and functions, multidimensional arrays, and character arrays.
Pointers and strings: Pointer arithmetic, pointers and functions, pointers to functions, passing a function to another function, pointers and arrays, arrays of pointers, pointers and strings, pointers to pointers.
Structures, union and bit fields: declaration of structure, processing with structure, initialisation, function and structure, arrays of structures, nested structures, pointers and structures, Union, bit fields, typedef, enumeration.
Module III (14 Hours):
Classes and objects: Structures and classes, declaration, member function, defining the objects of a class, accessing members, arrays of classes, union and classes, nested classes.
Special member functions: Constructors, destructors, inline functions, static class members, friend functions, dynamic memory allocation, this pointer, mutable.
Single and multiple inheritance: Single inheritance, types of base classes, types of derivation, multiple inheritance, container classes, member access control.
Overloading functions and operators: Functions overloading, operator overloading, Binary and unary operators overloading.
Module IV (14 Hours):
Polymorphism and virtual functions: Polymorphism, early binding, polymorphism with pointers, virtual functions, late binding, pure virtual functions, abstract classes, constructors and destructors under inheritance, virtual destructors, virtual bases classes.
Templates, namespaces and exception handling: function template, class template, overloading function templates, exception handling, namespaces.
Data file operations: Opening and closing files, stream state member functions, reading/ writing character files, binary file operations; classes, structures, arrays and nested classes and file operations. Random access file operations.
Introduction of standard template library (STL):Vector classes, double ended queues, list classes, stack classes, queue classes, etc.
D Ravichandran, Programming with C++, 3/e, Tata McGraw Hill Education Private Ltd, 2001.
Eric Nagler, Learning C++ - A hands-on approach, 3/e, Cengage Laerning India, 2004.