Computer software is a general term used to describe a collection of
computer programs, procedures and documentation that perform some task on a
computer system. The term includes application software such as word processors
which perform productive tasks for users, system software such as
operating systems,
which interface with hardware to provide the necessary services for application software,
and middleware which controls and co-ordinates distributed systems.
The term "software" is sometimes used in a broader context to describe any electronic
media content which embodies expressions of ideas such as film, tapes, records, etc.
Computer software is so called to contrast with computer hardware, which encompasses
the physical interconnections and devices required to store and execute (or run) the software.
In computers, software is loaded into RAM and executed in the central processing unit.
At the lowest level, software consists of a machine language specific to an individual
processor. A machine language consists of groups of binary values signifying processor
instructions which change the state of the computer from its preceding state.
Software is an ordered sequence of instructions for changing the state of the computer
hardware in a particular sequence. It is usually written in high-level programming languages
that are easier and more efficient for humans to use (closer to natural language) than machine
language. High-level languages are compiled or interpreted into machine language object code.
Software may also be written in an assembly language, essentially, a mnemonic representation
of a machine language using a natural language alphabet. Assembly language must be assembled
into object code via an assembler.
The term "software" was first used in this sense by John W. Tukey in 1958. computer science
and software engineering, computer software is all computer programs. The theory that is
the basis for most modern software was first proposed by Alan Turing in his 1935 essay
Computable numbers with an application to the Entscheidungsproblem.
|
|