**Freshman Year/First Semester**

**Nature of Course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Books:
**1. Computer Fundamentals, Anita Goel, Pearson Education India

**Reference Books:**

1. Introduction to Computers, Peter Norton, 7th Edition, McGraw Hill Education

2. Computer Fundamental, Pradeep K. Sinha and Priti Sinha

3. Data Mining Concepts and Techniques, Third Edition, Jiawei Han, Micheline Kamber and Jian Pei

4. Cloud Computing Bible, Barrie Sosinsky, Wiley

**Course Synopsis:**

This course covers the basic concepts of computers and information technology including introduction, hardware, software, memory, input/output, data representation, database, networks and data communication, Internet, multimedia, and computer security.

**Goal:
**The main objective of this course is to provide students knowledge of fundamental concepts of computers and information technology.

**Course Contents:**

**Unit 1. Introduction to Computer (3 hrs)**

Introduction; Digital and Analog Computers; Characteristics of Computer; History of Computer; Generations of Computer; Classification of Computer; The Computer System; Application of Computers

**Unit 2. The Computer System Hardware (3 hrs)**

Introduction; Central Processing Unit; Memory Unit; Instruction Format; Instruction Set; Instruction Cycle; Microprocessor; Interconnecting the Units of a Computer; Inside a Computer Cabinet

**Unit 3. Computer Memory (4 hrs)**

Introduction; Memory Representation; Memory Hierarchy; CPU Registers; Cache Memory; Primary Memory; Secondary Memory; Access Types of Storage Devices; Magnetic Tape; Magnetic Disk; Optical Disk; Magneto-Optical Disk; How the Computer uses its memory

**Unit 4. Input and Output Devices (4 hrs)**

Introduction; Input-Output Unit; Input Devices; Human Data Entry Devices; Source Data Entry Devices; Output Devices; I/O Port; Working of I/O System

**Unit 5. Data Representation (6 hrs)
**Introduction; Number System; Conversion from Decimal to Binary, Octal, Hexadecimal; Conversion of Binary, Octal, Hexadecimal to Decimal; Conversion of Binary to Octal, Hexadecimal; Conversion of Octal, Hexadecimal to Binary; Binary Arithmetic; Signed and Unsigned Numbers; Binary Data Representation; Binary Coding Schemes; Logic Gates

**Unit 6. Computer Software (6 hrs)**

Introduction; Types of Software; System Software; Application Software; Software Acquisition; Operating System (Introduction, Objectives of Operating System, Types of OS, Functions of OS, Process Management, Memory Management, File Management, Device Management, Protection and Security, User Interface, Examples of Operating Systems)

**Unit 7. Data Communication and Computer Network (5 hrs)**

Introduction; Importance of Networking; Data Transmission Media; Data Transmission across Media; Data Transmission and Data Networking; Computer Network; Network Types; Network Topology; Communication Protocol; Network Devices; Wireless Networking

**Unit 8. The Internet and Internet Services (4 hrs)
**Introduction; History of Internet; Internetworking Protocol; The Internet Architecture; Managing the Internet; Connecting to Internet; Internet Connections; Internet Address; Internet Services; Uses of Internet; Introduction to Internet of Things (IoT), Wearable Computing, and Cloud Computing, Introduction to E-commerce, E-governance, and Smart City, and GIS

**Unit 9. Fundamentals of Database (4 hrs)
**Introduction; Database; Database System; Database Management System; Database System Architectures; Database Applications; Introduction to Data Warehousing, Data mining, and BigData

**Unit 10: File Handling in C (4 Hrs.)**

Concept of File, Opening, and closing of File, Input-Output Operations in File, Random access in File, Error Handling in Files

**Unit 11: Introduction to Graphics (3 Hrs.)**

Concepts of Graphics, Graphics Initialization, and Modes, Graphics Function

**Laboratory works:**

After completing this course, students should have practical knowledge of different hardware components of a computer, operating systems, Word Processors, Spreadsheets, Presentation Graphics, Database Management Systems, and Internet and its services

**Nature of Course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Books:
**1. Byron Gottfried: “Programming with C”, Second Edition, McGraw Hill

Education.

2. Herbert Schildt, C The Complete Reference, Fourth Edition, Osborne/McGraw-

Hill Publication.

**Reference Books:
**1. Paul Deitel, Harvey Deitel, C: How to Program, Eighth Edition, Pearson

Publication.

