Module - 01 - Computer Fundamentals
Module - 01 - Computer Fundamentals
Computer Hardware
Computer: Computer is a programmable m/c that receives input, manipulates
data or information, provides and stores output in a useful format. It is
programmed device with a set of instructions to perform specific tasks and
generate results at a very high speed.
The internal architectural design of computers differs from one system model to
another. However, the basic organization remains the same for all computer
systems. The following five units correspond to the five basic operations
performed by all computer systems.
1. Input Unit:
Data and instructions must enter the computer system before any computation
can be performed on the supplied data. The input unit that links the external
environment with the computer system performs this task. Data and instructions
enter input units in forms that depend upon the particular device used. For
example, data is entered from a keyboard in a manner similar to typing, and this
differs from the way in which data is entered through a mouse, which is another
type of input device. However, regardless of the form in which they receive their
inputs, all input devices must provide a computer with data that are transformed
into the binary codes that the primary memory of the computer is designed to
accept.
An input unit performs the following functions:
1. It accepts (or reads) the list of instructions and data from the outside world.
2. It converts these instructions and data in computer acceptable format.
3. It supplies the converted instructions and data to the computer system for
further processing.
2. Output Unit:
The job of an output unit is just the reverse of that of an input unit. It supplied
information and results of computation to the outside world. Thus it links the
computer with the external environment. As computers work with binary code,
the results produced are also in the binary form. Hence, before supplying the
results to the outside world, it must be converted to human acceptable (readable)
form. This task is accomplished by units called output interfaces.
In short, the following functions are performed by an output unit.
1. It accepts the results produced by the computer which are in coded
form and hence cannot be easily understood by us.
2. It converts these coded results to human acceptable (readable)
form.
for memory addressing, data manipulation and processing. Some of the registers
are general purpose and some are reserved for certain functions. It is a high-speed
memory which holds only data from immediate processing and results of this
processing. If these results are not needed for the next instruction, they are sent
back to the main memory and registers are occupied by the new data used in the
next instruction.
6. Control Unit:
The control unit directs and controls the activities of the internal and external
devices. It interprets the instructions fetched into the computer, determines what
data are needed, where it is stored, where to store the results of the operation, and
sends the control signals to the devices involved in the execution of the
instructions. By selecting, interpreting, and seeing to the execution of the program
instructions, the control unit is able to maintain order and directs the operation of
the entire system. It manages and coordinates the entire computer system. It
obtains instructions from the program stored in main memory, interprets the
instructions, and issues signals that cause other units of the system to execute
them.
Memory Organization: A memory unit is the collection of storage units or
devices together. The memory unit stores the binary information in the form of
bits. Generally, memory/storage is classified into 2 categories:
Volatile Memory: This loses its data, when power is switched off.
Non-Volatile Memory: This is a permanent storage and does not
lose any data when power is switched off.
Read-only memory: ROM is used for storing programs that are permanently
resident in the computer and for tables of constants that do not change in value
once the production of the computer is completed.
Cache Memory: The data or contents of the main memory that are used again and
again by CPU, are stored in the cache memory so that we can easily access that
data in shorter time.
Whenever the CPU needs to access memory, it first checks the cache memory. If
the data is not found in cache memory then the CPU moves onto the main
memory. It also transfers block of recent data into the cache and keeps on deleting
the old data in cache to accommodate the new one.
Computer Software
Software: Computer software is a collection of computer programs and related
data that provide the instructions for telling a computer what to do and how to do
it. In other words, software is a conceptual entity which is a set of computer
programs, procedures, and associated documentation concerned with the
operation of a data processing system. Software is a set of programs, procedures,
algorithms and its documentation.
Examples of software programs or applications would be the:
Operating System (DOS, Windows, UNIX, MacOS and various others),
Word processor (typing letters),
Spreadsheet (financial info),
Database (inventory control and address book),
Graphics program, Internet Browser,
Email and many others.
Types of Software: Basically there are two types of software.
System software
Application software
System Software: System software is a set of one or more programs, designed
to control the operation and extend the processing capability of a computer
system.
It includes a combination of the following:
a. Device drivers
b. Operating systems
c. Servers
d. Utilities
e. Window systems
Function of system software:
1. Supports the development of other application software.
2. Supports the execution of application software.
3. Communicates with and controls the operation of peripheral devices such
as printer, disk, tape etc.
Example of machine
language (binary) for the
Text "Hello World".
01001000 01100101
01101100 01101100
01101111 00100000
01010111 01101111
01110010 01101100
01100100
High level language: High level programming language is a language that allows
you to tell a computer to do something, but in a syntax that is easy and intuitive
for you to understand. It is a totally different language from what a computer
understands.
Advantages of High level language:
1. High level languages are programmer friendly. They are easy to write,
debug and maintain.
2. It provides higher level of abstraction from machine languages.
3. It is machine independent language.
4. Easy to learn.
5. Less error prone, easy to find and debug errors.
6. High level programming results in better programming productivity.
Disadvantages of High level language:
1. It takes additional translation times to translate the source to machine
code.
2. High level programs are comparatively slower than low level programs.
3. Compared to low level programs, they are generally less memory
efficient.
4. Cannot communicate directly with the hardware.
Low level language: Low level programming language is only a slight
abstraction from machine code (if any abstraction at all). It’s much less human
readable, yet easier and faster for the computer to understand.
Advantages of low level languages:
1. Programs developed using low level languages are fast and memory
efficient.
2. Programmers can utilize processor and memory in better way using a low
level language.
3. There is no need of any compiler or interpreters to translate the source to
machine code. Thus, cuts the compilation and interpretation time.
4. Low level languages provide direct manipulation of computer registers
and storage.
5. It can directly communicate with hardware devices.
They are faster than high level They are comparatively slower.
language.
Low level languages are memory High level languages are not memory
efficient. efficient.
Low level languages are difficult to High level languages are easy to learn.
learn.
They are machine dependent and are They are machine independent and
not portable. portable.
They are more error prone. They are less error prone.
Reference Book: