SlideShare a Scribd company logo
1 of 38
CSC105- Fundamentals of
Computer Programming

Muhammad Adeel (PhD)
Lecture 01
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
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
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
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
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
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
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
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
Fundamentals of Computer Concepts

CSC141 Introduction to Computer
Programming

10
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
Parts of the Computer System
• Building Blocks of computer system
– Data (information)
– User
– Hardware
– Software

CSC141 Introduction to Computer
Programming

12
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
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
HARDWARE :
Major components of a Computer
•
•
•
•
•

INPUT DEVICES
OUTPUT DEVICES
CPU
MEMORY
STORAGE DEVICES

CSC141 Introduction to Computer
Programming

15
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
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
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
HARDWARE :
CPU; Central Processing Unit
• Brain of the
computer.
• Two parts are:
– ALU
– CU

CSC141 Introduction to Computer
Programming

19
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
HARDWARE :
CPU; ALU
Arithmetic Logic Unit

CSC141 Introduction to Computer
Programming

21
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
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
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
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
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
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
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
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
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
Types of Computers

1.
2.
3.
4.

Supercomputers
Mainframes
Minicomputers
Microcontrollers

CSC141 Introduction to Computer
Programming

31
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
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
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
Computers for individuals -PCs
Microcomputers
– Workstation
– Desktop computers
– Notebook computers
– Tablet computers
– Handheld computers
– Smart phones

CSC141 Introduction to Computer
Programming

35
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
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
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

More Related Content

What's hot

Computer Organization and Design
Computer Organization and DesignComputer Organization and Design
Computer Organization and DesignRa'Fat Al-Msie'deen
 
Module 2 Digital Devices and its Applications
Module 2 Digital Devices and its ApplicationsModule 2 Digital Devices and its Applications
Module 2 Digital Devices and its ApplicationsDhiviya Rose
 
Embedded systems
Embedded systemsEmbedded systems
Embedded systemsMinal21
 
Computer system architecture
Computer system architectureComputer system architecture
Computer system architectureKumar
 
Introduction to Embedded System
Introduction to Embedded SystemIntroduction to Embedded System
Introduction to Embedded SystemZakaria Gomaa
 
Central processing unit
Central processing unitCentral processing unit
Central processing unitsumairaasghar
 
Block diagram of a computer
Block diagram of a computerBlock diagram of a computer
Block diagram of a computerQsrealm
 
BASIC COMPUTER ARCHITECTURE
BASIC COMPUTER ARCHITECTURE BASIC COMPUTER ARCHITECTURE
BASIC COMPUTER ARCHITECTURE Himanshu Sharma
 
Computer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answersComputer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answersappasami
 
Co module1a introdctnaddressingmodes
Co module1a introdctnaddressingmodesCo module1a introdctnaddressingmodes
Co module1a introdctnaddressingmodesManu Jose
 
Digital computer Basics by, Er. Swapnil Kaware
Digital computer Basics by, Er. Swapnil KawareDigital computer Basics by, Er. Swapnil Kaware
Digital computer Basics by, Er. Swapnil KawareProf. Swapnil V. Kaware
 
Computer fundamental mba
Computer fundamental mbaComputer fundamental mba
Computer fundamental mbaNilesh Mishra
 
fundamental of computer-u-1-computer hardware system
fundamental of  computer-u-1-computer hardware systemfundamental of  computer-u-1-computer hardware system
fundamental of computer-u-1-computer hardware systemRai University
 
Introduction to Embedded system
Introduction to Embedded systemIntroduction to Embedded system
Introduction to Embedded systemtmnportal
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computersKumar
 
Block diagram by vasant
Block diagram by vasantBlock diagram by vasant
Block diagram by vasantVasant Yeluri
 

What's hot (20)

Computer Organization and Design
Computer Organization and DesignComputer Organization and Design
Computer Organization and Design
 
Module 2 Digital Devices and its Applications
Module 2 Digital Devices and its ApplicationsModule 2 Digital Devices and its Applications
Module 2 Digital Devices and its Applications
 
Embedded systems
Embedded systemsEmbedded systems
Embedded systems
 
Computer system architecture
Computer system architectureComputer system architecture
Computer system architecture
 
Introduction to Embedded System
Introduction to Embedded SystemIntroduction to Embedded System
Introduction to Embedded System
 
Central processing unit
Central processing unitCentral processing unit
Central processing unit
 
Block diagram of a computer
Block diagram of a computerBlock diagram of a computer
Block diagram of a computer
 
BASIC COMPUTER ARCHITECTURE
BASIC COMPUTER ARCHITECTURE BASIC COMPUTER ARCHITECTURE
BASIC COMPUTER ARCHITECTURE
 