2. Al Kelley, Ira Pohl: “A Book on C”, Fourth Edition, Pearson Education.

3. Brian W. Keringhan, Dennis M. Ritchiem, The C programming Language,

Second Edition, PHI Publication.

4. Ajay Mittal, Programming in C: A Practical Approach, Pearson Publication.

5. Stephen G. Kochan, Programming in C, CBS publishers & distributors.

6. E. Balagurusamy, Programming in ANSI C, Third Edition, TMH publishing.

**This course covers the concepts of structured programming using C programming language.**

Course Synopsis:

Course Synopsis:

**Goal:
**This course is designed to familiarize students with the techniques of

programming in C.

**Course Contents:**

**Unit 1: Problem Solving with Computer (2 Hrs.)
**Problem analysis, Algorithms, and Flowchart, Coding, Compilation and Execution, History of C, Structure of C program, Debugging, Testing and Documentation

**Unit 2: Elements of C (4 Hrs.)
**C Standards( ANSI C and C99), C Character Set, C Tokens, Escape sequence, Delimiters,

Variables, Data types (Basic, Derived, and User Defined), Structure of a C program, Executing a C program, Constants/ Literals, Expressions, Statements, and Comments.

**Unit 3: Input and Output (2 Hrs.)
**Conversion specification, Reading a character, Writing a character, I/O operations, Formatted I/O

**Unit 4: Operators and Expression (4 Hrs.)
**Arithmetic operator, Relational operator, Logical or Boolean operator, Assignment Operator, Ternary operator, Bitwise operator, Increment or Decrement operator, Conditional operator, Special Operators(sizeof and comma), Evaluation of Expression, Operator Precedence and Associativity.

**Unit 5: Control Statement (4 Hrs.)
**Conditional Statements, Decision Making and Branching, Decision Making and Looping, Exit function, Break and Continue.

**Unit 6: Arrays (6 Hrs.)
**Introduction to Array, Types of Array (Single Dimensional and Multidimensional), Declaration and Memory Representation of Array, Initialization of array, Character Array and Strings, Reading and Writing Strings, Null Character, String Library Functions( string length, string copy, string concatenation, string compare)

**Unit 7: Functions (5 Hrs.)
**Library Functions, User-defined functions, Function prototype, Function call, and Function Definition, Nested and Recursive Function, Function Arguments and Return Types, Passing, Arrays to Function, Passing Strings to Function, Passing Arguments by Value, Passing Arguments by Address, Scope visibility and lifetime of a variable, Local and Global Variable.

**Unit 8: Structure and Union (5 Hrs.)
**Introduction, Array of structure, Passing structure to function, Passing array of structure to function, Structure within structure ( Nested Structure), Union, Pointer to structure

**Unit 9: Pointers (6 Hrs.)
**Introduction, The & and * operator, Declaration of pointer, Chain of Pointers, Pointer Arithmetic, Pointers and Arrays, Pointers and Character Strings, Array of Pointers, Pointers as Function Arguments, Function Returning pointers, Pointers and Structures, Dynamic Memory Allocation

**Unit 10. Files and file handling in C (4 Hrs)
**Concept of file, Opening and closing of file, Modes, Input/output function, Random access in file, Printing a file.

**Unit 11. Introduction to Graphics (3 Hrs)
**Modes, Initialization, Graphics Function

**Laboratory works:****
**This course requires a lot of programming practices. Each topic must be followed by a practical session. Some practical sessions include programming to:

- Create, compile and run simple C programs, handle different data types available in C, perform arithmetic operations in C, perform formatted input and output operations, perform character input and output operations.
- Perform logical operations, create decision making programs, create loops to repeat task.
- Create user-defined functions, create recursive functions, work with automatic, global and static variables, create, manipulate arrays and matrices (single and multi-dimensional), work with pointes, dynamically allocate de-allocate storage space during runtime, manipulate strings (character arrays) using various string handling functions.
- Create and use structures and files to keep record of students, employees etc.

**Nature of Course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Books:****
**1. M. Morris Mano, “Digital Logic & Computer Design”

**Reference Books:
**1. Brain Holdsworth, “Digital Logic Design”, Elsevier Science.

**2. John Patrick Hayes, “Introduction to Digital Logic Design”, Addison-Wesley.**

3. M. Morris Mano and Charles Kime, “Logic and Computer Design Fundamentals”,

Pearson New International.

**Course Synopsis:**

