Fcp lecture 01

488 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
488
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Fcp lecture 01

  1. 1. CSC105- Fundamentals of Computer Programming Muhammad Adeel (PhD) Lecture 01
  2. 2. CSC105- Fundamentals of Computer Programming Course Objectives “ familiarize with the fundamental concepts of computer and computer programming. learn basic concept of IT learn fundamental concepts of programming by developing and executing programs in C. focus will be on structured programming CSC141 Introduction to Computer Programming 2
  3. 3. Course Outline The need of this course is to develop fundamental skill and techniques of problem analysis and solution synthesis using computer; • Introduction (computer & language) – Computer components (software, hardware and utility) – Types of hardware and software – Languages History – Language types and levels • Code Blocks IDE (Integrated Development Environment) CSC141 Introduction to Computer Programming 3
  4. 4. Course Outline • Algorithms and flowcharting Program Development steps. Algorithms and pseudo code. Flowcharting • Intro to C Programming Syntax and Semantics, Key words; Basic data types in C; Operators, arithmetic operators, assignment operators, increment and decrement operators, expressions, equality operators, precedence of operators; • Program control If and else structures, nested if structure, for, while and do while loops; nested loops, Switch statements; Compound statements; CSC141 Introduction to Computer Programming 4
  5. 5. Course Outline • Functions and Parameters - Passing by value and by reference • Recursion - Recursive procedure and recursive functions • Arrays Declaration. Array passing to functions, multidimensional arrays, parallel arrays • Strings Character strings, string manipulation, library functions • Pointers pointers and arrays,Introduction to Computer CSC141 pointers and functions 5 Programming
  6. 6. Course Outline • Structures, Unions and Enumerated data types Declaration and initialization structures, unions and numerated data types.Accessing members, passing structures to functions, pointers and structures. • File Processing Creating Reading and Writing to sequential access files; Creating Reading and Writing to random access files. case study using files. CSC141 Introduction to Computer Programming 6
  7. 7. Recommended books: • The Waite Group’s Turbo C Programming for the PC by Robert Lafore, Revised Ed. • Let Us C, by Yashavant P. Kanetkar CSC141 Introduction to Computer Programming 7
  8. 8. Recommended Books: • C How to Program, by Dietel and Dietel, 4/e 5/e or 6/e • Introduction to Computers, by Peter Norton, 6th or 7th Ed. Online Learning Center of Intro to Computers: http://highered.mcgraw-hill.com/sites/0072978902/student_view0/ CSC141 Introduction to Computer Programming 8
  9. 9. Delivery: • • • • • • • 30 lectures 3 Quizzes 3 Assignment First Sessional Examination Second Sessional Examination Terminal Examination Practice: Exercises, Lab Sheets CSC141 Introduction to Computer Programming 9
  10. 10. Fundamentals of Computer Concepts CSC141 Introduction to Computer Programming 10
  11. 11. Computer A computer is a programmable, multiuse machine that accepts data, ( raw facts and figures ) and process ,or manipulates, it into information. Information: “processed data information” on a computer CSC141 Introduction to Computer Programming is called 11
  12. 12. Parts of the Computer System • Building Blocks of computer system – Data (information) – User – Hardware – Software CSC141 Introduction to Computer Programming 12
  13. 13. Parts of the Computer System • Data – Pieces of facts – Computer organize and present information • Users – People operating the computer – Computer working for the people – Users are most important part of the computers – Tell the computer what to do CSC141 Introduction to Computer Programming 13
  14. 14. HARDWARE • Physical Components of the Computer. • TANGIBLE (can be touched) SOFTWARE • • • • Step-by-step instructions to perform the task. Also called a program INTANGIBLE (cannot be touched) Programs and software interchangeable terms CSC141 Introduction to Computer Programming 14
  15. 15. HARDWARE : Major components of a Computer • • • • • INPUT DEVICES OUTPUT DEVICES CPU MEMORY STORAGE DEVICES CSC141 Introduction to Computer Programming 15
  16. 16. HARDWARE: INPUT DEVICES These devices allow the user to enter the data into the computer. These devices are; • Keyboard • Mouse • Scanner • Pointer CSC141 Introduction to Computer Programming 16
  17. 17. HARDWARE: OUTPUT DEVICES Consist of devices that translate information processed by the computer into human understandable format. These devices are: • Printer • Monitor • Speaker CSC141 Introduction to Computer Programming 17
  18. 18. HARDWARE: I/O DEVICES Some devices are both input as well as output devices. Can perform I/O simultaneously. • Touchpad Screens CSC141 Introduction to Computer Programming 18
  19. 19. HARDWARE : CPU; Central Processing Unit • Brain of the computer. • Two parts are: – ALU – CU CSC141 Introduction to Computer Programming 19
  20. 20. HARDWARE : CPU; CONTROL UNIT • Directs and coordinates flow of data through the CPU and to and from other devices • Traffic cop • CPU’s Instruction set is built into the Control unit called Commands that a CPU can execute CSC141 Introduction to Computer Programming 20
  21. 21. HARDWARE : CPU; ALU Arithmetic Logic Unit CSC141 Introduction to Computer Programming 21
  22. 22. HARDWARE: MEMORY Two categories of Memory • Volatile Memory Loses its contents when the computer's power is turned off • Non-volatile Memory Does not lose its contents when the computer’s power is turned off CSC141 Introduction to Computer Programming 22
  23. 23. HARDWARE: MEMORY Stores Data or programs (workspace or archiving/storage space) RAM: Random Access Memory (Volatile) • Stores current Data and programs • More RAM results in a faster system ROM: Read Only Memory (non-volatile) • Permanent storage of programs/instructions • Holds the computer boot directions CSC141 Introduction to Computer Programming 23
  24. 24. HARDWARE: Memory; CPU Registers (Part of ALU) • High speed memory locations built directly into the CPU • Temporary storage location used by the CPU (Scratchpad) • Used to hold data currently being processed • Results of the calculations • Very expensive that’s why very limited. CSC141 Introduction to Computer Programming 24
  25. 25. HARDWARE: STORAGE DEVICES • Hold data and programs permanently • Different from RAM • Magnetic storage; Uses a magnet to access data (Floppy and hard drive, USB drives) • Optical storage; Uses a laser to access data (CD and DVD drives ) CSC141 Introduction to Computer Programming 25
  26. 26. TYPES OF SOFTWARE SYSTEM SOFTWARE Enables the application to interact with the computer and manages the computer internal resources. Examples: – Operating System – Device Drivers APPLICATION SOFTWARE It performs useful work on General-purpose task. Examples: – MS-Word – PowerPoint – Google (search engine) CSC141 Introduction to Computer Programming 26
  27. 27. Utility Programs • Utility Programs provide services not provided by the system software. • Usually used to recover the system, data or resources. • Examples: – Screen savers – Data recovery – Backup – Virus protection – Norton utilities CSC141 Introduction to Computer Programming 27
  28. 28. How CPU works? Four basic operations: 1. Fetch: obtain a program instruction or data item from memory. 2. Decode: translate the instruction into commands. 3. Execute: carry out the command. 4. Store: write the result into the memory CSC141 Introduction to Computer Programming 28
  29. 29. Machine Cycle A Machine Cycle comprises i-time and e-time: • Instruction time or i–time to fetch and decode • Execution time or e–time to execute and store the result CSC141 Introduction to Computer Programming 29
  30. 30. How CPU Synchronizes? Through System Clock System Clock Synchronizes all computer operations • Train of binary pulses • Faster clock speed means the CPU can execute more instructions each second • Units: MHz and GHz Hz = cycles per second CSC141 Introduction to Computer Programming 30
  31. 31. Types of Computers 1. 2. 3. 4. Supercomputers Mainframes Minicomputers Microcontrollers CSC141 Introduction to Computer Programming 31
  32. 32. Supercomputer • Most powerful computers • Physically largest in size • Hundreds of thousands of processors that can process huge amounts of data • Perform over 1 quadrillion calculations per second. e.g. IBM ASCI White, Cray • Ideal for handling large and highly complex problems that require extreme calculating power CSC141 Introduction to Computer Programming 32
  33. 33. Mainframe • Mainly used by large organizations for critical applications, typically bulk data processing – Banks, Airlines, Insurance Companies • Measured in millions of integer operations per second (MIPS) • Vary in size from small, to medium, to large, depending on their use. • Normally Dumb Terminals are connected to these main frames. Processing is done by Main Frames. • Dumb terminals only have keyboard, monitors. CSC141 Introduction to Computer Programming 33
  34. 34. Minicomputers • Class of multi-user computers that lies in between mainframe computers (multi user) and microcomputers or personal computers (single user) • Midrange computer, such as the higher-end SPARC, POWER and Itanium-based systems from Sun Microsystems, IBM and Hewlett-Packard. CSC141 Introduction to Computer Programming 34
  35. 35. Computers for individuals -PCs Microcomputers – Workstation – Desktop computers – Notebook computers – Tablet computers – Handheld computers – Smart phones CSC141 Introduction to Computer Programming 35
  36. 36. Microcontroller • Embedded computers are small in size, specialized microprocessors • Designed for small or dedicated applications • Installed in "smart" appliances from automobiles to washing machines CSC141 Introduction to Computer Programming 36
  37. 37. What is IT? Base of the Computer was/is: digital signal; Base of Communication devices was analog signal transferred to digital signal The day Communication changed its base from analog to digital; There was natural merger of the two technologies Computer and Communication The following industries also joined : Mass storage, Consumer Electronics, Entertainment, Multimedia The Name given to the family Information Technology : IT CSC141 Introduction to Computer Programming 37
  38. 38. Practice Quiz 1. What is the difference between data and Information? 2. What is the difference between volatile and non-volatile memory? 3. Memory is used for? 4. What does computer do in i-time and e-time? 5. How CPU synchronizes with its other components? 6. Name a device which is both input and output? 7. Give few examples of utility software. 8. Name at least two operating systems (OS). 9. What is the use of embedded systems? 10.What is Information Technology? CSC141 Introduction to Computer Programming 38

×