Vous êtes sur la page 1sur 2

Birla Institute of Technology & Science, Pilani Second Semester 2010-2011 Course Handout (Part-II) TA C162 Computer Programming

I Date: 07/01/2011 In addition to part I (General Handout for all courses appended to the time table) this portion gives further specific details regarding the course. Course Number : TA C162 Course Title : Computer Programming-I Instructor-In-charge : VIRENDRA S SHEKHAWAT (vsshekhawat@bits-pilani.ac.in) Team : Ankit Chaudhary, Avinash Gautam, Murali P, Mayuri N Rajurwar, N Mehala,
Nirmal Kumar Gupta, Pankaj Vyas, Suneel Kumar, Sunita Bansal, Vandana Agarwal, Varuni Ganesan, Vikas Singh, Vishal Gupta

Objective: To introduce the high level structure of a computer and an approach to interact with program or a computer. Scope: This course uses a bottom-up approach to teach a beginner what a computer is and how it can be programmed. The course starts with basic building blocks required to understand the structure of a computer: numbers, bits, structures to implement operations on numbers, and structures to control the execution of commands by a computer. The course progresses to introduce high level abstractions such as an operating system and a high level language. The course concludes with the introduction of programming as a framework for problem solving: program constructs as tools for problem solving and programming techniques as strategies for problem solving. Text Books [T1] Introduction to Computing Systems (From Bits and Gates to C and Beyond). Yale N. Patt, and Sanjay J. Patel. McGraw Hill International 2nd Edition 2001 [T2] Problem Solving and Program Design in C, J R Hanly and E B Koffman, Pearson Education Fifth Edition 2007 Reference Books [R1] Programming in ANSI C. E. Balaguruswamy. Tata McGraw Hill, 4th Edition [R2] The C programming language, Kernighan and Ritchie. Prentice Hall, India. [R3] How to solve it by Computer, R.G. Dromey. Prentice Hall, India. Lecture Schedule: Lect. No. Learning Objective 1 To understand the basic structure of the computer 2-3 To understand how simple numeric data is represented inside a computer. To understand digital logic structures as basic building blocks of a digital computer. To understand the logical structure of a digital computer. To understand the concept of an instruction and the concept of Programming using instructions.

Topic Introduction, Basic building block of the computer (Memory, Control, Processor, I/O) Number Systems and Number representations Arithmetic & Logic operations on bits. Logic Gates & Combinational Logic. Demorgans Law Flip-Flops & Storage LC-3 an Example of von Neumann Model, Instruction Processing Cycle The concept of an Instruction Set Architecture (ISA). LC-3 an example ISA.

Reference Class Notes

T1-Sections 2.1-2.4, 2.7 T1Section 2.5, 2.6 T1Sections 3.1-3.3 T1Section 3.4, 3.5 T1Sections 4.1-4.4

4 5-6 7-8 9-10

11-14

T1Chapter 5

15 16 17-19 20 21 To understand problem solving using computers: Introduction to Algorithms To understand problem solving using a digital computer as a concrete engineering activity: the use of a programming language (C) a tool-kit, and programming as the means of problem solving. To understand specific constructs (in C) as tools available for handling specific classes of problems.

22 23-24

Concept of Assembly programming and an Assembler. Concept of a Higher Level Language and a Compiler Concept of an algorithm and its design using Flow charts Transition from an algorithm to a program. Concept of a program. Structure of a C program, Representing and Manipulating Data. Input and Output in C Evaluation of expressions. Operator Precedence and associativity rules. Selection Structures: Sequential and conditional evaluation. Iterative/Repetitive evaluation. Developing iterative specifications using an inductive approach. Invariants and termination conditions. Simple program design and development using iterative statements. Top-down design with functions, Modular programming. Collection of similar type of elements i.e. Arrays as finite functions and linear storage. Two Dimensional arrays. Iterative evaluation using data in arrays. (e.g. Searching, Ordering, Deletion, Insertion) String Processing: Comparison, Conversions, Concatenation etc. User defined structure types: Structure and Union as a heterogeneous collection of data File Processing in C

T1Chapter 7 T1-Sections 11.1-11.3 T1 Chapter 6 Class Notes Class Notes

T2 Chapter 2 Class Notes

25-26 27 28-29

T2-Chapter 4

30

To gain the ability to choose the right tool for implementing a solution.

T2Chapter 5 Class Notes

31-32 33

T2Chapter 3, 6 Class Notes

T2Chapter 8 Class Notes

34-36

37-38 39-40

T2-Chapter 9 Class Notes T2-Chapter 11 Class Notes R1-Chapter 12 T2-Chapter 12

41-43

Evaluation: Component Test 1 Test 2 Online Test Comprehensive Lab Attendance

Mode Close Book Close Book Open Book Partial Open Book ----

Date

09/02/2011 16/03/2011 17/04/2011 02/05/2011


-----

Weightage 20% 20% 15% 40% 05%

Make-up Policy: No makeup will be given for the lab attendance. For tests, however, make-up will be granted strictly on prior permission and on justifiable grounds only. Course Notices All notices pertaining to this course will be displayed on the IPC Notice Board. Chamber Consultation Hour: To be announced in the Class room InstructorIn-Charge TA C162

Vous aimerez peut-être aussi