This course covers the concepts of digital logic and switching networks. The course includes the fundamental concepts of boolean algebra and its application for circuit analysis, multilevel gates networks, flip-flops, counters logic devices and synchronous and asynchronous sequential logic and digital integrated circuits.

**Goal:**

The main objective of this course is to introduce the basic tools for the design of digital circuits and introducing methods and procedures suitable for a variety of digital design applications.

**Course Contents:**

**Unit 1. Introduction (2 Hrs)**

Scopes and limitations of statistics in empirical research; Role of probability theory in statistics; Role of computer technology in statistics

**Unit 2: Boolean algebra and Logic Gates (5 Hrs.)
**Basic and Axiomatic definitions of Boolean algebra, Basic Theorems and properties of Boolean Algebra, Boolean Functions, Logic Operations, Logic Gates, Integrated Circuits

**Unit 3: Simplification of Boolean Functions (5 Hrs.)
**K-map, Two and Three variable maps, Four variable maps, product of sum simplification, NAND and NOR implementation, Don’t Care conditions, Determinant and selection of Prime Implicants

**Unit 4: Combinational Logic (5 Hrs.)
**Design Procedure, Adders, Subtractors, Code Conversions, Analysis Procedure, Multilevel NAND and NOR Circuits, Exclusive-OR Circuits

**Unit 5: Combinational Logic with MSI and LSI (8 Hrs.)
**Binary Parallel Adder and Subtractor, Decimal Adder, Magnitude Comparator, Decoders and Encoders, Multiplexers, Read-only-Memory (ROM), Programmable Logic Array (PLA), Programmable Array Logic (PAL)

**Unit 6: Synchronous and Asynchronous Sequential Logic (10 Hrs.)
**Flip-Flops, Triggering of flip-flops, Analysis of clocked sequential circuits, Design with state equations and state reduction table, Introduction to Asynchronous circuits, Circuits with latches.

**Unit 7: Registers and Counters (6 Hrs.)
**Registers, Shift registers, Ripple Counters, Synchronous Counters, Timing Sequences, The memory

**Laboratory Works:
**Students should be able to realize following digital logic circuits as a part of laboratory work.

- Familiarizations with logic gates
- Combinatorial Circuits
- Code Converters
- Design with Multiplexers
- Adders and Subtractors
- Flip-Flops
- Sequential Circuits
- Counters
- Clock Pulse Generator

**Nature of Course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Book**

1. Calculus Early Transcendentals, James Stewart, 7E, CENGAGE Learning.

**Reference Book**

1. Calculus Early Transcendentals, Thomas, 12th Editions, Addision Wesley.

**Course Synopsis:**

The course covers the concepts of functions, limits, continuity,

differentiation, integration of function of one variable; logarithmic, exponential, applications of derivative and antiderivatives, differential equations, vectors and applications, partial derivatives and Multiple Integrals.

**Goal:**

The objective of this course is to make students able to

- understand and formulate real world problems into mathematical statements.
- develop solutions to mathematical problems at the level appropriate to the course.
- describe or demonstrate mathematical solutions either numerically or graphically.

**Course Contents:**

**Unit 1: Function of One Variable (5 Hrs.)**

Four ways of representing a function, Linear mathematical model, Polynomial, Rational, Trigonometric, Exponential and Logarithmic functions, Combination of functions, Range and domain of functions and their Graphs

**Unit 2: Limits and Continuity (4 Hrs.)**

Precise definition of Limit, Limits at infinity, Continuity, Horizontal asymptotes, Vertical and Slant asymptotes

**Unit 3: Derivatives (4 Hrs.)**

Tangents and velocity, Rate of change, Review of derivative, Differentiability of a function, Mean value theorem, Indeterminate forms and L’Hospital rule

**Unit 4: Applications of Derivatives (4 Hrs.)**

Curve sketching, Review of maxima and minima of one variable, Optimization problems, Newton’s method

**Unit 5: Antiderivatives (5 Hrs.)**

Review of antiderivatives, Rectilinear motion, Indefinite integrals and Net change, Definite integral, The Fundamental theorem of calculus, Improper integrals

**Unit 6: Applications of Antiderivatives (5 Hrs.)**

Areas between the curves, Volumes of cylindrical cells, Approximate Integrations, Arc length, Area of surface of revolution

**Unit 7: Ordinary Differential Equations (6 Hrs.)**

Introduction, Introduction to first order equations Separable equations, Linear equations, Second order linear differential equations, Non-homogeneous linear equations, Method of undetermined coefficients

