Problem Solving using Computers (ICS-111)
TEXT BOOKS and REFERENCES
Text Books:
1. E. Balaguruswamy, “Programming in ANSI C”, Tata McGraw Hill, 6 th
Edition.
2. E. Balaguruswamy, “Object Oriented Programming with C++”, Tata
McGraw Hill, 5th Edition 2012.
References:
1. The Complete Reference – Fourth edition , Herbert Schildt
2. Object Orented Programming in C++ , Robert Lafore , 4 Edition.
Chapter - 1
Introduction to Computers
Objectives
To learn and appreciate the following concepts
Basic introduction, concepts
Functionality of a computer
Memory system and its types
Input – Output devices
Bus technology
Overview of Application Software
Overview of System Software
Overview of Operating Systems
Assemblers Compilers and Interpreters
Introduction to computers
A computer is an electronic device, operating
under the control of instructions (Software) stored
in its own memory unit.
It can accept data (Input), manipulate data
(Process), and produce information (Output) from
the processing.
Generally, the term “computer” is used to
describe a collection of devices that function
together as a system.
5
Key characteristics of a computer
Speed Faster processing
Accuracy The quality or state of being correct or precise.
Diligence persistent and determined effort to complete a task
Storage capability Permanent storage & non-permanent
storage
Versatility Having varied uses or serving many functions
6
Various Computing devices
7
What Does A Computer Do?
Computers can perform four general operations :
• Input
• Processing / Computation
• Storage
• Output
8
Data and Information
Data – Collection of raw facts, figures and symbols.
Computers manipulate/processes data to create
information.
Information is data that is organized, meaningful,
and useful.
During the output Phase, the information that has
been created is put into some form, such as a
printed report.
9
Instruction to computer
Program or software - a detailed list of
instructions that tells the computer what exactly
to do.
Before processing a specific job, the
corresponding instructions (program) to do that
job must be stored in memory.
Once the program is stored in memory the
computer can start the operation by executing
the program instructions one after the other.
10
Block Diagram of a Computer
11
Computer peripherals
Input, output, or auxiliary storage devices are
attached to a computer
Input Devices include keyboard and mouse,
scanners.
Output Devices include printers, video display,
LCD screens.
Auxiliary Devices include disk drives, CD-ROM and
DVD-ROM drives, modems, and digital cameras.
12
Input devices
An external device connected to the CPU, used to
feed data and instructions for solving the problem
at hand
Mouse
Keyboard
Joystick
Light pen
Trackball
Optical Scanner
Voice input
13
Output devices
An external device connected to the CPU that is
used to display the results.
Monitor
printer
plotter
plasma display panels
LCD displays
voice output
14
System unit
The Central Processing Unit and Memory
Unit are together called as System Unit.
Data and instructions received from the
input device are stored and processed in the
System unit.
15
Central Processing Unit (CPU)
The data and instructions received from the input
device are processed in this unit.
It is divided two functional units.
Control Unit (CU)
Arithmetic and Logic Unit (ALU)
16
Arithmetic and Logical unit
Performs arithmetic and logical operations:
Example:
arithmetic(+,-,*,/ etc..) and
logical (AND, OR, NOT, <,= etc..) operations
17
Control unit
Controls the order in which your program
instructions are executed.
Functions of CU:
Fetches data and instructions to main memory
Interprets these instructions
Controls the transfer of data and instructions to
and from main memory
Controls input and output devices.
Overall supervision of computer system
18
Computer memory classifications
The computer memory is classified into:
• Main memory / Primary storage memory
Eg. RAM, ROM
• Secondary memory / Auxiliary storage memory
Eg. Magnetic tapes, magnetic disks,
• Cache memory
19
Memory unit
It is any storage device where the data and
instructions fed by the user are stored.
It is an ordered sequence of storage cells, each
capable of holding a piece of information
Each cell has its own unique address
20
Memory unit
The computer memory is measured in terms of
bits, bytes and words.
A bit is a binary digit either 0 or 1.
A byte is unit of memory and is defined as
sequence of 8 bits.
The word can be defined as a sequence of
16/32/64 bits or 2/4/8 bytes respectively depending
on the machine architecture.
21
Main memory / Primary memory
It is the place where the data and instructions of the
program currently being executed are stored.
High speed.
This is a temporary memory because the data
and instructions stored here get erased when
the power goes off.
It is a semiconductor memory and measured in
terms of megabytes and gigabytes.
Eg. RAM and ROM
22
RAM & ROM
RAM stands for Random Access Memory
It is the read and write memory.
Any memory location can be accessed directly without
accessing it sequentially.
Hence it is called as random access memory.
During power failure the information stored in it will be
erased.
It is also called as volatile memory.
ROM stands for Read Only Memory
It is a permanent memory and non-volatile.
The contents in ROM can not be changed
It stores mainly stored program and basic input output
systems programs.
23
Classifications of ROM
PROM :Programmable Read Only Memory
It is a variation of ROM.
The contents of this memory are decided by the user
These contents can not be erased once they are written to
it.
EPROM : Erasable Programmable Read Only Memory
It is a modification to PROM.
Contents stored can be erased by exposing it to Ultra Violet
Light source.
EEPROM: Electrically Erasable Programmable Read Only
Memory
The contents stored in this can be erased electrically.
[ Flash, micro processors etc.]
24
Secondary Storage Devices
It is made up of magnetic material and stores large
amount of information for long time.
Low speed.
Non volatile memory
Holds programs not currently being executed.
Eg. Magnetic tapes, magnetic disks, compact disks
etc.
25
Cache memory
It is a High speed memory and placed between the
CPU and the main memory.
Users can not access this memory.
It stores the data and instructions currently to be
executed.
More costlier but less capacity than main memory.
26
Computer BUS
• Computer components are connected by a bus.
• A bus is a group of parallel wires that carry control
signals and data between components
27
Classifications of software
Software
Application System
Software Software
28
System software
• System software consists of programs that
manages the computer resources.
• Divided into three classes
– Operating System
– Utility software
– System Development software
29
30
Operating system
Operating System is an integrated collection of programs
which make the computer operational and help in
executing user programs.
It acts as interface between the man and machine.
It manages the system resources like memory, processors,
input-output devices and files.
Types:
Single user [DOS] and Multi user OS [Windows XP, Unix],
Real time OS [Windows CE, QNX],
Single-tasking [DOS] and Multi-tasking [Unix],
Distributed OS [Amoeba],
Embedded OS [Windows CE, Symbian OS] etc.
31
An operating system is..
• A program that runs on the “raw” hardware and supports
resource sharing
• Operating System hides the messy details which must be
performed from the users
• Manages the hardware resources
– Each program gets time with the resource
– Each program gets space on the resource
• Manages different goals:
– Use hardware efficiently and give maximum
performance to each user.
32
Application software
• Application Software is directly
responsible for helping users solve their
problems.
• For example
• Word processing
• Electronic spreadsheet
• Database
• Presentation graphics
33
Computer Languages
• Machine Language- The only programming language
available in earlier days
– Consists of only 0’s and 1’s; e.g.:- 10101011
• Symbolic language or Assembly language-
– symbols or mnemonics used to represent
instructions
– e.g. ADD X,Y; Add the contents of y to x
• High-level languages- English like language using which
the programmer can write programs to solve a problem.
– e.g.: C, C++, C#, Fortran, BASIC, Pascal etc. 34
Machine level vs High level languages
35
Assembly language Vs High level language
36
Language Translators
• Compiler : It translates a high-level language program into
machine language program at a time.
e.g.:- C, C++ compilers.
• Interpreter : It translates one statement of a high-level
language program into machine language at a time and
executes it.
e.g.:- Basic Interpreters, Java Interpreters.
• Assembler : is a program which translates an assembly
language program into machine language.
e.g.:- TASM(Turbo ASseMbler), MASM.
37
Compiler Vs Interpreter
38
Summary
Introduction to Computers
Block Diagram of Computer
Computer Memory Classification
Software classifications
Overview of Application Software
Overview of System Software
Overview of Operating Systems
Functionality of Assemblers Compilers and
Interpreters
39