0% found this document useful (0 votes)
4 views4 pages

Software: Comprises Computer System Differentiate Hardware

Software refers to the instructions that direct a computer's hardware, encompassing system software, application software, and network software. System software manages a computer's internal operations, while application software executes user commands, and network software facilitates communication between computers. Additionally, programming languages, ranging from low-level machine languages to high-level languages like FORTRAN and C, are essential for creating software by providing a means to express detailed instructions for computers.

Uploaded by

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

Software: Comprises Computer System Differentiate Hardware

Software refers to the instructions that direct a computer's hardware, encompassing system software, application software, and network software. System software manages a computer's internal operations, while application software executes user commands, and network software facilitates communication between computers. Additionally, programming languages, ranging from low-level machine languages to high-level languages like FORTRAN and C, are essential for creating software by providing a means to express detailed instructions for computers.

Uploaded by

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

software, instructions that tell a computer what to do.

Software comprises the entire set of


programs, procedures, and routines associated with the operation of a computer system. The term
was coined to differentiate these instructions from hardware—i.e., the physical components of a
computer system. A set of instructions that directs a computer’s hardware to perform a task is called
a program, or software program.

The two main types of software are system software and application software. System software
controls a computer’s internal functioning, chiefly through an operating system, and also controls
such peripherals as monitors, printers, and storage devices. Application software, by contrast, directs
the computer to execute commands given by the user and may be said to include any program that
processes data for a user. Application software thus includes word processors, spreadsheets,
database management, inventory and payroll programs, and many other “applications.” A third
software category is that of network software, which coordinates communication between the
computers linked in a network.

Software is typically stored on an external long-term memory device, such as a hard drive or
magnetic diskette. When the program is in use, the computer reads it from the storage device and
temporarily places the instructions in random access memory (RAM). The process of storing and
then performing the instructions is called “running,” or “executing,” a program. By contrast, software
programs and procedures that are permanently stored in a computer’s memory using a read-only
(ROM) technology are called firmware, or “hard software.”

Britannica Quiz

Computers and Technology Quiz

The Editors of Encyclopaedia BritannicaThis article was most recently revised and updated by Adam
Augustyn.

TechnologyComputers

computer programming language

Ask the Chatbot a Question

More Actions

Written by

David Hemmendinger

Fact-checked by

The Editors of Encyclopaedia Britannica


Last Updated: Dec 13, 2024 • Article History

Table of Contents

Key People:

Stephen Wolfram

Niklaus Emil Wirth

Kristen Nygaard

John Warner Backus

Alan Kay

Related Topics:

PHP

list of programming languages

Python

CSS

Go

See all related content

computer programming language, any of various languages for expressing a set of detailed
instructions for a digital computer. Such instructions can be executed directly when they are in the
computer manufacturer-specific numerical form known as machine language, after a simple
substitution process when expressed in a corresponding assembly language, or after translation from
some “higher-level” language. Although there are many computer languages, relatively few are
widely used.

Machine and assembly languages are “low-level,” requiring a programmer to manage explicitly all of
a computer’s idiosyncratic features of data storage and operation. In contrast, high-level languages
shield a programmer from worrying about such considerations and provide a notation that is more
easily written and read by programmers.

Language types

Machine and assembly languages

A machine language consists of the numeric codes for the operations that a particular computer can
execute directly. The codes are strings of 0s and 1s, or binary digits (“bits”), which are frequently
converted both from and to hexadecimal (base 16) for human viewing and modification. Machine
language instructions typically use some bits to represent operations, such as addition, and some to
represent operands, or perhaps the location of the next instruction. Machine language is difficult to
read and write, since it does not resemble conventional mathematical notation or human language,
and its codes vary from computer to computer.

Assembly language is one level above machine language. It uses short mnemonic codes for
instructions and allows the programmer to introduce names for blocks of memory that hold data.
One might thus write “add pay, total” instead of “0110101100101000” for an instruction that adds
two numbers.

Assembly language is designed to be easily translated into machine language. Although blocks of
data may be referred to by name instead of by their machine addresses, assembly language does not
provide more sophisticated means of organizing complex information. Like machine language,
assembly language requires detailed knowledge of internal computer architecture. It is useful when
such details are important, as in programming a computer to interact with peripheral
devices (printers, scanners, storage devices, and so forth).

Britannica Quiz

Computers and Technology Quiz

Algorithmic languages

Algorithmic languages are designed to express mathematical or symbolic computations. They can
express algebraic operations in notation similar to mathematics and allow the use of subprograms
that package commonly used operations for reuse. They were the first high-level languages.

FORTRAN

The first important algorithmic language was FORTRAN (formula translation), designed in 1957 by
an IBM team led by John Backus. It was intended for scientific computations with real numbers and
collections of them organized as one- or multidimensional arrays. Its control structures included
conditional IF statements, repetitive loops (so-called DO loops), and a GOTO statement that allowed
nonsequential execution of program code. FORTRAN made it convenient to have subprograms for
common mathematical operations, and built libraries of them.
Get Unlimited Access

Try Britannica Premium for free and discover more.

Subscribe

FORTRAN was also designed to translate into efficient machine language. It was immediately
successful and continues to evolve.

ALGOL

ALGOL (algorithmic language) was designed by a committee of American and European computer
scientists during 1958–60 for publishing algorithms, as well as for doing computations.
Like LISP (described in the next section), ALGOL had recursive subprograms—procedures that
could invoke themselves to solve a problem by reducing it to a smaller problem of the same kind.
ALGOL introduced block structure, in which a program is composed of blocks that might contain both
data and instructions and have the same structure as an entire program. Block structure became a
powerful tool for building large programs out of small components.

ALGOL contributed a notation for describing the structure of a programming language, Backus–Naur
Form, which in some variation became the standard tool for stating the syntax (grammar) of
programming languages. ALGOL was widely used in Europe, and for many years it remained the
language in which computer algorithms were published. Many important languages, such
as Pascal and Ada (both described later), are its descendants.

The C programming language was developed in 1972 by Dennis Ritchie and Brian Kernighan at
the AT&T Corporation for programming computer operating systems. Its capacity to structure data
and programs through the composition of smaller units is comparable to that of ALGOL. It uses a
compact notation and provides the programmer with the ability to operate with the addresses of
data as well as with their values. This ability is important in systems programming, and C shares with
assembly language the power to exploit all the features of a computer’s internal architecture. C,
along with its descendant C++, remains one of the most common languages.

Business-oriented languages

COBOL

COBOL (common business oriented language) has been heavily used by businesses since its inception
in 1959. A committee of computer manufacturers and users and U.S. government organizations
established CODASYL (Committee on Data Systems and Languages) to develop and oversee the
language standard in order to ensure its portability across diverse systems.

COBOL uses an English-like notation—novel when introduced. Business computations organize and
manipulate large quantities of data, and COBOL introduced the record data structure for such tasks.
A record clusters heterogeneous data—such as a name, an ID number, an age, and an address—into
a single unit. This contrasts with scientific languages, in which homogeneous arrays of numbers are
common. Records are an important example of “chunking” data into a single object, and they appear
in nearly all modern languages.

Load Next Page

You might also like