Chapter11 new
Chapter11 newChapter11 new
Chapter11 new
 
Chapter3
Chapter3Chapter3
Chapter3
 
Computer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answersComputer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answers
 
Co module1a introdctnaddressingmodes
Co module1a introdctnaddressingmodesCo module1a introdctnaddressingmodes
Co module1a introdctnaddressingmodes
 
Digital computer Basics by, Er. Swapnil Kaware
Digital computer Basics by, Er. Swapnil KawareDigital computer Basics by, Er. Swapnil Kaware
Digital computer Basics by, Er. Swapnil Kaware
 
Computer fundamental mba
Computer fundamental mbaComputer fundamental mba
Computer fundamental mba
 
Computer system
Computer systemComputer system
Computer system
 
Io (2)
Io (2)Io (2)
Io (2)
 
fundamental of computer-u-1-computer hardware system
fundamental of  computer-u-1-computer hardware systemfundamental of  computer-u-1-computer hardware system
fundamental of computer-u-1-computer hardware system
 
Introduction to Embedded system
Introduction to Embedded systemIntroduction to Embedded system
Introduction to Embedded system
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computers
 
Block diagram by vasant
Block diagram by vasantBlock diagram by vasant
Block diagram by vasant
 

Viewers also liked

Presentation & Pitching tips
Presentation & Pitching tipsPresentation & Pitching tips
Presentation & Pitching tipsABrandNewYou
 
Using mySQL in PHP
Using mySQL in PHPUsing mySQL in PHP
Using mySQL in PHPMike Crabb
 
Financial intelligent for start ups
Financial intelligent for start upsFinancial intelligent for start ups
Financial intelligent for start upsjubril
 
Intro to php
Intro to phpIntro to php
Intro to phpSp Singh
 
How to Use Publicity to Grow Your Startup
How to Use Publicity to Grow Your StartupHow to Use Publicity to Grow Your Startup
How to Use Publicity to Grow Your StartupJoy Schoffler
 
Why Learn PHP Programming?
Why Learn PHP Programming?Why Learn PHP Programming?
Why Learn PHP Programming?XtreemHeights
 
Intro to PHP for Beginners
Intro to PHP for BeginnersIntro to PHP for Beginners
Intro to PHP for Beginnersmtlgirlgeeks
 
Excel training for beginners
Excel training for beginnersExcel training for beginners
Excel training for beginnersParul Sharan
 
Beating the decline of the Facebook Organic Reach - KRDS singapore
Beating the decline of the Facebook Organic Reach - KRDS singapore Beating the decline of the Facebook Organic Reach - KRDS singapore
Beating the decline of the Facebook Organic Reach - KRDS singapore KRDS
 
How to present your business plan to investors
How to present your business plan to investorsHow to present your business plan to investors
How to present your business plan to investorsThe Hatch
 
9 Tips For Building An Internal Social Media Team
9 Tips For Building An Internal Social Media Team9 Tips For Building An Internal Social Media Team
9 Tips For Building An Internal Social Media TeamOgilvy Consulting
 
Business plan and startups (english)
Business plan and startups (english)Business plan and startups (english)
Business plan and startups (english)Domenico Nicolò
 

Viewers also liked (20)

JQuery-Tutorial
 JQuery-Tutorial JQuery-Tutorial
JQuery-Tutorial
 
Presentation & Pitching tips
Presentation & Pitching tipsPresentation & Pitching tips
Presentation & Pitching tips
 
Using mySQL in PHP
Using mySQL in PHPUsing mySQL in PHP
Using mySQL in PHP
 
Financial intelligent for start ups
Financial intelligent for start upsFinancial intelligent for start ups
Financial intelligent for start ups
 
Microsoft excel beginner
Microsoft excel beginnerMicrosoft excel beginner
Microsoft excel beginner
 
Intro to php
Intro to phpIntro to php
Intro to php
 
How to Use Publicity to Grow Your Startup
How to Use Publicity to Grow Your StartupHow to Use Publicity to Grow Your Startup
How to Use Publicity to Grow Your Startup
 
Why Learn PHP Programming?
Why Learn PHP Programming?Why Learn PHP Programming?
Why Learn PHP Programming?
 
Intro to PHP for Beginners
Intro to PHP for BeginnersIntro to PHP for Beginners
Intro to PHP for Beginners
 
Computer Programming- Lecture 10
Computer Programming- Lecture 10Computer Programming- Lecture 10
Computer Programming- Lecture 10
 
Excel training for beginners
Excel training for beginnersExcel training for beginners
Excel training for beginners
 
