Different electronic and mechanical components used in a computer are prepared by companies. When these physical components are set properly, they function all together following the standardized instructions. These physical and electronic parts of the computer which can be seen are collectively called hardware.

In addition, some coded information or programmes are fed into the hardware of computer. This enables the computer to carryout different functions. Software is like current which flows inside the wire but invisible to anybody. But its effects can be realized. Block diagram of a computer is shown Hardware.

There are different parts in the hardware of a computer: input unit, central processing device, and output unit.

(a) Input Devices:

ADVERTISEMENTS:

Data and instructions are fed in a computer by using the input devices. Some common input devices are given in.

(b) Central Processing Unit (CPU):

It is the main unit of the computer. It is responsible for data processing. Since 1980s the arithmetic and logic unit (ALU) and control unit (collectively called a central processing unit or CPU have typically been located on a single integrated circuit called a microprocessor. The functioning of such a computer is in principle quite straightforward.

Instructions, like data, are represented within the computer as binary code, a base two system of counting. For example, the code for one kind of copy operation in the Intel X86 line of microprocessors is 10110000.

ADVERTISEMENTS:

The particular instruction set that a specific computer supports is known as that computer’s machine language. It makes much easier to run existing software on a new machine by using an already-popular machine language.

Consequently, in markets where commercial software availability is important, suppliers have converged on one or a very small number of distinct machine languages.

(i) Memory:

It a device that accept data which holds and deliver them when required. This type of memory is also called as ‘primary storage section’ (PSS). Typically, on each clock cycle, the computer fetches instructions and data from its memory.

ADVERTISEMENTS:

The instructions are executed, the results are stored, and the next instruction is fetched. This procedure repeats until a halt instruction is encountered.

A computer stores a piece of information in a location or cell called ‘byte’. Any location has an address for reference. Memory addressing is the addressing cell (or location) in memory by using number. For example, if a memory has ‘n’ cells, it will have addresses 0 to n-1. The size of all cells in a memory is equal.

There are different types of memories as given below:

1. Random Access Memory (RAM):

ADVERTISEMENTS:

It stores data and programme temporarily. It contains the data of operating system, (basic) software and the other application programmes. Moreover data gets lost at the time of power failure. Also, when new data are fed, the previous data get erased i.e. it provides volatile storage of data.

2. Read Only Memory (ROM):

At the time of manufacturing this device, information’s are burnt in the ROM chip. Therefore, this burnt data cannot be changed over-written. Hence, it provides a non-volatile storage of data i.e. at the time of power failure, data are not erased.

Such programmes which are always needed for running the computer are burnt into ROM. ROM always contain the ‘bootstrap loader’. Therefore, it loads operating system into the memory and starts the computer when switched on.

ADVERTISEMENTS:

3. Programmable Read Only Memory (PROM):

Though the data of ROM cannot be changed, yet in special cases programming can be done by using special writing circuits. Then it is called PROM.

4. Erasable Programmable Read Only Memory (EPROM):

In PROM data cannot be changed. But EPROM are constructed in such a way that the data can be altered by passing through a strong ultra violet rays.

ADVERTISEMENTS:

5. Cache Memory (Buffers):

It is a very high speed memory which stores temporarily some programmes taking from main memory. It is faster but expensive.

(ii) Control Unit:

As the term denotes, control unit controls all the interconnected operations.

It selects, interprets and directs the executed programmes. Thus, it maintains the order and ordination of the whole system. This unit does not process the data but acts as central nervous system of the computer.

However, it controls the flow of data from the main storage as well within the storage according to the programmes fed in computer. It executes the instructions of the programme one by one till completion of processing. It directs the sections to execute the work successfully.

(iii) Arithmetic and Logica Unit (ALU):

The ALU is the heart of the computer. It is capable of performing two classes of basic operations: (i) arithmetic operations e.g. adding or subtracting two numbers together [the set of arithmetic operations may be very limited; indeed, some designs do not directly support multiplication and division operations (instead, users support multiplication and division through programes that perform multiple additions, subtractions, and other digit manipulations), and (ii) the second comparison operations which given two numbers, determining if they are equal, or if not equal then which is larger for example, if A>B, then print A],

(iv) Microprocessor:

It is a special chip made for functioning of control unit and ALU. Also it acts as central processing unit of the computer. The companies that make microprocessor are : Intel, Zilog, Motorola, etc. Each microprocessor is marked with a unique number and name of the manufacturers as given below:

Intel 8085 (8 bit) Motorola 68020 (8 bit)

Intel 80286 (16 bit) Motorola 68030 (16 bit)

Intel 80336 (32 bit) Motorola 68040 (32 bit)

(v) Numeric Co-processor:

Basically, CPU performs arithmetic and logical operations as well as entertains the request for data and controls the traffic. Numeric co-processor is a chip basically designed for carrying out the numeric calculations. It works parallel to microprocessor, it present in a computer.

(c) Secondary Storage Media:

As described earlier that memory provides volatile storage of data i.e. data are lost or erased with power failure or other reasons. To get rid off such problems, the secondary storage media are also available with computers, for example floppy disk, compact disk (CD), hard disk drives, etc.

Most commonly used floppies are 5.25 inch floppies.Hard disk can store more information than a floppy disk. Basically it is a multiple disk packsystem. The whole disk is packed an fixed in the computer. The hard disks are generally of 40 MB, 80 MB, 100 MB, 120 MB or upto 1GB.

(d) Output Unit:

After processing the data, finally computer provides the results. The users read the results by using output devices, for example monitor and printer.

(i) Monitor:

A monitor is called visual display unit. It acts like television on the screen of which images can be seen. Hence, the image made up of small pixels can be visualised on the screen of a monitor. There are different types of monitors available in market which are made by different companies.

(ii) Printer:

The images appearing on the screen of a monitor can be printed on paper. There are different types of printers of different colours and characteristics such as dotmatrix printer, line printer, ink jet printer, laser jet printer, etc. These printers are made by different companies.

2. Software’s:

It is an alternative term for computer programmes. It is a more inclusive phrase and includes all the ancillary material accompanying the programmes needed to do useful tasks.

For instance, a video game includes not only the programme itself, but also data representing the pictures, sounds, and other material needed to create the virtual environment of the game. A computer application is a piece of computer software provided to many computer users, often in a retail environment.

Going from the extremely simple capabilities of a single machine language instruction to the myriad capabilities of application programmes means that many computer programmes are extremely large and complex. A typical example is Windows XP, created from roughly 40 million lines of computer code in the C++ programming language.

There are many projects of even bigger scope which are built by large teams of programmers. The management of this enormous complexity is key to making such projects possible.

Programming languages and programming practices enable the task to be divided into smaller and smaller subtasks until they come within the capabilities of a single programmer in a reasonable period.

Nevertheless, the process of developing software remains slow, unpredictable, and error-prone; the discipline of software engineering has attempted, with some success, to make the process quicker and more productive and improve the quality of the end product.

A problem or a model is computational if it is formalized in such way that can be transformed to the form of a computer programme.

Computationality is the serious research problem of humanistic, social and psychological sciences, for example, modern systemic, cognitive and socio- cognitive approaches develop different attempts to the computational specification of their soft knowledge.

Types of Software:

The term “software” was first used by John W. Tukey in 1957. Software is the programmes that enable a computer to perform a specific task, as opposed to the physical components of the system (hardware).

This includes application software (such as a word processor, which enables a user to perform a task), and system software (such as an operating system, which enables other software to run properly, by interfacing with hardware and with other software).

Computer software can be classified into three categories: system software, programming software and application software.

(a) System Software:

A collection of programmes (instructions) designed to operate, control and extend the ability to process the computer itself is called software. Basically the manufacturers prepare these programmes and supply to the users. The users execute these programmes whenever required. There are different categories of system software as given below:

(i) Operating System:

All the resources and operations of a computer are managed by the operating system automatically. It also controls the functioning of hardware.

(ii) Firmware:

Firmware is the programmes which are written in the ROM of the computer. These are executed whenever needed by the users.

(iii) Languages/Compilers:

Computer understands the language of only machines i.e. 0 and 1. This is called binary number system or binary digits. The special programmes written are translated by the compilers from high level language instructions in the machine language instruction. Following are some of the languages:

(a) BASIC (Beginners All Purpose Symbolic Instruction Code)

(b) COBOL (Common Business Oriented Language)

(c) FORTRAN (Formula Translator)

(iv) Utilities:

The facilities for sorting and merging of files are provided by utilities. Sorting is a process to re-arrange the contents of a file according to some particular order. Combining of two files into one file is called merging. Sorting/merging utilities are valuable for processing of business data.

(v) Programme Productivity Tools:

There are several powerful tools which do not need the programming knowledge. Some of the important tools are:

i. Data Base Management Software (DBase)

ii. Data Communication Software (D-Link)

iii. Desk Top Publishing Software (Page maker, CorelDraw)

iv. Graphic Software (Paint, brush, PM4)

v. Spread Sheet software (Lotus)

vi. Word Processing Software (Word Star)

(b) Programming Software:

It provides tools to assist a programmer in writing computer programmes and software using different programming languages in a more convenient way. The tools include text editors, compilers, interpreters, linkers, debuggers, and so on.

An integrated development environment (IDE) merges those tools into a software bundle, and a programmer may not need to type multiple commands for compiling, interpreter, debugging, tracing, and etc., because the IDE usually has an advanced graphical user interface, or GUI.