You are on page 1of 39

Introduction to Computer

Prof. Malaram Kumhar
Assistant Professor
CSE Department
Institute of Technology
Nirma University

Computer Generations

Computer Architecture

Computer hardware is the collection of physical elements that
constitutes a computer system.
Computer hardware refers to the physical parts or components of a
computer such as the monitor, mouse, keyboard, computer data
storage, hard drive disk (HDD), system unit (graphic cards, sound cards,
memory, motherboard and chips), etc. all of which are physical objects
that can be touched

Computer software, or simply software, also known as computer programs,
is the non-tangible component of computers.
It represents the set of programs that govern the operation of a computer
system and make the hardware run.
Computer software contrasts with computer hardware, which is the physical
component of computers.
Computer hardware and software require each other and neither can be
realistically used without the other.
System Software- To help the computer to perform specific functions for
itself. One major example is operating system. All computers require an
operating system. E.g. DOS ( Disk operating System, Windows 98, Windows
2000, Windows XP, Windows NT, Linux, UNIX etc.)

Bus and System Bus

In computer architecture, a bus (from the Latin omnibus, meaning "for
all") is a communication system that transfers data between components
inside a computer, or between computers.
Early computer buses were parallel electrical wires with multiple
connections, but the term is now used for any physical arrangement that
provides the same logical functionality as a parallel electrical bus.
Modern computer buses can use both parallel and bit serial connections.

Bus and System Bus

Hardware register, a placeholder for information about some hardware
Processor register, a component inside a central processing unit for
storing information
e.g. Program Counter (PC)
Stack Pointer (SP)


A central processing unit (CPU) (formerly also referred to as a central processor unit[) is
the hardware within a computer that carries out the instructions of a computer program by
performing the basic arithmetical, logical, and input/output operations of the system.
The term has been in use in the computer industry at least since the early 1960s. The
form, design, and implementation of CPUs have changed over the course of their history,
but their fundamental operation remains much the same.
A computer can have more than one CPU; this is called multiprocessing. All modern CPUs
are microprocessors, meaning contained on a single chip. Some integrated circuits (ICs) can
contain multiple CPUs on a single chip; those ICs are called multi-core processors. An IC
containing a CPU can also contain peripheral devices, and other components of a computer
system; this is called a system on a chip(SoC).
Two typical components of a CPU are the arithmetic logic unit (ALU), which performs
arithmetic and logical operations, and the control unit(CU), which extracts instructions
from memory and decodes and executes them, calling on the ALU when necessary.


Main Memory
Commonly known as random access memory, or just RAM
Holds instructions and data needed for programs that are currently
RAM is usually a volatile type of memory
Contents of RAM are lost when power is turned off

Classification of Main Memory

1. Random Access Memory (RAM)
2. Read Only Memory (ROM)

Random-Access Memory (RAM)

Static RAM (SRAM)

Each cell stores bit with a six-transistor circuit.

Retains data, as long as it is kept powered.
Relatively insensitive to disturbances such as electrical noise.
Faster (8-16 times faster) and more expensive (8-16 times more expensice as well) than DRAM.

Dynamic RAM (DRAM)

Each cell stores bit with a capacitor and transistor.

Data must be refreshed every 10-100 ms.
Sensitive to disturbances.
Slower and cheaper than SRAM.

Read only Memory(ROM)

ROM is used for storing programs that are PERMENTLY resident in
the computer and for tables of constants that do not change in value
once the production of the computer is completed
The ROM portion of main memory is needed for storing an initial
program called bootstrap loader, witch is to start the computer software
operating when power is turned on

Read only Memory(ROM)

Types of Rom:
PROM (Programmable read-only memory)
EPROM (Erasable programmable read-only memory)
EEPROM (Electrically erasable programmable read-only memory)

Secondary Memory
A nonvolatile storage medium
Contents retained while power is off
Hard disk drives are most common
Records data magnetically on a circular disk
Provides fast access to large amounts of data

USB flash memory devices

High capacity device plugs into USB port
Portable, reliable, and fits easily in a pocket

Input Devices
Accept data and instructions from the user or from another computer





Joy Stick

Light Pen

Web Camera

Touch Screen


Output Devices
Return Processed data back to the user or other computer system


Laser Printer

Ink Jet Printer


Dot Matrix Printer

Line Printer



compiler is a computer program (or set of programs) that transforms source
code written in a programming language (the source language) into another computer
language (the target language, often having a binary form known as object code). The
most common reason to transform source code is to create an executable program.
The name "compiler" is primarily used for programs that translate source code from
a high-level programming language to a lower level language (e.g., assembly
language or machine code).
If the compiled program can run on a computer whose CPU or operating system is
different from the one on which the compiler runs, the compiler is known as a crosscompiler.
A program that translates from a low level language to a higher level one is
a decompiler.
A program that translates between high-level languages is usually called a source-tosource compiler or transpiler.

A translating program that translates and executes the statements in
Assembler or compiler produce machine code as output, which is then executed
in a separate step
An interpreter translates a statement and then immediately executes the statement
Interpreters can be viewed as simulators



Figure 9.2 Compilation process


An assembler is a program that takes basic computer instructions and
converts them into a pattern of bits that the computer's processor can
use to perform its basic operations.
mov bx, ax
sub bx, 100
jge continue
mov ax, 100
continue: mul ax

High Level Languages / Low Level Languages

High Level Languages / Low Level Languages

In computer science, a high-level programming language is
a programming language with strong abstraction from the details of
the computer.
In comparison to low-level programming languages, it may use natural
language elements, be easier to use, or may automate (or even hide
entirely) significant areas of computing systems (e.g. memory
management), making the process of developing a program simpler and
more understandable relative to a lower-level language.
The amount of abstraction provided defines how "high-level" a
programming language is.

High Level Languages / Low Level Languages

In computer science, a low-level programming language is
a programming language that provides little or no abstraction from a
computer's instruction set architecture.
Generally this refers to either machine code or assembly language.
The word "low" refers to the small or nonexistent amount
of abstraction between the language and machine language; because of
this, low-level languages are sometimes described as being "close to the

Operating System(OS)
Operating System is a software, which makes a computer to actually
It is the software the enables all the programs we use.
The OS organizes and controls the hardware.

OS acts as an interface between the application programs and the

machine hardware.
Examples: Windows, Linux, Unix and Mac OS, etc.,

What OS does?
An operating system performs basic tasks such as,

controlling and allocating memory,

prioritizing system requests,
controlling input and output devices,
facilitating networking and
managing file systems.

Structure of Operating System:

Application Programs
System Programs
Software (Operating System)

Structure of Operating System (Contd):

The structure of OS consists of 4 layers:
1. Hardware
Hardware consists of CPU, Main memory, I/O Devices, etc,
2. Software (Operating System)
Software includes process management routines, memory management
routines, I/O control routines, file management routines.

Structure of Operating System (Contd):

3. System programs
This layer consists of compilers, Assemblers, linker
4. Application programs
This is dependent on users need. Ex. Railway
reservation system, Bank database management etc.,

Types of Computers
Computer can be classified based of their:
1. Application: Digital, Analog, Hybrid
2. Purpose: General and Specific Purpose
3. Size: Micro, Mini, Mainframe, Super