phpTutorial1
phpTutorial1phpTutorial1
phpTutorial1
 
Beating the decline of the Facebook Organic Reach - KRDS singapore
Beating the decline of the Facebook Organic Reach - KRDS singapore Beating the decline of the Facebook Organic Reach - KRDS singapore
Beating the decline of the Facebook Organic Reach - KRDS singapore
 
Computer Programming- Lecture 9
Computer Programming- Lecture 9Computer Programming- Lecture 9
Computer Programming- Lecture 9
 
How to present your business plan to investors
How to present your business plan to investorsHow to present your business plan to investors
How to present your business plan to investors
 
Comp 107chp 1
Comp 107chp 1Comp 107chp 1
Comp 107chp 1
 
Comp 107 cep ii
Comp 107 cep iiComp 107 cep ii
Comp 107 cep ii
 
9 Tips For Building An Internal Social Media Team
9 Tips For Building An Internal Social Media Team9 Tips For Building An Internal Social Media Team
9 Tips For Building An Internal Social Media Team
 
Excel for beginners class 1
Excel for beginners class 1Excel for beginners class 1
Excel for beginners class 1
 
Business plan and startups (english)
Business plan and startups (english)Business plan and startups (english)
Business plan and startups (english)
 

Similar to Fcp lecture 01

Fundamentals of Computer
Fundamentals of Computer Fundamentals of Computer
Fundamentals of Computer educationfront
 
avicHomphs-150226100804-conversion-gate01 (1)(1).pdf
avicHomphs-150226100804-conversion-gate01 (1)(1).pdfavicHomphs-150226100804-conversion-gate01 (1)(1).pdf
avicHomphs-150226100804-conversion-gate01 (1)(1).pdfRajDhrub
 
computer hardware and software
computer hardware and softwarecomputer hardware and software
computer hardware and softwareavinash gupta
 
0-Slot02-Introduction-to-PFC.pdf
0-Slot02-Introduction-to-PFC.pdf0-Slot02-Introduction-to-PFC.pdf
0-Slot02-Introduction-to-PFC.pdfssusere19c741
 
KL1034 Lect1 Computer assembly.pdf
KL1034 Lect1 Computer assembly.pdfKL1034 Lect1 Computer assembly.pdf
KL1034 Lect1 Computer assembly.pdfSysteDesig
 
Introduction to Computer and Programming - Lecture 01
Introduction to Computer and Programming - Lecture 01Introduction to Computer and Programming - Lecture 01
Introduction to Computer and Programming - Lecture 01hassaanciit
 
Presentation on Computer Basics and architecture.pdf
Presentation on Computer Basics and architecture.pdfPresentation on Computer Basics and architecture.pdf
Presentation on Computer Basics and architecture.pdfnavikvel
 
The computer by pradeep
The computer by pradeepThe computer by pradeep
The computer by pradeepPradeep sagar
 
unit-i-computer-organization and architecture.ppt
unit-i-computer-organization and architecture.pptunit-i-computer-organization and architecture.ppt
unit-i-computer-organization and architecture.pptvardagotmare1
 
Lecture 1 Introduction.pptx
Lecture 1 Introduction.pptxLecture 1 Introduction.pptx
Lecture 1 Introduction.pptxOrchestra2
 
01IntroductiontoInformationTechnology_special.ppt
01IntroductiontoInformationTechnology_special.ppt01IntroductiontoInformationTechnology_special.ppt
01IntroductiontoInformationTechnology_special.pptAziziMtumwaIddi
 
01 introduction to information technology
01 introduction to information technology01 introduction to information technology
01 introduction to information technologyDinesh Gunathilaka
 
computer organisation architecture.pptx
computer organisation architecture.pptxcomputer organisation architecture.pptx
computer organisation architecture.pptxYaqubMd
 
HARDWARE AND SOFTWARE.pptx
HARDWARE AND SOFTWARE.pptxHARDWARE AND SOFTWARE.pptx
HARDWARE AND SOFTWARE.pptxKhushiSinghal52
 

Similar to Fcp lecture 01 (20)

Fundamentals of Computer
Fundamentals of Computer Fundamentals of Computer
Fundamentals of Computer
 
avicHomphs-150226100804-conversion-gate01 (1)(1).pdf
avicHomphs-150226100804-conversion-gate01 (1)(1).pdfavicHomphs-150226100804-conversion-gate01 (1)(1).pdf
avicHomphs-150226100804-conversion-gate01 (1)(1).pdf
 
computer hardware and software
computer hardware and softwarecomputer hardware and software
computer hardware and software
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
 
Week 01.pdf
Week 01.pdfWeek 01.pdf
Week 01.pdf
 
