|
Software
The various programs by which a computer controls aspects of its operations, such as those for translating data from one form to another more...
Home
Brass
DJ Gear & Lighting
Electronic
Equipment
Guitar
Harmonica
Instruction Books, CDs,...
Keyboard, Piano
Other Instruments
Percussion
Pro Audio
Cables
Computer Recording
Interfaces, Hardware
Loops, Samples
Other
Software
Sound Cards
Microphones
Mixers
Monitors & Speakers
Multi-Track Recorders
Other Pro Audio
Parts, Accessories
Power Amplifiers
Rack Gear
Vintage, Pre-1980
Sheet Music, Song Books
String
Wholesale Lots
Woodwind
Computer software (or simply software) refers to any of the various programs by which a computer controls aspects of its operations, such as those for translating data from one form to another, as contrasted with hardware, which is the physical equipment comprising the installation. The term is roughly synonymous with computer program but is more generic in scope. In most computers, the moment-to-moment control of the machine resides in a special software program called an operating system, or supervisor. Other forms of software include assemblers and compilers for programming languages and applications for business and home use (see computer program). Software is of great importance; the usefulness of a highly sophisticated array of hardware can be severely compromised by the lack of adequate software.
The term "software" was first used in this sense by John W. Tukey in 1957. In computer science and software engineering, computer software is all information processed by computer systems, programs and data. The concept of reading different sequences of instructions into the memory of a device to control computations was invented by Charles Babbage as part of his difference engine. The theory that is the basis for most modern software was first proposed by Alan Turing in an essay.
Relationship to hardware
Computer software is so called in contrast to 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 (which may be represented by octal or hexadecimal numerals) signifying processor instructions (object code), 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 generally 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.
Relationship to data
Software has historically been considered an intermediary between electronic hardware and data, which later the hardware processes according to the sequence of instructions defined by the software. As computational math becomes increasingly complex, the distinction between software and data becomes less precise. Data has generally been considered as either the output or input of executed software. However, data is not the only possible output or input. For example, (system) configuration information may also be considered input, although not necessarily considered data (and certainly not applications data). The output of a particular piece of executed software may be the input for another executed piece of software. Therefore, software may be considered an interface between hardware, data, and/or (other) software.
Read more at Wikipedia.org
|
|