0% found this document useful (0 votes)
1 views13 pages

Chapter 1, Computer

The document provides an overview of computer systems, detailing the components of hardware and software, including the Central Processing Unit (CPU), input and output devices, and the distinction between system and application software. It explains the different generations of programming languages, from machine language to high-level languages, and outlines the processes of compilation and execution. Key features and characteristics of software, as well as the differences between interpreters and compilers, are also discussed.

Uploaded by

077bce187.ujwal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views13 pages

Chapter 1, Computer

The document provides an overview of computer systems, detailing the components of hardware and software, including the Central Processing Unit (CPU), input and output devices, and the distinction between system and application software. It explains the different generations of programming languages, from machine language to high-level languages, and outlines the processes of compilation and execution. Key features and characteristics of software, as well as the differences between interpreters and compilers, are also discussed.

Uploaded by

077bce187.ujwal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

UNIT 1

Computer
A computer is a programmable electronic device that accepts data and
instruction as an input from the user , executes instructions , processes
data and provides useful information as output. The electronic device is
known as hardware and the set of instruction is known as software.

Computer Hardware
Computer hardware is the collection of physical parts of a computer
system. This includes the computer case, monitor, keyboard, and mouse. It
also includes all the parts inside the computer case, such as the hard disk
drive, motherboard, video card, and many others. Computer hardware is
what you can physically touch.

Block Diagram of Computer system

Mainly computer system consists of three parts, that are the central
processing unit (CPU), Input Devices, and Output Devices. The Central
Processing Unit (CPU) is divided into two parts again: arithmetic logic unit
(ALU) and the control unit (CU).

A large amount of data is stored in the computer memory with the help of
primary and secondary storage devices. The CPU is like the heart/brain of
the computer. The user does not get the desired output, without the
necessary option taken by the CPU. The Central processing unit (CPU) is
responsible for the processing of all the instructions which are given by the
user to the computer system.

The data is entered through input devices such as the keyboard, mouse,
etc. This set of instruction is processed by the CPU after getting the input
by the user, and then the computer system produces the output. The
computer can show the output with the help of output devices to the user,
such as monitor, printer, etc.

Input Unit

● It is an external device that is connected to the CPU.


● It is used to feed data and instructions for solving the problem at
hand.
● The control unit sends signal to this unit to receive data and
instructions from the user, which is communicated to the CPU.
● Examples: Keyboard, Mouse, Joystick, Scanner, Trackball, Light Pen,
Touch screen, Touch pad, Bar code reader, Microphone, etc.

Output Unit

● This is used to display the result obtained after execution of a


program.
● Whenever the user wants the output from the computer, the control
unit sends signal to this unit to be ready to accept processed data
from memory and display it.
● Examples: Monitor, Printer, Scanner, Plotter, Speaker, Headphones,
Fax, etc.
CPU (Central Processing Unit)

● CPU fetches program instructions from RAM (input), interprets and


processes it (execution) and then sends back the computed results
so that the relevant components can carry out the instructions.

It is further divided into two components:


1. ALU (Arithmetic & Logical Unit).
2. CU (Control Unit).

ALU (Arithmetic & Logical Unit)

● All calculations are carried out in the ALU.


● It consists of electronic circuitry which performs the basic arithmetic
operations like +, -, *, /. It also consists of electronic circuitry that
performs logical operations are gives us results in the form of true or
false.

CU (Control Unit)

● It controls and coordinates the activities of all the units of a computer


system.
● It acts as the central nervous system of the computer.
● It controls and times signals to various units to coordinate for the
specific operation.

MU (Memory Unit)

● This is a storage device of the computer.


● It stores the data and instructions fed by the user and also the result
which is produced after processing the same data.
● There are two types of memory, one is called volatile memory and the
other is nonvolatile memory. In volatile memory, information is
retained as long as power is supplied to the chips. In non-volatile
memory, information is retained, even though power is not supplied.

SOFTWARE

Software is a set of instructions, data or programs used to operate


computers and execute specific tasks. Opposite of hardware, which
describes the physical aspects of a computer, the software is a generic
term used to refer to applications, scripts and programs that run on a
device. Software can be thought of as the variable part of a computer and
hardware the invariable part.

Software is divided into:

● Application software, or user downloaded programs that fulfill a want


or need.
● System software, which includes operating systems and any program
that supports application software.

System Software

System software is a type of computer program that is designed to run a


computer’s hardware and application programs. If we think of the computer
system as a layered model, the system software is the interface between
the hardware and user applications. The operating system (OS) is the
best-known example of system software. The OS manages all the other
programs in a computer.

Other examples of system software include:


● The BIOS (basic input/output system) gets the computer system
started after you turn it on and manages the data flow between the
operating system and attached devices such as the hard disk,
video adapter, keyboard, mouse and printer.
● The boot program loads the operating system into the computer's
main memory or random access memory (RAM).
● An assembler takes basic computer instructions and converts
them into a pattern of bits that the computer's processor can use
to perform its basic operations.
● A device driver controls a particular type of device that is
attached to your computer, such as a keyboard or a mouse. The
driver program converts the more general input/output instructions
of the operating system to messages that the device type can
understand.

Application Software

An application is any program, or group of programs, that is designed for


the end user. Applications software (also called end-user programs) include
such things as database programs, word processors, Web browsers and
spreadsheets.
Types of Application Software:
General Purpose Software: Word Processing, Spreadsheet
Specific Software: Billing Software

General Features or Characteristics of Software