**Unit 8: Infinite Sequence and Series (5 Hrs.)**

Infinite sequence and series, Convergence tests and power series, Taylor’s and Maclaurin’s series

**Unit 9: Plane and Space Vectors (4 Hrs.)**

Introduction, Applications, Dot product and cross Product, Equations of lines and Planes, Derivative and integrals of vector functions, Arc length and curvature, Normal and binormal vectors, Motion in space

**Unit 10: Partial Derivatives and Multiple Integrals (3 Hrs.)**

Limit and continuity, Partial derivatives, Tangent planes, Maximum and minimum values, Multiple integrals

**Nature of Course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Books:
**1. Garcia Narciso, Damask Arthur, Physics for Computer Science Students, Springer-Verlag

**References:
**1. Heliday David, Resnick Robert and Walker Gearl, Fundamentals of Physics, 9th ed., John-Wiley and Sons, Inc.

2. Francis W. Sears, Hugh D. Young, Roger Freedman, Mark Zemansky, University

Physics, Volume 1 & 2, 14th ed., Pearson Publication

3. Knight Randall D., Physics for Scientists and Engineers: A Strategic Approach, 3rd ed., Pearson Publication

**Course Synopsis:**

This course covers the fundamentals of physics including oscillations, electromagnetic theory, and basics of quantum mechanics, band theory, semiconductors and universal logic gates and finally physics of manufacturing integrated circuits.

**Goal:**

The main objective of this course is to provide knowledge in physics and apply this knowledge for computer science and information technology.

**Course Contents:**

**Unit 1: Rotational Dynamics and Oscillatory Motion (5 Hrs.)
**Moment of inertia and torque, Rotational kinetic energy, Conservation of angular momentum, Oscillation of spring: frequency, period, amplitude, phase angle and energyUnit

**Unit 2: Electric and Magnetic Field (5 Hrs.)**

Electric and magnetic field and potential, Force on current carrying wire, magnetic dipole moment, Force on a moving charge, Hall effect, Electromagnetic waves

**Unit 3: Fundamentals of Atomic Theory (8 Hrs.)**

Blackbody radiation, Bohr atom, Spectrum of Hydrogen, Franck-Hertz experiment, de Broglie’s hypothesis and its experimental verification, Uncertainty principle and its origin, matter waves and the uncertainty principle, group velocity.

**Unit 4: Methods of Quantum Mechanics (5 Hrs.)**

Schrodinger theory of quantum mechanics and its application, Outline of the solution of Schrodinger equation for H-atom, space quantization and spin, Atomic wave functions

**Unit 5: Fundamentals of Solid State Physics (6 Hrs.)**

Crystal structure, Crystal bonding, Classical and quantum mechanical free electron model, Bloch theorem, Kronig-Penny model, Tight-binding approximation, conductors, insulators and semiconductors, effective mass and holes.

**Unit 6: Semiconductor and Semiconductor devices (8 Hrs.)**

Intrinsic and extrinsic semiconductors, Electrical conductivity of semiconductors,

Photoconductivity, Metal-metal junction: The contact potential, The semiconductor diode, Bipolar junction transistor (BJT), Field effect transistor (FET).

**Unit 7: Universal Gates and Physics of Integrated Circuits (8 Hrs.)**

Universal gates, RTL and TTL gates, Memory circuits, Clock circuits, Semiconductor purification: Zone refining, Single crystal growth, Processes of IC production, Electronic component fabrication on a chip.

**Laboratory Works:**

Students should able to perform at least one experiment from units 1, 2 and 5, 6, 7. The details of the experiment will be provided in the manual.

**Freshman Year/Second Semester**

** Nature of course:** Theory (3 Hrs)

**Text Book:
**1. Kenneth H. Rosen, Discrete mathematics and its applications, Seventh Edition McGraw Hill Publication, 2012.

2. Bernard Kolman, Robert Busby, Sharon C. Ross, Discrete Mathematical Structures, Sixth Edition Pearson Publications, 2015

3. Joe L Mott, Abraham Kandel, Theodore P Baker, Discrete Mathematics for Computer Scientists and Mathematicians, Printice Hall of India, Second Edition, 2008

**References:
**1. Ken Bogart, Scot Drysdale, Cliff Stein, Discrete Mathematics for Computer Scientists, First Edition Addison-Wesley, 2010

**Course Synopsis:**