0-Slot02-Introduction-to-PFC.pdf
0-Slot02-Introduction-to-PFC.pdf0-Slot02-Introduction-to-PFC.pdf
0-Slot02-Introduction-to-PFC.pdf
 
KL1034 Lect1 Computer assembly.pdf
KL1034 Lect1 Computer assembly.pdfKL1034 Lect1 Computer assembly.pdf
KL1034 Lect1 Computer assembly.pdf
 
CSC204PPTNOTES
CSC204PPTNOTESCSC204PPTNOTES
CSC204PPTNOTES
 
Introduction to Computer and Programming - Lecture 01
Introduction to Computer and Programming - Lecture 01Introduction to Computer and Programming - Lecture 01
Introduction to Computer and Programming - Lecture 01
 
1 introduction-to-computer
1 introduction-to-computer1 introduction-to-computer
1 introduction-to-computer
 
Presentation on Computer Basics and architecture.pdf
Presentation on Computer Basics and architecture.pdfPresentation on Computer Basics and architecture.pdf
Presentation on Computer Basics and architecture.pdf
 
The computer by pradeep
The computer by pradeepThe computer by pradeep
The computer by pradeep
 
Unit I.ppt
Unit I.pptUnit I.ppt
Unit I.ppt
 
unit-i-computer-organization and architecture.ppt
unit-i-computer-organization and architecture.pptunit-i-computer-organization and architecture.ppt
unit-i-computer-organization and architecture.ppt
 
Lecture 1 Introduction.pptx
Lecture 1 Introduction.pptxLecture 1 Introduction.pptx
Lecture 1 Introduction.pptx
 
Comp hardware Introduction
Comp hardware IntroductionComp hardware Introduction
Comp hardware Introduction
 
01IntroductiontoInformationTechnology_special.ppt
01IntroductiontoInformationTechnology_special.ppt01IntroductiontoInformationTechnology_special.ppt
01IntroductiontoInformationTechnology_special.ppt
 
01 introduction to information technology
01 introduction to information technology01 introduction to information technology
01 introduction to information technology
 
computer organisation architecture.pptx
computer organisation architecture.pptxcomputer organisation architecture.pptx
computer organisation architecture.pptx
 
HARDWARE AND SOFTWARE.pptx
HARDWARE AND SOFTWARE.pptxHARDWARE AND SOFTWARE.pptx
HARDWARE AND SOFTWARE.pptx
 

More from educationfront

Personality Development in Islam
Personality Development in IslamPersonality Development in Islam
Personality Development in Islameducationfront
 
Discussing Fundamentals of C
Discussing Fundamentals of CDiscussing Fundamentals of C
Discussing Fundamentals of Ceducationfront
 
Introduction to Programming Languages
Introduction to Programming LanguagesIntroduction to Programming Languages
Introduction to Programming Languageseducationfront
 
Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)educationfront
 

More from educationfront (6)

Personality Development in Islam
Personality Development in IslamPersonality Development in Islam
Personality Development in Islam
 
Discussing Fundamentals of C
Discussing Fundamentals of CDiscussing Fundamentals of C
Discussing Fundamentals of C
 
C Programming
C ProgrammingC Programming
C Programming
 
Introduction to Programming Languages
Introduction to Programming LanguagesIntroduction to Programming Languages
Introduction to Programming Languages
 
Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)
 
Action research
Action researchAction research
Action research
 

Recently uploaded

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Fcp lecture 01

  • 1. CSC105- Fundamentals of Computer Programming Muhammad Adeel (PhD) Lecture 01
  • 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. 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. 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. 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. 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. 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. 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. 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. Fundamentals of Computer Concepts CSC141 Introduction to Computer Programming 10
  • 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. Parts of the Computer System • Building Blocks of computer system – Data (information) – User – Hardware – Software CSC141 Introduction to Computer Programming 12
  • 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. 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. HARDWARE : Major components of a Computer • • • • • INPUT DEVICES OUTPUT DEVICES CPU MEMORY STORAGE DEVICES CSC141 Introduction to Computer Programming 15
  • 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. 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. 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. HARDWARE : CPU; Central Processing Unit • Brain of the computer. • Two parts are: – ALU – CU CSC141 Introduction to Computer Programming 19
  • 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. HARDWARE : CPU; ALU Arithmetic Logic Unit CSC141 Introduction to Computer Programming 21
  • 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. 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. 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. 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. 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. 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. 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. 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. 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
  • 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. 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. 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. Computers for individuals -PCs Microcomputers – Workstation – Desktop computers – Notebook computers – Tablet computers – Handheld computers – Smart phones CSC141 Introduction to Computer Programming 35
  • 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. 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. 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