Software characteristics are classified into six major components.
• Functionality: Refers to the degree of performance of the software
against its intended purpose.
• Reliability: Refers to the ability of the software to provide desired
functionality under the given conditions.
• Usability: Refers to the extent to which the software can be used with
ease.
• Efficiency: Refers to the ability of the software to use system resources
in the most effective and efficient manner.
• Maintainability: Refers to the ease with which modifications can be made
in a software system to extend its functionality, improve its performance, or
correct errors.
• Portability: Refers to the ease with which software developers can
transfer software from one platform to another, without (or with minimum)
changes. In simple terms, it refers to the ability of software to function
properly on different hardware and software platforms without making any
changes in it.

In addition to the above mentioned characteristics, robustness and integrity


are also important. Robustness refers to the degree to which the software
can keep on functioning in spite of being provided with invalid data while
integrity refers to the degree to which unauthorized access to the software
or data can be prevented.

Difference between system software and application software

Basis for comparison System software Application software


Basic System Software Application Software,
manages system when run, perform
resources and provides specific tasks, they are
a platform for designed for.
application software to
run
Language System Software is Application Software is
written in a low-level written in a high-level
language, i.e. language like Java,
assembly language. C++, .net, VB, etc.
Run System Software starts Application Software
running when the runs as and when the
system is turned on, user requests.
and runs till the system
is shut down.
Requirement A system is unable to Application software is
run without system even not required to
software. run the system; it is
user specific.
Purpose System Software is Application Software is
general-purpose specific-purpose.
Example Operating system Microsoft Office,
Photoshop, Animation
Software, etc.

Generation of programming languages

A low-level programming language is a programming language that


provides little or no abstraction from a computer's microprocessor. A
high-level programming language is a programming language that is more
abstract, easier to use, and more portable across platforms.

Programming languages have been developed over the year in a phased


manner. Each phase of developed has made the programming language
more user-friendly, easier to use and more powerful. Each phase of
improved made in the development of the programming languages can be
referred to as a generation. The programming language in terms of their
performance reliability and robustness can be grouped into five different
generations:

1. First generation languages (1GL)


2. Second generation languages (2GL)
3. Third generation languages (3GL)
4. Fourth generation languages (4GL)
5. Fifth generation languages (5GL)

FIRST GENERATION OF PROGRAMMING LANGUAGE


The first generation of programming language, or 1GL, is machine
language. Machine language is a set of instructions and data that a
computer's central processing unit can execute directly. Machine language
statements are written in binary code, and each statement corresponds to
one machine action.

SECOND GENERATION PROGRAMMING LANGUAGE


The second generation programming language, or 2GL, is assembly
language. Assembly Language is the human-readable notation for the
machine language used to control specific computer operations. An
assembly language programmer writes instructions using symbolic
instruction codes that are meaningful abbreviations or mnemonics.

An assembler is a program that translates assembly language into machine


language.
THIRD GENERATION PROGRAMMING LANGUAGE
The third generation of programming language, 3GL, or procedural
language uses a series of English-like words, which are closer to human
language, to write instructions.
High-level programming languages make complex programming simpler
and easier to read,write and maintain. Programs written in a high-level
programming language must be translated into machine language by a
compiler or interpreter. PASCAL, FORTRAN, BASIC, COBOL, Cand C++
are examples of third generation programming languages.

Difference between compiler and interpreter

Interpreter Compiler
Interpreter translates just one statement Compiler scans the entire program and
of the program at a time into machine translates the whole of it into machine
code. code at once.

An interpreter takes very less time to A compiler takes a lot of time to analyze
analyze the source code. However, the the source code. However, the overall
overall time to execute the process is time taken to execute the process is
much slower. much faster.

An interpreter does not generate an A compiler always generates an


intermediary code. Hence, an interpreter intermediary object code. It will need
is highly efficient in terms of its memory. further linking. Hence more memory is
needed.
Keeps translating the program A compiler generates the error message
continuously till the first error is only after it scans the complete program
confronted. If any error is spotted, it stops and hence debugging is relatively harder
working and hence debugging becomes while working with a compiler.
easy.

Interpreters are used by programming Compliers are used by programming


languages like Ruby and Python for languages like C and C++ for example.
example.

FOURTH GENERATION PROGRAMMING LANGUAGE

The fourth generation programming language or non-procedural language,


often abbreviated as4GL, enables users to access data in a database. A
very high-level programming language isoften referred to as goal-oriented
programming language because it is usually limited to a veryspecific
application and it might use syntax that is never used in other programming
languages.SQL, NOMAD and FOCUS are examples of fourth generation
programming languages.

FIFTH GENERATION PROGRAMMING LANGUAGE

The fifth generation programming language or visual programming


language is also known as natural language. Provides a visual or graphical
interface called a visual programming environment, for creating source
codes. Fifth generation programming allows people to interact with
computers without needing any specialized knowledge. People can talk to
computers andthe voice recognition systems can convert spoken sounds
into written words. Prolog and Mercury are the best known fifth-generation
languages

Program compilation and execution process

Generally coding is done in high level language or low level language


(assembly language). For the computer to understand these languages,
they must be translated into machine level language. The translation
process is carried out by a compiler/interpreter (for high level language) or
an assembler (for assembly language program). The machine language
code thus created can be saved and run immediately or later on.

In an interpreted program, each program statement is converted into


machine code before program is executed. The execution occurs
immediately one statement at a time sequentially. BASIC is one of the
frequently used interpreted language. In contrast to interpreter, a compiler
converts a given source code into object code. Once an object code is
obtained, the compiled programs can be faster and more efficient than
interpreted programs.

Compilation Process
A source code must go through several steps before it becomes an
executable program. In the first step the source code is checked for any
syntax errors. After the syntax errors are traced out a source file is passed
through a compiler which first translates high level language into object
code (A machine code not ready to be executed). A linker then links the
object code with pre-compiled library functions, thus creating an executable
program. This executable program is then loaded into the memory for
execution. General compilation process is shown in Figure below:

You might also like