The course covers fundamental concepts of discrete structure like introduce logic, proofs, sets, relations, functions, counting, and probability, with an emphasis on applications in computer science.

**Goals:** After completing this course, the largest student will gain knowledge in discrete mathematics and finite state automata in an algorithmic approach. It helps the target student in gaining fundamental and conceptual clarity in the area of logic, Reasoning, Algorithms, Recurrence Relation and Graph Theory.

**Course Contents:**

**Unit 1: Basic Discrete Structures (7 Hrs.)
**1.1 Sets: Sets and Subsets, Power Set, Cartesian Product, Set Operations, Venn Diagram, Inclusion-Exclusion Principle, Computer Representation of Sets

1.2 Functions: Basic Concept, Injective and Bijective Functions, Inverse and Composite Functions, Graph of Functions, Functions for Computer Science (Ceiling Function, Floor Function, Boolean Function, Exponential Function), Fuzzy Sets and Membership Functions, Fuzzy Set Operations

1.3 Sequences and Summations: Basic Concept of Sequences, Geometric and Arithmetic Progression, Single and Double Summation

**Unit 2: Integers and Matrices (6 Hrs.)**

2.1. Integers: Integers and Division, Primes and Greatest Common Divisor, Extended Euclidean Algorithm, Integers and Algorithms, Applications of Number Theory (Linear Congruencies, Chinese Remainder Theorem, Computer Arithmetic with Large Integers)

2.2. Matrices: Zero-One Matrices, Boolean Matrix Operations

**Unit 3: Logic and Proof Methods (6 Hrs.)**

3.1. Logic: Propositional Logic, Propositional Equivalences, Predicates and Quantifiers, Negation of Quantified Statements, Proof of quantified statements, Nested Quantifiers, Rules of Inferences

3.2. Proof Methods: Basic Terminologies, Proof Methods (Direct Proof, Indirect Proof, Proof by Contradiction, Proof By Contraposition, Exhaustive Proofs and Proof by Cases), Mistakes in Proof

**Unit 4: Induction and Recursion (5 Hrs.)**

4.1. Induction: mathematical Induction, Strong Induction and Well-Ordering, Induction in General

4.2. Recursive Definitions and Structural Induction, Recursive Algorithms, Proving Correctness of Recursive Algorithms

**Unit 5: Counting and Discrete Probability (9 Hrs.)**

5.1. Counting: Basics of Counting, Pigeonhole Principle, Permutations and Combinations, Two Element Subsets, Counting Subsets of a Set, Binomial Coefficients, Generalized Permutations and Combinations, Generating Permutations and Combinations

5.2. Discrete Probability: Introduction to Discrete Probability, Probability Theory, Probability Calculation in Hashing, Expected Value and Variance, Randomized Algorithms

5.3. Advanced Counting: Recurrence Relations, Solving Recurrence Relations

(Homogeneous and Non-Homogeneous equations), Introduction to Divide and Conquer Recurrence Relations

**Unit 6: Relations and Graphs (12 Hrs.)**

6.1. Relations: Relations and their Properties, N-ary Relations with Applications, Representing Relations, Closure of Relations, Equivalence Relations, Partial Ordering

6.2. Graphs: Graphs Basics, Graph Types, Graph Models, Graph Representation, Graph Isomorphism, Connectivity in Graphs, Euler and Hamiltonian Path and Circuits, Matching Theory, Shortest Path Algorithm (Dijkstra’s Algorithm), Travelling Salesman Problem, Graph Coloring

6.3. Trees: Introduction and Applications, Tree Traversals, Spanning Trees, Minimum Spanning Trees (Kruskal’s Algorithm)

6.4. Network Flows: Graph as Models of Flow of Commodities, Flows, Maximal Flows and Minimal Cuts, The Max Flow-Min Cut Theorem

**Laboratory Works: **

The laboratory work consists of implementing the algorithms and concepts discussed in the class. Student should implement problems with following concepts;

- Set Operations and Boolean Matrix Operations
- Primility Testing, Number Theory Algorithms, and Operations on Integers
- Counting and Some Recursive Algorithms
- Algorithms for Relations, Graphs

**Nature of course:** Theory (3 Hrs) + Lab (3 Hrs)

**Text Book: **

1. Robert Lafore, Object-Oriented Programming in C++, Fourth Edition, SAMS publications.

2. Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill Publication

**Reference Books:**

1. Deitel and Deitel, C++ How to Program, Third Edition, Pearson Publication.

2. Joyce Farrell, Object-oriented programming using C++, Fourth Edition, Cengage Learning

**Course Synopsis:**

The course covers the basic concepts of object-oriented programming using C++ programming language.

**Goals:**

The main objective of this course is to understand object-oriented programming and advanced C++ concepts such as composition of objects, operator overloads, inheritance and polymorphism, file I/O, exception handling and templates.

**Course Contents:**

**Unit 1: Introduction to Object-Oriented Programming (3 Hrs.) **

Overview of structured programming approach, Object-oriented programming approach, Characteristics of object-oriented languages

**Unit 2: Basics of C++ programming (5 Hrs.)**

C++ Program Structure, Character Set and Tokens, Data Type, Type Conversion, Preprocessor Directives, Namespace, Input/Output Streams and Manipulators, Dynamic Memory Allocation with new and delete, Control Statements.

Functions: Function Overloading, Inline Functions, Default Argument, Pass by Reference, Return by Reference, Scope and Storage Class.

Pointers: Pointer variables declaration & initialization, Operators in pointers, Pointers and Arrays, Pointer and Function.

**Unit 3: Classes & Objects (8 Hrs.)**

A Simple Class and Object, Accessing members of class, Initialization of class objects: (Constructor, Destructor), Default Constructor, Parameterized Constructor, Copy Constructor, The Default Copy Constructor, Objects as Function Arguments, Returning Objects from Functions, Structures and Classes, Memory allocation for Objects, Static members, Member functions defined outside the class.

**Unit 4: Operator Overloading (7 Hrs.) **

Fundamental of operator overloading, Restriction on operator overloading, Operator functions as a class members, Overloading unary and binary operator, Data Conversion (basic to basic, basic to user-defined, user-defined to basic, user-defined to user-defined)

**Unit 5: Inheritance (7 Hrs.)**

Introduction to inheritance, Derived Class and Base Class, Access Specifiers (private, protected, and public), Types of inheritance, Public and Private Inheritance, Constructor and Destructor in derived classes, Aggregation

**Unit 6: Virtual Function, Polymorphism, and miscellaneous C++ Features (5 Hrs.)**

Concept of Virtual functions, Late Binding, Abstract class and pure virtual functions, Virtual Destructors, Virtual base class, Friend function and Static function, Assignment and copy initialization, Copy constructor, This pointer, Concrete classes, Polymorphism and its roles.

**Unit 7: Function Templates and Exception Handling (4 Hrs.)**

Function templates, Function templates with multiple arguments, Class templates, templates and inheritance, Exceptional Handling (Try, throw and catch), Use of exceptional handling.

**Unit 8: File handling (6 Hrs.)**

Stream Class Hierarchy for Console Input /Output, Unformatted Input /Output, Formatted Input /Output with ios Member functions, Formatting with Manipulators, Stream Operator Overloading, File Input/output with Streams, Opening and Closing files, Read/Write from File, File Access Pointers and their Manipulators, Sequential and Random Access to File, Testing Errors during File Operations

**Laboratory Works:
** Students should be able to implement the concepts of Object Oriented Programming using C++ language.

**Nature of Course: ** Theory (3 Hrs)+ Lab (3 Hrs)

Text Books:

1. Ramesh S. Gaonkar, Microprocessor Architecture, Programming, and Applications with 8085, Prentice Hall

Reference Books:

1. A.P.Malvino and J.A.Brown, Digital Computer Electronics, 3rd Edition, Tata McGraw Hill D.V.Hall, Microprocessors and Interfacingv – Programming and Hardware, McGraw Hill

2. 8000 to 8085 Introduction to 8085 Microprocessor for Engineers and Scientists, A.K.Gosh, Prentice Hall

**Course Synopsis:
**This course contains fundamental concepts of computer organization, basic I/O interfaces and Interrupts operations.

**Goal:
**The course objective is to introduce the operation, programming, and application of microprocessor.

**Course Contents:**

**Unit1: Introduction (4 Hrs.)**

Introduction to Microprocessor, Components of a Microprocessor: Registers, ALU and control & timing, System bus (data, address and control bus), Microprocessor systems with bus organization

**Unit 2: Basic Architecture (7 Hrs.) **

Microprocessor Architecture and Operations, Memory, I/O devices, Memory and I/O operations, 8085 Microprocessor Architecture, Address, Data And Control Buses, 8085 Pin Functions, Demultiplexing of Buses, Generation Of Control Signals

**Unit 3: Instruction Cycle (3 Hrs.) **

Fetch Operation and Timing Diagram; Execute Operation and Timing Diagram, Instruction Cycle, Machine Cycle, T-States, T-States, Memory Interfacing

**Unit 4: Assembly Language Programming (10 Hrs.)**

Assembly instruction format, Instruction Types, Mnemonics, Operands, Macro assemblers, Linking, Assembler directives, Addressing Modes, Simple sequence programs, Flags, Branch, Jumps, While-Do, Repeat-Until, If-Then-Else and Multiple If-then Programs, Debugging

**Unit 5: Basic I/O, Memory R/W and Interrupt Operations (6 Hrs.)**

Memory Read, Memory Write, I/O Read, I/O Write, Direct Memory Access, Interrupt, Types, Interrupt Masking

**Unit 6: Input/ Output Interfaces (6 Hrs.) **

Interfacing Concepts, Ports, Interfacing Of I/O Devices, Interrupts In 8085, Programmable Interrupt Controller 8259A, Programmable Peripheral Interface 8255A

**Unit 7: Advanced Microprocessors (9 Hrs.) **

8086: logical block diagram and segments, 80286: Architecture, Registers, (Real/Protected mode), Privilege levels, descriptor cache, Memory access in GDT and LDT, multitasking, addressing modes, flag register 80386: Architecture, Register organization, Memory access in protected mode, Paging

**Laboratory Works: **

The laboratory work includes Assembly language programming using 8085/8086/8088 trainer kit. The programming should include: Arithmetic operation, base conversion, conditional branching etc. The lab work list may include following concepts:

- Assembly language program using 8085 microprocessor kit.
- Use of all types of instructions and addressing modes.
- Arrays and the concept of Multiplications and Division operations on Microprocessor.
- Assembly language programming, using any types of Assembler, including the different functions of Int 10h, and 12h

**Nature of Course: Theory (3 Hrs)**

**Text Books: **

1. Linear Algebra and Its Applications, David C. Lay, 4th Edition, Pearson Addison Wesley.

2. Linear Algebra and Its Applications, Gilbert Strang, 4th Edition, Addison, CENGAGE Learning.

**Course synopsis:**

The course contains concepts and techniques of linear algebra. The course topics include systems of linear equations, determinants, vectors and vector spaces, eigen values and eigenvectors, and singular value decomposition of a matrix.

**Goal:** The main objective of the course is to make familiarize with the concepts and techniques of linear algebra, solve system of linear equation with Gauss-Jordon method, to impart knowledge of vector space and subspace, eigenvalues and eigenvectors of a matrix and get the idea of diagonalization of a matrix, linear programming, Group, Ring, and Field.

**Course Contents:**

**Unit 1: Linear Equations in Linear Algebra (5 Hrs.) **

System of linear equations, Row reduction and Echelon forms, Vector equations, The matrix equations Ax = b, Applications of linear system, Linear independence

**Unit 2: Transformation (4 Hrs.)**

Introduction to linear transformations, the matrix of a linear Transformation, Linear models in business, science, and engineering

**Unit 3: Matrix Algebra (5 Hrs) **

Matrix operations, The inverse of a matrix, Characterizations of invertible matrices, Partitioned matrices, Matrix factorization, The Leontief input output model, Subspace of Rn , Dimension and rank

**Unit 4: Determinants (4 Hrs.) **

Introduction, Properties, Cramer’s rule, Volume and linear transformations

**Unit 5: Vector Spaces (5 Hrs.) **

Vector spaces and subspaces, Null spaces, Column spaces, and Linear transformations, Linearly independent sets: Bases, Coordinate systems

**Unit 6: Vector Space Continued (4 Hrs.) **

Dimension of vector space and Rank, Change of basis, Applications to difference equations, Applications to Markov Chains

**Unit 7: Eigenvalues and Eigen Vectors (5 Hrs.) **

Eigenvectors and Eigenvalues, The characteristic equations, Diagonalization, Eigenvectors and linear transformations, Complex eigenvalues, Discrete dynamical systems, Applications to differential equations

**Unit 8: Orthogonality and Least Squares (5 Hrs.)**

Inner product, Length, and orthoganility, Orthogonal sets, Orthogonal projections, The GramSchmidt process, Least squares problems, Application to linear models, Inner product spaces, Applications of inner product spaces

**Unit 9: Groups and Subgroups (5 Hrs.) **

Binary Operations, Groups, Subgroups, Cyclic Groups Unit 10: Rings and Fields (4 Hrs.) Rings and Fields, Integral domains

** Unit 10: Rings and Fields (4 Hrs.)
**Rings and Fields, Integral domains

**Nature of Course:**

Theory (3 Hrs) + Lab (3 Hrs)

**Text Books:**

1. Michael Baron (2013). Probability and Statistics for Computer Scientists. 2nd Ed., CRC Press, Taylor & Francis Group, A Chapman & Hall Book.

2. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, & Keying Ye (2012). Probability & Statistics for Engineers & Scientists. 9th Ed., Printice Hall

**Reference Books: **

1. Douglas C. Montgomery & George C. Ranger (2003). Applied Statistics and Probability for Engineers. 3rd Ed., John Willey and Sons, Inc.

2. Richard A. Johnson (2001). Probability and Statistics for Engineers. 6th Ed., Pearson Education, India

**Course Synopsis:**

This course contains basics of statistics, descriptive statistics, probability, sampling, random variables and mathematical expectations, probability distribution, correlation and regression.

**Goal: **

The main objective of this course is to impart the knowledge of descriptive statistics, correlation, regression, sampling, theoretical as well as applied knowledge of probability and some probability distributions.

**Course Contents: **

**Unit 1: Introduction (4 Hrs.) **

Basic concept of statistics; Application of Statistics in the field of Computer Science & Information technology; Scales of measurement; Variables; Types of Data; Notion of a statistical population

**Unit 2: Descriptive Statistics (6 Hrs.) **

Measures of central tendency; Measures of dispersion; Measures of skewness; Measures of kurtosis; Moments; Steam and leaf display; five number summary; box plot

Problems and illustrative examples related to computer Science and IT

**Unit 3: Introduction to Probability (8 Hrs.)**

Concepts of probability; Definitions of probability; Laws of probability; Bayes theorem; prior and posterior probabilities

Problems and illustrative examples related to computer Science and IT

**Unit 4: Sampling (3 Hrs.) **

Definitions of population; sample survey vs. census survey; sampling error and non-sampling error; Types of sampling

**Unit 5: Random Variables and Mathematical Expectation (5 Hrs.) **

Concept of a random variable; Types of random variables; Probability distribution of a random variable; Mathematical expectation of a random variable; Addition and multiplicative theorems of expectation

Problems and illustrative examples related to computer Science and IT

**Unit 6: Probability Distributions (12 Hrs.)**

Probability distribution function, Joint probability distribution of two random variables; Discrete distributions: Bernoulli trial, Binomial and Poisson distributions; Continuous distribution: Normal distributions; Standardization of normal distribution; Normal distribution as an approximation of Binomial and Poisson distribution; Exponential, Gamma distribution

Problems and illustrative examples related to computer Science and IT

**Unit 7: Correlation and Linear Regression (7 Hrs.) **

Bivariate data; Bivariate frequency distribution; Correlation between two variables; Karl Pearson’s coefficient of correlation(r); Spearman’s rank correlation; Regression Analysis: Fitting of lines of regression by the least squares method; coefficient of determination

Problems and illustrative examples related to computer Science and IT

**Laboratory Works: **

The laboratory work includes using any statistical software such as Microsoft Excel, SPSS, STATA etc. whichever convenient using Practical problems to be covered in the Computerized Statistics laboratory

**Practical problems**

S. No |
Title of the Practical Problems |
No. of Practical Problems |

1 | Computation of measures of central tendency (ungrouped and grouped data) Use of an appropriate measure and interpretation of results and computation of partition Values | 1 |

2 | Computation measures of dispersion (ungrouped and grouped data) and computation of coefficient of variation. | 1 |

3 | Measures of skewness and kurtosis using method of moments, Measures of Skewness using Box and whisker plot. | 2 |

4 | Scatter diagram, correlation coefficient (ungrouped data) and interpretation. Compute manually and check with computer output. | 1 |

5 | Fitting of lines of regression (Results to be verified with computer output) | 1 |

6 | Fitting of lines of regression and computation of correlation coefficient, Mean residual sum of squares, residual plot. | 1 |

7 | Conditional probability and Bayes theorem | 3 |

8 | Obtaining descriptive statistics of probability distributions | 2 |

9 | Fitting probability distributions in real data (Binomial, Poisson and Normal) | 3 |

Total number of practical problems |
15 |