Computer
Hardware and Software
Introduction
The world of business has
changed dramatically since the introduction of the first modern multipurpose
computer over 50 years ago. The ENIAC (Electronic Numerical Integrator and
Computer), designed by Drs. Mauchly and Eckert, two American engineers, was set
up at the University of Pennsylvania in 1946. This 30-ton machine occupied a
thirty-by-thirty room, contained 18,000 vacuum tubes linked by 500 miles of
wiring, and could perform 100,000 operations per second. It consumed so much
electricity that it dimmed the lights in the section of Philadelphia where it
was housed. Thanks to the development of the integrated chip, the computer has
evolved into a far smaller, more powerful, and less expensive machine. Today’s microcomputer
is 3,000 times lighter than the ENIAC, performs 4000 times faster, and costs
several million dollars less. Other innovations have made the computer easy
enough for a child to use and versatile enough for applications ranging from
astrophysics to arcade-style games. As a consequence of their decreasing size
and cost, computers can be found today in virtually every corner of American
society, from research facilities and corporate headquarters, to schools and
homes.
You need only
look around a business office to see evidence of the computer revolution. In a
large office you might find a variety of computers, ranging in size from a
mainframe computer housed in a room of its own, to a palm-sized “personal
assistant” tucked into an executive’s briefcase. A growing number of
professions rely on computers, and accounting is one of them. This introduction
will provide you with the fundamentals of computer hardware and software to
help you prepare for the material presented in the text.
TYPES OF COMPUTERS
Computers can
be grouped into categories in numerous ways. Table 1 below classifies the main
types of computers according to their physical size, processing speed, cost,
and number of users. A microcomputer,
or personal computer (PC), might cost a few thousand dollars. It is a small
computer that can fit on a desktop, and is appropriate for a single user. The
next larger computer is the minicomputer.
A minicomputer might cost tens of thousands of dollars. It is about the
size of a refrigerator and, when combined with various peripherals, might fill
a small room. Minicomputers often have several hundred users. Large businesses
often have mainframe computers. These
machines are housed in large rooms or even entire building floors. They cost up
to several million dollars, and thousands of users can access the computer
simultaneously. In a networked environment, minicomputers and mainframes are
both frequently called servers. The largest and most expensive computer, the supercomputer, is often used in research
settings and other environments that require a computer with extraordinary
computing power. Some supercomputers are capable of performing several billion
instructions per second.
Table 1: Types of Computers
Type
|
Physical Size
|
Processing Speed*
|
Cost
|
Number of Users
|
Microcomputer or
Personal Computer (PC)
|
Fits in hand, on lap,
or on desktop
|
Up to 400 MIPS
|
$1,000 to $4,000
|
One stand-alone or many
may access it through a network
|
Minicomputer
|
Small cabinet; may fill
a small room with accompanying peripherals
|
Up to 1000 MIPS
|
$5,000 to $200,000
|
Up to several hundred
|
Mainframe
|
Computer requires a
partial room; may occupy several rooms with accompanying peripherals
|
Up to several thousand
MIPS
|
$250,000 to $3,000,000
|
Hundreds to thousands
|
Supercomputer
|
Entire room of
equipment
|
Up to 10,000 MIPS
|
Several million dollars
and up
|
Hundreds to thousands
|
*Processing speed is commonly measured in millions of
instructions per second (MIPS). One instruction is a “basic task,” e.g., adding two
10-digit numbers or storing the result in specific location
.
For comparison, the human brain is estimated to be capable of 100 million MIPS.
Computer
systems can also be categorized as having either an open architecture or a
closed architecture. An open architecture allows third-party vendors to develop
and sell hardware and software that is compatible with the system. These
vendors produce products that enhance the computer system. The IBM-compatible
microcomputers are based on the open architecture design. In a closed
architecture system, only one vendor makes all or nearly all of the support
systems and does not allow other vendors into the market.
WHAT IS A COMPUTER?
When we think
of a computer, we generally picture computer hardware: the monitor, the
keyboard, and the electronic circuitry contained within the rectangular case.
There is more to a computer than this, however. The missing element is
software–the instructions that tell the computer how to operate the hardware.
All computers must have these two components to function. However, it is
software that gives the computer one of its most distinguishing
characteristics—the ability to program a single machine to perform many
different functions.
In general terms, a computer
is a machine operating under the control of instructions stored in its own
memory. These operations and instructions enable the computer to receive data
from a user (input), transform and
manipulate the data according to specified rules (process), produce results (output).
Additionally, data, instructions, and information are stored (storage) for future retrieval and
use. Many computers are also capable of
another task: communicating directly with other machines.
The user
performs the input task with a device such as a keyboard, mouse, or digital
scanner. These devices allow the user to enter data and instructions into the
computer. A secondary storage system stores and retrieves additional data and
instructions that may also be used in the input and processing stages. This
system might include magnetic or optical devices, such as CD-ROMs, hard disks,
floppy disks, and tapes. The central processing system, which manipulates the
data, is perhaps the most important part of the computer. This system is the
“brain” of the computer in that it enables the computer to transform
unorganized inputs into useful information. The central processing system
includes the central processing unit (CPU) and the primary memory. The
computer’s output system displays the results of the data manipulation. The
output system might include a monitor, a printer, a plotter, a voice output
device, or microfilm/microfiche equipment. A final element of a computer is the
communication system, which passes information from computer to computer over
communication media. Each of these systems is discussed in more detail below.
As noted above,
computers come in many types. It would be difficult to adequately cover the
variations in the components of these different computer types in a brief
introduction. Therefore, we will confine the following discussion to personal
computers (PCs). However, most of the discussion, especially as relating to
basic computer operations, is easily transferable to other computer types.
Hardware
The term
hardware refers to the tangible parts of a computer system, that is, the
physical equipment of the computer. A keyboard, disk drive, and monitor are
examples of computer hardware. (Software is discussed later.) Understanding the
various physical components of a computer system will help you understand how
the system works as a whole. As described above, the general model of a
computer consists of an input system, storage system, process system, and
output system. Our discussion of computer hardware will, therefore, be
organized around these systems, along with communications as an additional
function of which some computers are capable.
INPUT
SYSTEM
An input system comprises one
or more devices that the user employs to enter data or instructions into the
memory of the computer so that the CPU can subsequently process them. Data, as
discussed above, are unorganized facts that can become useful output by being
transformed into information. Instructions may be input as programs
(instructions that direct the performance of the computer), commands
(instructions direct a program), and user responses (instructions from the user
created by replying to a question posed by the computer). Input devices come in
many forms. Some of the more common devices are described next.
Keyboard. The
keyboard is one of the most common
input devices. In addition to keys that represent letters, numbers, and special
characters, keyboards often contain function keys, to which the user can assign
personalized commands, and special-purpose keys, such as the enter key. Some
keyboards contain a numeric keypad (a set of keys in the form of a calculator
keypad) that is used for entering numbers conveniently and easily. Keyboards
may also have Internet keys, CD/DVD controls, and multimedia keys. While most keyboards are connected to the
computer by a cable, there are wireless keyboards that transmit their input by
means of infrared signals.
Mouse. Connected
to many modern microcomputers is a hand-sized input device called a mouse, or pointing device. A mechanical
mouse contains a ball that rolls along a flat surface, moving a cursor
(pointer) on the computer screen. An optical mouse uses light signals to detect
the movement of the mouse and thereby move the pointer on the screen. Through the use of one to four buttons on top
of the mouse (and a wheel on some versions of the mouse), the user can select
and manipulate objects represented on the screen as icons (symbols). The mouse
is a convenient and effective way to interact with the graphical user
interfaces (GUIs) that dominate the current computer environment.
Touchpad. This
input device is a small rectangular surface that operates by means of pressure
and motion, and allows the user to perform all of the functions of a mouse by
touch. Moving the fingertip across the touch pad moves the cursor across the
screen. Tapping the touch pad acts as clicks and double-clicks. Touchpads are
most commonly found on laptop computers.
Pointing Stick. Like
the touchpad, this pressure-sensitive input device fills the role of the mouse
in some laptops. It is shaped like a pencil eraser and fits between keys in the
keyboard. Moving the pointing stick moves the cursor. This device is mostly
found on laptop computers.
Trackball. The
trackball is basically an upside-down mouse. Instead of rolling the ball on a
surface as with the mouse, the user rotates the trackball with the hand
directly to position the cursor on the screen.
Touch Screen. This
input device is often used in public places, such as shopping centers, hotels,
and airports, where users may not have much experience working with computers.
The user simply touches the screen for the desired menu item.
Light Pen. This
light-sensitive device is used for entering data by writing on a computer
screen. Engineers, designers, and architects use light pens to draw and modify
shapes on the screen.
Graphics Tablet. A
graphics tablet is a flat rectangular board used to input drawings or other
graphical data. The user draws on the graphics tablet with an electronic pen or
a mouse-like device (called a puck). The drawing movements are converted into
digital signals that are sent to the computer as input. Architects and
mapmakers commonly use this input device.
Speech Recognition
Devices. These devices recognize the words spoken by users. Sample
voice patterns are analyzed, digitized, and stored in a database. Later, during
operations, actual voice inputs are compared with the stored voice pattern.
Speech or voice recognition technology is best suited to structured input
applications in work environments where the user’s hands are occupied. For
example, a receiving clerk may enter data about items received with the
following phrases:
n “Invoice
998810”
n “Item
56213”
n “Quantity
100”
n “Condition Good”
From
these inputs, the speech recognition system will create a record of items
received by a receiving clerk.
Audio Input Devices. In addition to
speech recognition devices, sound may be entered into computers with audio
input devices. These devices allow music, speech, and other sound effects to be
used as input. Sound may be entered through a microphone, electronic piano
keyboard, tape player, and CD player. For high quality sound recording, a sound
card needs to be installed in the computer. For some electronic input devices a
special serial port, called a musical instrument digital interface (MIDI), is
required.
Video Input Devices and Digital Cameras. Video input devices
and digital cameras allow optical and graphical images to be entered into the
computer for storage and processing. Digital cameras allow the user to store
still-pictures as digital files (for example, .jpg’s and .gif’s) that can be
used by the computer like other graphic images. They may be edited, e-mailed,
printed, faxed, inserted into documents, and displayed on the monitor. Video
input devices enable the user to store and process full-motion images generated
from camcorders and VCRs.
Automatic Teller
Machines (ATMs). ATMs have revolutionized banking by extending
“bankers’ hours” to 24 hours a day. ATM users can borrow cash, transfer funds,
and make deposits at their convenience. Most ATM devices employ some sort of
card input that contains information about the user. The user inserts the card
and is prompted to enter a personal identification number (PIN) to authorize
access. If the user fails to enter the correct PIN after three attempts, the
ATM will assume an unauthorized person is attempting an illegal access. It will
then implement a predetermined action. This may be to lock the user out of the
system or have the ATM destroy or confiscate the access card. In any case, the
user will need to appear in person at the bank and reestablish access
authority.
Point-of-Sale (POS) Devices. POS terminals are
found in many kinds of retail businesses; for example, grocery stores. Most POS
terminals use some type of optical scanning device, usually involving laser
beams, for reading the product code on an item. The product code, sometimes
called a bar code, is the primary key
for retrieving the price and description data from the database.
Magnetic Ink Character
Recognition (MICR) Devices. MICR devices read characters printed in
magnetized ink on documents. The banking industry, in particular, has made
extensive use of MICR for reading and processing checks and deposit slips.
Optical Scanning
Devices. Optical scanning is the process of digitizing textual or graphic
images. The scanner is a light-sensing device that converts an image into an
analog signal that in turn is converted into a digital signal for computer
storage and processing. The resulting file is called a bitmap (.bmp files).
Optical scanning is a popular technique for capturing photographs for computer
usage but it may also be effectively used with printed and handwritten text.
Optical Character
Recognition (OCR) Devices. OCR devices convert typed and, in some
cases, handwritten data into electronic input. This allows paper source
documents to be converted to electronic form without rekeying. Although OCR
devices can recognize handwritten characters and a variety of fonts and
typefaces, this technology is not perfectly reliable. In spite of high error
rates, OCR is a cost-effective means of converting large volumes of source
documents that otherwise would need to be keyed manually.
Optical Mark
Recognition. This input device is able to read the hand-drawn marks and
darkened in fields placed on surveys, tests, and questionnaires.
One notable aspect of input devices is the degree to which a
device eliminates the need for manual data entry. Manual data entry is a common
source of error. Some input devices require fully manual data entry; e.g.,
keyboards. Others have done away with manual entry completely; e.g., optical
scanners.
Storage system
Inputs are sent to either memory or storage, waiting
subsequent processing by the computer. With regards to computers, there is a
commonly accepted distinction between the terms memory (or primary memory) and storage
(or secondary storage). Memory refers to the instructions, information, and
data waiting for immediate processing. For this reason, memory is also referred
to as working memory. Memory is saved electronically on memory chips. Storage,
information and instructions are saved on magnetic or optical media. It is
faster to access data and instructions from primary memory than from secondary
storage media, but the information in memory is usually volatile; i.e., it
disappears when the computer’s power is turned off. (Actually, the situation is
a bit more complicated because there are also some types of memory that are nonvolatile. These will
be discussed in the "Central Processing System" section below.) The
information saved in storage media is nonvolatile and remains in the computer
even when power is off. In general, data and instructions are kept in secondary
storage when not needed for processing. When required for processing by the
CPU, they are retrieved from storage, sent to memory, where kept until
processed.
Storage systems have two components: the storage medium (e.g., a disk or a tape) that contains the saved
information and the storage device or drive that reads from and writes onto
the storage medium. Permanent, non-volatile storage media include floppy
diskettes, installed hard disks, compact disks (CDs), magnetic tape cartridges,
removable hard disks, and superfloppies. Storage and memory are usually
measured in bytes, which consist of 8 bits (binary digits of 0 or 1). A single byte is used to encode a single
character (letter or number). One
thousand bytes are a kilobyte (KB). One million bytes are a megabyte (MB). One
billion bytes are a gigabyte (GB). One trillion bytes are a terabyte (TB). For comparison, the average book contains
about 1 MB of information and the storage capacity of human memory is about 10
TB (or 1 million books).
Floppy diskettes employ
magnetic storage technology. The disks are 3.5-inches in diameter and are
easily portable. A single floppy can hold 1.44 MB.
Hard disks are
also magnetic-based storage media. Both the hard drive and the hard disks are
usually installed inside the computer. Portable external hard drives are
connected to the computer by a cable. Current PC hard disks typically have a
capacity from 2 to 50 GB. Hard drives have a faster data access time than
floppy disks. Data access time is the time required to locate a piece of stored
information in storage and retrieve it into primary memory or the CPU.
Compact disks are
optical storage media that employ laser technology. CDs are 4.75 inches in
diameter and can hold up to 680 MB (the equivalent of 450 floppies). CDs are
often read-only, although many PCs are now equipped with CD drives that allow
the user to record information on the CD. Some writable CDs can be recorded on
only once. These are designated as CD-R (compact disc-recordable). Others CDs
can be recorded on multiple times and are designate as CD-RW (compact
disc-rewritable). Video data (e.g., movies) can be stored on a specialize type
of CD called CD—DVDs (digital video discs). As with CDs, there is recordable
variation of DVDs (DVD-R) that allows the user to record video data from his or
her computer, provided that the computer is equipped with a DVD writer.
Magnetic tape
cartridges use magnetically treated plastic ribbon to store information.
Tape cartridges can hold large amounts of information, up to 80 GB. One
disadvantage of tape storage is that information must be accessed sequentially.
For example, to retrieve information storage in the middle of the tape, the
entire first half of the tape must be run. Disks, on the other hand, allow for
direct (or random) access, which means that a piece of information may be located
immediately. Magnetic tape cartridges, of course, require magnetic tape drives.
Removable hard disks are
magnetic-based hard disks that can be removed from the hard disk drive and
easily transported. The disk drive that reads from and writes onto the removable
hard disk is either installed in the computer or attached to the computer by a
port. The portable hard disk is encased in a plastic or medal container for
protection. The disks typically can store up to 2 GB. The Jazâ disk
by Iomega is a popular example.
Superfloppy diskettes are
magnetic-based high-capacity floppy diskettes. The disks are about the same
size as the standard 3.5-inch disk, but require special disk drives for reading
from and writing to the disks. Disk drives may be permanently built-in the
computer or externally connected to the computer through a port. Three popular
superfloppies are the Iomega Zipâ
disk, which can store up to 250 MB, the Sony HiFDä disk, with a capacity of 200 MB,
and the Imitation SuperDiskä,
which can hold 120 MB.
PROCESSING SYSTEM
Once data has been input into
the computer and stored, the computer must be able to retrieve and manipulate
it in useful ways. This task is handled by the hardware that makes up the central processing system, which
includes the primary memory, the central processing unit (CPU), expansion
cards, ports, buses, and connectors. The various parts of the computer system
are connected through a printed circuit board called the system board or motherboard.
The system board contains the primary memory, the CPU, the system clock,
expansion slots, and expansion ports. In a PC, the central processing system is
housed a box-like case called the system
case or system unit.
MEMORY. As
discussed above, instructions and data needed for immediate processing are
usually placed in memory. A computer has
two types of memory: volatile and nonvolatile. They are used for the long- and
short-term retention of information, respectively. RAM and cache are examples
of volatile memory—the primary memory. ROM and CMOS are examples of nonvolatile
memory.
Random-access memory (RAM) temporarily holds data, the operating system
(instructions that control the computer’s operation), and application software
(instructions that manipulate data). The operating system resides in RAM only
while the computer is turned on. The application software remains in RAM only
while it is being used. Unless there is enough RAM to hold the application
software for more than one program at a time, when new application software is
retrieved from secondary storage, it is loaded into RAM, replacing the
application software that was previously residing there. Most current computers
have enough RAM to run several applications simultaneously, a process called multitasking. Data and instructions about
to be processed are in RAM, as are the output of the processes. Recall that the
data and instructions in working memory (i.e., RAM) are electronically stored,
as opposed to being magnetically or optically stored. Thus, when the computer
is shut down, all instructions and data in RAM are lost because the flow of
electricity ceases. In RAM, any address can be randomly accessed at any time;
hence the name random-access memory.
Cache memory
is very fast RAM. It is used to store frequently used instructions. Computers
that have cache memory process data faster than computers without it because
data travels faster from cache to the CPU than from RAM to the CPU. Some cache
is built directly in the processor chip, while other cache is in a chip
external to the processor chip.
Read-only memory (ROM) contains instructions that the computer uses to
operate various aspects of the hardware. Unlike RAM, the information stored in
the ROM chip is not lost when the computer is turned off. However, this
information is written in the factory and cannot be altered by the user. ROM,
for example, contains the instructions the computer follows to load the
operating system when first turned on.
Complementary metal-oxide semiconductor (CMOS), like ROM, is also nonvolatile memory. Unlike ROM, the
user can change CMOS. For example, CMOS contains date and time information that
the user can update.
CENTRAL
PROCESSING UNIT (CPU). The CPU consists of two components—an arithmetic/logic unit (ALU) and a control unit. The ALU performs arithmetic
calculations (addition, subtraction, multiplication, and division), comparisons
(greater than, less than, and equal to), and logical operations (and, or, and
not). All transformations of "meaningless" data into
"useful" information ultimately are the result of these three
functions. The control unit retrieves instructions and data from primary memory
and determines which instructions the ALU will carry out. The CPU also contains
registers, which are temporary
holding areas where data resides before an instruction is executed. Note the
multiple layers of information retention required by the computer: storage
(where information is kept long-term), memory (where information is kept
short-term), and registers (where information is kept during processing). In a
PC, the CPU is usually contained in one chip, called the microprocessor or simply, processor; e.g., the Intel Pentiumâ III
and the AMD Athlonä.
In larger computers, several chips are required.
The processing or transformation of data into information is
called the Processing or Machine cycle. The Machine cycle consists of two subsidiary cycles called
the Instruction cycle and the Execution cycle, each performing two
processes, for a total of four stages. The ALU, primary memory, and the control
unit are involved in these cycles. In the Instruction cycle, the control unit
first (1) fetches—the technical
term—instructions from the registers, where the data to be processed is also
being kept. The control unit next (2) decodes
the instruction and sends it to the ALU, the thinking part of the processor.
Now the Execution cycle begins. The ALU (3) executes
the instructions by performing an arithmetic, comparison, or logical operation
on the data in the registers. The result
is then (4) stored or written to the
registers where it will eventually be displayed and saved in memory or storage.
The time to complete the both the Instruction cycle and Execution cycle is
called machine time.
One measurement of the
capacity of a computer system is how much RAM can be addressed. This depends on
the number of bits in an address. In the 1970s, microcomputers had a 16-bit
address, or 65,536 bytes of addressable memory. Today’s microcomputers have a
32-bit address, which is over four billion bytes of addressable memory.
A RAM address location stores
either data or instructions. The size of the address—that is, the number of
bits at a specific address location—is called the word size. A computer address can have a word size of 8, 16, 32, or
64 bits. The CPU chip is considered to be an 8-, 16-, 32-, or 64-bit CPU,
according to its capacity to receive data from RAM. The larger the word size,
the more data the control unit can fetch from RAM.
SYSTEM
CLOCK. The system clock, a vibrating quartz crystal chip that emits
pulses, synchronizes the operations of the CPU. The frequency of these pulses
is the CPU’s clock speed, which is measured in megahertz
(MHz). (One megahertz equals one million cycles per second.) A CPU requires a
fixed number of clock cycles to execute an instruction. Thus, the faster the
clock speed, the faster the computer can process instructions. The newest Intel
Pentiumâ
III and the AMD Athlonä
microprocessors have clock speeds over 1000 MHz (or 1 GHz).
Another way to describe the
CPU’s speed is by how many instructions it can process per second. This
measurement is given in millions of instructions per second (MIPS). Megahertz
is a better benchmark than MIPS because a computer’s system clock is constant,
whereas instructions vary in their difficulty and thus in the number of cycles
required for their completion. A computer performing simple instructions would
be faster in terms of MIPS than the same computer performing more complex
instructions. For such reasons, IBM no longer advertises the MIPS capability of
its computers.
In addition to increasing
clock speed, processing may also be enhanced by pipelining, coprocessing, and parallel
processing. Traditionally, the
entire Machine cycle (fetch, decode, execute, and store) has to be completed
before the next one can start. Pipelining allows the CPU to begin a second
Machine cycle before the first cycle is complete. With full pipelining, up to
four cycles may be processed in a CPU simultaneously. Coprocessors increase
computer performance by the use of a specialized chip that handles specific
tasks, thereby freeing up the main processor to do other work. Common examples
are graphics coprocessors for displaying images on the monitor and
floating-point coprocessors for handling arithmetic calculations. Parallel
processing enables a computer to use multiple processors to solve a single
problem. Special software divides the problem in to several parts, assigns the
parts to different processors where that parts are solve simultaneously,
resembles the partial solutions, and completes any remaining problem solving.
Not all problems can be solved by this method and it is not usually found in
PCs.
EXPANSION SLOTS. Peripheral
devices, such as keyboards, disk drives, and monitors, are connected to the
computer through expansion circuit boards (also called expansion cards, adapter
cards, add-ins, add-ons, and interface cards) plugged into the expansion slots
provided on the motherboard. Types of expansion cards include:
n
A disk controller card connecting a disk drive
n An
accelerator card increasing CPU speed
n A video graphic card connecting a monitor
n A
fax/modem card connecting a telephone line
n A
memory card for adding memory
n A
PC-TV card for connecting to a television
n A
sound card connecting external speakers
n
A game card connecting a joystick
n
An interface card connecting peripherals such as
mouse devices and scanners
n A
local area network card connecting other computers
Laptops and notebooks have a special type of expansion card
called a PC card. Unlike desktop-type
expansion cards, you can add or change a PC card without opening the system
case of the computer. The PC card is simply plugged into the appropriate
opening in the laptop or notebook. PC cards can be used to add memory,
fax/modem, disk drives, and sound capabilities.
Most PC cards follow standards developed by the Personal Computer Memory
Card International Association (PCMCIA). Following the PCMCIA standards allow
various PC cards to be interchanged between laptops and notebooks produced by
different manufacturers.
BUSES. Data
in the form of electric on-off signals (bits) travel along pathways called buses that connect the various parts of
the computer. There are two types of buses: system
buses and expansion buses. The
system bus connects the CPU to primary memory, allowing instructions and data to
be exchanged. Expansion buses connect the CPU to peripheral devices, allowing
data to travel from the CPU to the expansion slots and out through the
expansion cards to the peripheral devices attached to the computer.
Buses consist of sets of parallel wires or lines. Each line
carries one bit. (Eight bits equal one byte.) Thus, a bus is measured by how
many bits it can carry simultaneously. The wider the bus, the more information
it can carry. Most current computers have either 32-bit or 64-bit bus width.
Another measure of buses is their clock speed, measured in MHz. Like the
processor, the bus clock speed determines how fast the bus functions. Bus
speeds are typically less than 200 MHz, much less than current processor clock
speeds.
Expansion buses are usually slower at transferring
information than system buses. The expansion buses also determine the types of
expansion cards that can be added to the computer. Three of the most common
expansion buses, listed in order of speed, are:
n
Industry
Standard Architecture (ISA). This
bus is the slowest and most common expansion bus. It is used to connect mouse
devices, modems, sound cards, and some network cards.
n
Accelerated
Graphics Port (AGP). This
expansion bus is faster than the ISA, and is used to connect video cards and
memory.
n
Peripheral
Component Interconnect (PCI). A
high-speed expansion bus used to connect hard disks, video cards, and network
cards.
The Universal Serial Bus (USB) uses a new approach to connecting
peripheral devices to the computer. It does away with the need to install new
expansion cards for each new device. Instead, USB-capable devices are connected
to each other in a daisy chain, and only one device is actually connected to
the computer through a cable attached to the USB port. The USB port feeds into
the USB, which in turn connects to the PCI, and then on to the motherboard.
BUFFERS AND CHANNELS. Peripheral
devices are very slow compared to the speed of the CPU. To keep the computer
running efficiently, data traveling to and from peripheral devices are placed
in a buffer. A buffer is a storage
area where data reside before being processed.
Microcomputers have buffers in
RAM and in peripheral devices such as printers. The CPU coordinates data being
transferred to and from peripheral devices by using buffers. When the buffer is
empty, the CPU is interrupted and a special request is made to fill the buffer
with more data.
On mainframe
computers, channels are used to send data to and from
peripheral devices. Channels are small computers that control the flow of data
to and from peripheral devices. Buffers hold the data while the channels
coordinate the sending of the data.
Together, channels and buffers adjust for the differences in speed of
peripheral devices. As a result, they increase throughput, which is the time a computer system requires to
complete tasks.
PORTS. Peripheral
devices, such as keyboards, monitors, printers, and mouse devices, must be
connected to the PC system case. This connection is made by attaching a cable
from the device to an interface point called a port. Most ports and cables have connectors that either male, with
exposed pins, or female, with matching holes for the exposed pins. The number
of holes and pins ranges from 5 to 36.
There are three main types of ports. Serial ports transmit and receive data
one bit at a time. One wire in the cable is used to send a single bit stream of
data, while another wire receives a single bit stream of data. Serial ports are
the slowest of the three types of ports for data transmission. Parallel ports are capable of
transmitting and receiving more than one bit at a time. Most parallel ports are
able to send and receive streams of 8 bits (1 byte) data simultaneously. These
ports achieve this higher transfer rate by having 8 wires dedicated for sending
data and 8 wires dedicated for receiving data. Parallel ports are much faster
than serial ports. Universal Serial Bus
(USB) ports can connect up to 127 different external devices at a once with
a single connector by means of a daisy chaining the devices together.
There are also several types of special
purpose ports. Three of the most popular are:
·
Musical
instrument digital interface (MIDI) ports for connecting musical instruments,
such as an electronic keyboard
·
Small computer
system interface (SCSI) ports for connecting peripheral devices that require
high-speed data transfer; e.g., printers and disk drives. SCSI-equipped devices
can also be daisy chained together, similar to USB-capable devices.
·
Infrared Data
Association (IrDA) ports for connecting external devices without cables by
means of infrared transmission of data
OUTPUT
SYSTEM
Like the input system, the
output system provides an interface through which computers and humans can
interact with one another. However, now the human is on the receiving end of
the process. Output devices are used to display input data that has been
processed by the computer into useful output information. Through its output
system, the computer presents the data it contains in a form that the user can understand. The presentation is typically in one of four
forms: graphics (e.g., charts and photographs), text (e.g., words and numbers),
video (e.g., photographic images in motion), or audio (e.g., music and speech).
Probably the most common output devices are monitors for producing temporary
displays (soft copies) and printers
for producing paper copies of documents (hard
copies).
MONITORS. A
monitor, or screen, can display graphics, text, and video output. To display
video in the monitor, the computer needs a video
card (or graphics card) for
converting the digital signal (i.e., data in the form of 0s and 1s) from the
processor to an analog signal (i.e., data in the form of a continuous
electrical wave) that the monitor can interpret.
Monitors are described in two ways. The first is by the number
of colors that the screen can display. This can range from 4 to 65,536. The
second is by the quality, or resolution, of the screen, which is measured in
picture elements (pixels). Pixels are tiny dots of light that combine to form
images on the screen. Typical screens have 320 × 220 pixels, 640 × 480 pixels,
or 1,024 × 768 pixels. The more pixels a screen has, the greater its
resolution. Both color and resolution are important for determining the
performance and quality of a computer monitor.
The IBM-compatible
color/graphic monitors have evolved from the Color Graphic Adapter (CGA)
technology, which featured 4 colors and a resolution of 320 × 220, through the
Enhanced Graphic Adapter (EGA) and the Video Graphics Array (VGA) technologies.
The current state-of-the-art for the personal computer is the Super Video
Graphics Array (SVGA); for these monitors, the number of colors varies from 256
to 65,536, and the resolution varies from 800 × 600 to 1,600 × 1,200.
Monitors come in three main
varieties: cathode-ray tubes (CRT), flat-screen liquid-crystal displays (LCD),
and gas-plasma displays. All of these are now capable of either monochrome
(black-and-white) or color displays. Desktop PCs usually come with CRTs,
although flat-screen LCDs are becoming more common. Flat-screen LCDs are
generally used in notebooks and laptops. The common desktop CRT sizes range
from 15 to 21 inches. Laptop LCDs sizes are commonly 14.1 to 15.1 inches.
Gas-plasma displays are capable of larger displays with good resolution and can
be in excess of 42 inches.
PRINTERS. It
was once thought that as computers became more common in business and in the
home, we would move toward a “paperless society.” That is, all data would be
circulated and used in electronic form, eliminating the need for printed
material. This vision has yet to be realized. In businesses, homes, and most
settings where computers are found, users still produce hard copy (information
in printed form). For most applications, soft
copy (information in electronic form) is not adequate.
To produce hard copy, a
computer must be connected to a printer. This is typically done through a
parallel port, which enables the computer to communicate with the printer one
byte at a time. Microcomputers may have one or more parallel ports.
When microcomputers first
invaded the workplace, the most popular type of printer was the dot-matrix printer, which can still be
found in service today. These inexpensive printers are appropriate for tasks
that do not require high-quality images. As its name implies, the dot-matrix
printer produces a series of dots in a matrix to form both characters and
images. A print head containing 9, 18, or 24 tiny pins strikes an inked ribbon
to create the dots that make up the image on paper. The number of pins
determines the quality of the output; the greater the number, the smoother the
output.
In the 1980s, business people
who wanted better-quality output than a dot-matrix printer could provide began
to use daisy-wheel printers. The
printing element of this type of printer is a round plastic disk that resembles
a daisy, with petals protruding from the center. The “petals” each contain a
letter, number, or other character. When printing, the daisy wheel rotates to
bring the desired character into position, and a “hammer” strikes the wheel,
forcing the character to press against an inked ribbon and mark the paper.
Daisy-wheel printers do not produce graphic images.
Thanks to its decreasing cost
and very high image quality, the laser
printer has become the printer of choice for most microcomputer
applications. The laser printer can produce both characters of any size and
high-quality graphic images. A laser beam draws the desired image on the
printer’s metal drum. The drum attracts toner (powdered ink) where the light
strikes it, and the image is transferred from the drum to the paper using heat.
A fourth type of printer used
with microcomputers is the ink-jet
printer, which produces letter-quality images by spraying droplets of ink onto
the surface of the paper. It has many of the advantages of the laser printer,
including high-quality output and the ability to produce both characters and
graphic images. In addition, ink-jet printers are often less expensive than
laser printers and can produce color images of very good quality.
The resolution quality of both
laser printers and ink-jet printers is measured in the number of dots per inch
(dpi) the printer is able to produce when generating characters: the higher the
dpi, the greater the resolution of the characters. The average PC printer today
provides 300 to 600 dpi. High-quality laser printers go up to 1200 dpi, while
high-quality ink-jet printers range up to 1440 dpi.
Chain printers are often
used with mainframe computers. Chain printers are extremely fast, producing up
to 3,000 lines per minute. A chain with characters on it revolves in front of
the paper; when the desired character passes by, the hammer in that position
presses the paper and inked ribbon against the chain.
OTHER OUTPUT
DEVICES. Plotters are
used in some settings to produce architectural drawings, bar charts, and
high-quality graphic images. They often use paper that is larger than most
printers can handle. There are three types of plotters. Pen plotters use
colored pens positioned so that a mechanical arm can access them. The
mechanical arm draws the graphic image with one colored pen, then selects
another, repeating the process until the image is complete. Pen plotters are
widely used and produce very high quality images. Electrostatic plotters use
electrostatic charges to create images on specially treated paper. This paper
must then be developed like a photograph to produce high-resolution images.
Direct-image plotters, also called thermal plotters, create images on heat sensitive paper. This process is limited to
two-color output.
Speakers and
headsets are the two most common devices used for audio output. A voice output device produces voice commands
by imitating phonic sounds. These prerecorded phonic sounds produce
synthetic-sounding words. Some telephone companies use voice output to automate
directory assistance, and some automobiles contain voice output devices that
remind drivers to fasten their seat belts.
Projectors are
used to display graphics, text, video output from a computer. In the case of
projectors, the output is displayed onto a screen for an audience to view
instead of into a monitor for a single user's viewing. Like monitors, projectors are attached to the
computer through a parallel port. Projector technology varies widely, but the
two most common types are LCDs projectors and digital light processing (DLP)
projectors.
COMMUNICATION
SYSTEM
It
is sometimes helpful to link two or more computers together so that they can
communicate with one another directly without a human intermediary. To
accomplish this task, a computer draws on its communication system.
Communications is, thus, the third main function of which computers are
capable, the other two being data storage and data processing.
In
order for two or more computers to communicate, specialized hardware is
required. First, the multiple computers must be connected together through transmission media over which the data
are transmitted. Second, there must be communication
processors that put the data in a form that can be transmitted through the
transmission media and convert the received signals into a form the computers
can use. (Networks are a distinct and highly important aspect of computer
communications but will not be covered in this appendix. Chapter 12 gives an
overview of networks.)
Transmission media can either be
physical or wireless. The three most common types of physical transmission
media are discussed next.
·
Twisted-pair cable is the type of wiring used in telephone
systems, and transmits data as electric signals. This is the least expensive
media but is the most prone to interference that can distort the signal.
·
Coaxial cable, the
type used in cable TV systems, is less likely to distort the signal being
transmitted, but is more expensive. Data is transmitted in electric form.
·
Fiber optic cable transmits
a signal in the form of light. Fiber optic technology is much faster, can
transmit data at higher rates, and is less prone to interference. However, it
is not widely available and is more expensive.
The
two most common types of wireless
media are radio signals and microwave signals. These signals differ in the frequency ranges they cover (referred
to as bandwidth), with microwaves
going above 1 GHz and radio signals covering below 1 GHz. Both types of signals
are limited to being line-of-sight (LOS). Because of the curvature of the
earth, this limits signal transmission to a range of approximately 30 miles. To
overcome the LOS problem, repeaters are used to retransmit a signal. Repeaters
can either be towers or satellites.
The
transmission media have a wide range of transmission speeds (or transfer
rates). Table 2 provides the upper end speeds of the media discussed above.
These high-end transfer rates may not be achievable in practice because of the
particular technologies in use for transmitting, receiving, and processing
signals.
Table 2: Transfer Rates of
Selected Transmission Media
Transmission Medium
|
Upper-end of Transfer
Rate
|
Twisted-pair telephone lines
|
128 Mbps
|
Coaxial cable TV lines
|
200 Mbps
|
Fiber optics lines
|
2 Gbps
|
Radio waves
|
2 Mbps
|
Microwave
|
45 Mbps
|
Mbps (megabits per
second) refers to a transfer rate of millions of bits per second and Gbps
(gigabits per second) refers to a transfer rate of billions of bits per second.
Communications processors for PCs are generally referred to as modems (from the term modulator-demodulator). Most
communication systems operate by having the sending computer’s modem convert
(or modulate) the computer’s digital information into analog format (continuous
wave), which is then sent over the transmission medium. The receiving
computer’s modem changes the analog signal back into digital form
(demodulation). Some more current modems do not translate the digital
information into analog form. Keeping the information digital throughout the
entire communications process can vastly increase the transmission speed. For
example, telephone modems use twisted-pair telephone lines and operate by
digital-to-analog modulation. They typically have a maximum transmission speed
of 56 Kbps (kilobits per second; i.e., thousands of bits per second). Digital
Subscriber Line (DSL) modems, which still use ordinary telephone line, remain
digital throughout the communications cycle and have a typical transmission
speed of 512 Kbps to 1.544 Mbps. On the other hand, cable modems, using TV
coaxial cable as the transmission medium and advanced digital-to-analog
technology, achieve typical transmission speed of 2.5 Mbps.
Modems can be
either internal (built-in) or connected externally. An internal modem can be
installed on an expansion card in the computer. An external modem is connected
to the computer either through a serial port, or a communication port, through
which the computer communicates with the modem one bit at a time.
Software
A computer system needs more
than the hardware described above in order to function. The hardware by itself, even when powered-up,
is incapable of producing useful output. It must be instructed how to direct
its operations in order to transform input into output of value to the user.
This is the role of software; i.e.,
to provide the detailed instructions that control the operation of a computer
system. Just as hardware comprises the tangible side of the computer, so
software is the intangible side of the computer. If the CPU is the physical brain of the
computer, then software is its mind.
Software instructions are
programmed in a computer language, translated into machine language, and
executed by the computer. Between the user and the hardware (specifically, the
memory), generally stand two layers of software: system software and
application software.
SYSTEM SOFTWARE
System software directly
controls the computer’s hardware, whereas application software is one level
removed from hardware. System software manages the computer’s resources,
enables the various components of the computer to communicate, runs application
software, and makes the hardware respond to the user’s needs. When the system
software operates efficiently, the difficult operations of controlling the
hardware are transparent to the user. System software includes four main types:
·
The operating system provides an interface between the computer hardware and the user
or the application software. Because of its central importance, the operating
system will be discussed in more detail below.
·
Language translators convert application programs and any other software programs into
the machine language (discussed below) that actually controls the computer's
operations.
·
Network and communications software operates the communications hardware in a computer so
that it can transmit and receive information from other computers. Network and
communications software requires two types of software: software for the PC
operating system and software for the network operating system. In some cases,
the latter comes built-in the former.
·
Utility programs perform
various specialized "housekeeping" tasks, such as file management,
virus protection, disk defragmentation, program installation and
uninstallation, file and disk back up, disk formatting, and providing screen
saver programs. This list is far from exhaustive. The user directly controls
most utility programs, although some utility programs can be set to run
automatically (e.g.; screen savers and anti-virus scanning).
Computers of all types require
system software to coordinate their resources. The system software for a
single-user PC is not nearly as complex as the system software for a multiuser
mainframe computer. However, as the PC’s system capacity has increased, the
sophistication of its system software also has increased. Many of the features
once found only in mainframe and minicomputer systems have been incorporated
into PCs.
OPERATING SYSTEMS. The operating system has two primary
functions. First, it manages the computer's resources—the computer's hardware
and any external devices. For example, the operating system controls the CPU,
accesses RAM, executes programs, receives input from the keyboard or other
input device, retrieves and saves data to and from secondary storage devices,
displays data on the monitor, and controls the printer. Second, the operating
system contains instructions for running application software.
The
operating system contains two types of instructions. System-resident commands are active in primary memory at all times
to coordinate input/output requests and execute programs. This core of the
operating system, critical to the functioning of the computer, is called the kernel and is the first set of instructions
to be loaded (booted) from secondary
storage in the hard disk on to primary memory in RAM when the computer is first
turned-on. Disk-resident commands
reside in secondary storage until a request is made to execute special-purpose
programs, at which type they are loaded into working memory.
To make
microcomputer systems easy to use, the interface
(link) between the user and the hardware has become simpler and more intuitive.
Particularly important for the development of “user-friendly” computers is the graphical user interface (GUI). The GUI
allows the user to interact with the computer through icons (graphic symbols)
on the screen. These icons can represent a variety of things, including
computer disks, folders, documents, and software programs. The user instructs
the computer to perform particular tasks by pointing to and manipulating the
appropriate icons with a mouse. Operating systems not GUI-capable, e.g., UNIX,
require the user to input commands by typing in words or pressing specially
defined keys. This set-up is called a command-line
interface.
The
computer’s operating system defines the family of additional software—primarily
applications—that the computer can use. For this reason the operating system
software is frequently called the software
platform. Most application software is written for one particular operating
system. For example, the user of an IBM-compatible PC with a DOS operating
system must select programs from the available software written for that
operating system. The user of an IBM-compatible PC with an OS/2 operating
system must select from a different set of software. (DOS and OS/2 will be
discussed below.) Some applications, however, are capable of running on
multiple operating systems and are referred to as cross-platform applications.
Application
programs can be very large. They might take up many millions of bytes on a
secondary storage device. For this reason, the operating system does not load
all of a large application program into RAM at one time. Instead, it loads only
a portion of the application program; when the program requires other code, it
accesses that code from secondary storage. The operating system’s ability to
divide the computer program into variable-length portions and to store only a
small portion at a time in primary memory (RAM) is called virtual storage. Some operating systems also have virtual memory, which enables a small
portion of the hard disk to function as additional RAM by storing the portions
of the program not being used in the RAM on the hard disk but in such a fashion
that they can be very quickly accessed (a process called paging).
In
addition to managing memory and application programs, operating systems also
perform functions relating to the peripheral devices connected to the computer.
For example, the operating system handles the requests for print jobs sent to
the printer. When more print requests are sent to the printer than can be
handled at once, the operating system assigns them an order and places them in
a buffer, an area of memory, awaiting printing. This process is called spooling. Another important function of
the operating system is that of configuring the external devices. Each device
must communicate to the computer, a process requiring a device to have its own
program, referred to as the device driver.
The operating system coordinates the installation of this software and ensures
its proper functioning. These procedures are often done manually but in some
cases the process is automatically perform by the operating system (called Plug and Play).
Operating
systems that allow only one user to run one program at a time are called single user or single tasking operating systems. Most current operating systems
and computers have moved beyond this stage to multitasking. In multitasking, the operating system allows more
than one task or program to be executed at a time in a single-user computer.
Operating systems that address more memory can run several tasks
simultaneously. A computer’s multitasking capability is also limited by the
amount of RAM it contains.
With the
advent of networks, much focus has been placed on the multiuser capabilities of operating systems, although the multiuser
environment has long been present in supercomputers, mainframes and
minicomputers. With a mainframe, for example, a thousand or more users may need
to access the computer simultaneously. In all of these architectures, the
operating system must coordinate system requests from many users. The operating
system manages these requests by allocating to each user a portion of primary
memory where the programs reside and executing the programs when an input is
received or an output is requested. Because the processors in supercomputers,
mainframes and minicomputers are extremely fast compared to the speed of input
and output, the operating system can handle many programs in RAM
simultaneously. The processor handles a portion of each program in series,
coordinated by the operating system. This is called multiprogramming.
Another
feature of the operating systems in supercomputers, mainframes and
minicomputers, called timesharing, assigns to each user a fraction of the processor’s
time. An efficient operating system controls the multiuser environment in such
a way that the user feels as though he or she is the only person using the
computer.
Computers,
especially mainframe and minicomputer systems, can also employ multiprocessing. In this process, the operating system uses more than
one processor or CPU to execute the commands of a single program. The operating
system sends instructions to several processors in parallel, which results in
the faster processing of instructions.
There
are numerous operating systems. Several of the most popular are discussed
below:
·
DOS (Disk Operating System) is for single-user IBM-compatible computers. Microsoft Corporation sells this
product under the name MS-DOS (Microsoft Disk Operating System) and licenses
another version, called PC-DOS, to IBM for use in its personal computers. DOS
was written for the microcomputer technology of the early 1980s. An enormous
number of microcomputers still run under DOS. Even though there have been
numerous improvements to the software since its introduction, limitations still
exist. It is not GUI-capable. Nor can it take full advantage of today's 32-bit
processors (e.g., Intel's Pentiumâ
series). That is, application programs running on DOS computers have direct
access to only 640,000 bytes of primary memory.
·
Macintosh Operating Systems (Mac OS) was introduced in the 1984 and was the first commercial
GUI platform. The latest version supports multitasking, includes multiple Web
browsers, and has built-in networking capability. It also is able to open,
edit, and save files created in DOS and Windows platforms.
·
Microsoft Windows 95 and 98 are
GUI-capable, multitasking operating systems. Unlike the earlier Windows 3.x
series, Windows 95 and 98 are true operating systems, and do not require DOS to
run. Windows 95 and 98 have broken the 640,000-byte barrier, providing direct
access to millions of bytes of memory. These operating systems take advantage
of todays more powerful microprocessor chips, such as the Intel Pentiumâ, which address more memory and run faster than the
older microprocessors. Windows 98 is an upgraded version of Windows 95. Windows
98 is user-friendlier than Windows 95 and has more Internet features; e.g.,
Windows 98 includes Microsoft Internet Explorer.
·
Microsoft Windows NT is designed for client-server networks (discussed in
chapter 12). It provides the user with the other features of Windows 98.
·
Linux is an
interesting operating system because it is not proprietary software. Its code
has been made publicly available (called open-source
software). This allows users to customize the software to meet their
personal needs and to share improvements made with others. Applications that
run on Linux are commercially available; for example, from Red Hat Software and
Corel Corporation.
·
UNIX was
developed by Bell Laboratories in the 1970's, and is one of the few small-scale
operating systems that is both multiuser and multiprocessing capable. This
allows computers running on UNIX to process a high volume of inputs from
multiple users by using multiple CPUs simultaneously.
APPLICATION
SOFTWARE
Application software enables
the user to direct the computer’s processing system in the tasks of
manipulating and transforming input data into useful output information.
Furthermore, it allows the user to alter the information generated by the
processing system; e.g., how the information is presented. This is the type of
software with which most users interact. It is the usual interface between user
and computer. Rarely do users directly
manipulate systems software, especially the operating systems software.
Application software can be
written for a specific user’s application (custom software), or it can be
mass-produced for general use (commercial or packaged software). Naturally,
custom software is usually far more expensive than commercial software. An
accounting package written for a specific company might cost many thousands of
dollars, whereas a commercial accounting package might cost only a few hundred
dollars at a retail store. The advantage of custom software is that it is
tailored to the user’s specific needs and can be seamlessly integrated into the
user’s existing software. Not only is commercial software less costly, it is
also available immediately, and the package can be evaluated before being
purchased.
Application software comes in
an incredible variety. It is available for business, personal, educational,
communication, and graphic design purposes—to name the more usual categories.
There is almost certainly a software package somewhere available to suit any
need. If not, there are programmers ready to be hired to build it. For our
purposes, we will limit our discussion to the four types of application
software most likely to be useful to accounting and business students: word processing, spreadsheet, database, and presentation graphics. These four applications are frequently sold
together in a single software package. Three of the most popular packages are
Corel WordPerfect Suite, Microsoft Office 2000, and Lotus SmartSuite. In
addition to the four "standard" applications, these packages usually
include email, Internet, video processing, and desktop publishing
applications.
Word
processing programs allow the user to quickly and easily create and revise
texts on the computer screen. By using word processing applications, the user
can format documents with ease, changing font size, margins, color, etc. Different types of documents—e.g., letters,
memos, and reports—are often preformatted in the application. PC-based word
processing software is so capable and inexpensive that, in most businesses, it
has become the usual tool for creating documents, even when more powerful
mainframes and minicomputers are available.
Spreadsheet
programs are especially useful in business and accounting. The electronic
spreadsheet consists of rows and columns of data, which the user can easily
edit, copy, move, or print. Using numeric data entered in the spreadsheet, the
computer can perform numerous mathematical calculations automatically, many of
impressive sophistication (e.g., statistical, logical, and engineering
functions). One of the spreadsheet program’s most powerful features for
business purposes is that it enables the user to do “what-if” analyses on
existing data and to input different data for various scenarios. Non-numeric
data (e.g., names and dates) may also be entered in a spreadsheet. Spreadsheets
can perform some non-mathematical operations (e.g., sorting and filtering) on
this data, although this type of analysis is not a spreadsheet's strength.
Database
software allows the user to enter, store, maintain, retrieve, and manipulate
data. In some ways, databases pickup where spreadsheets leave off, although a
fairer assessment is probably that the relationship between the two types of
software is reciprocal. Database software is certainly more efficient and
effective at handling non-numeric data than is spreadsheet software.
Conversely, numeric data is usually easier to manipulate in a spreadsheet. In
most databases, data is entered to tables of rows and columns, similar to
spreadsheets. Unlike spreadsheets, these tables can be connected into relationships
that allow users incredible versatility in what they can do with that data. For
example, data—both numeric and non-numeric—from several individual tables may
be retrieved and used together in calculations, with the results presented in a
business-style report.
Presentation
graphics software enable users to design professional-quality presentations for
business and educational purposes. The presentations usually consist of
formatted slides for projecting onto a screen from a computer projector or
overhead projector, or for display on a large monitor. These presentations may also be used for
online meetings and Web broadcasts. The
slides can be designed to include backgrounds, graphic images, charts, clipart,
shading, animation, and audio effects—and, of course, text, which can sometimes
get lost in all of the embellishments.
PROGRAMMING
LANGUAGES AND LANGUAGE TRANSLATORS
Computer programmers use
artificial languages, known as programming
languages, to write the instructions that tell computers what to do.
Programming languages have evolved over time to become more like the natural
languages that human beings speak. This section traces the evolution from
machine language to fifth-generation language.
MACHINE
LANGUAGE. Programs for the first computers were written in strings
of binary digits ("bits," consisting of 0s and 1s).
Thus, this first programming language is often referred to as the first-generation language (or 1GL). It is also called the machine language because computers—past
and present—require this type of instruction in order to perform their
operations as machines. Instructions (and data) are represented ultimately as
bits because these strings of 0s and 1s correspond to the actual binary on-off
flow of electrical current through the computer's circuitry. Because machine
language is so far removed from natural language, it has a number of inherent
problems as a programming language. It is time-consuming and tedious for humans
to work in machine language, and errors in machine-language programs are
difficult to find.
ASSEMBLY
LANGUAGE. Assembly language
(also referred to as the second-generation
language or 2GL) was the next
step in the evolution of programming languages. In assembly language, commands
are written with mnemonic codes rather than numerical codes. These commands are
translated from the source language (the programmer’s code) into an object
module (machine language). The translation process can be done in two ways.
Either an interpreter converts the program line by line as it is being run, or
a compiler converts the entire program at one time before it is run.
Interpreters are often used with beginning programmers who are learning a
language for the first time. Compilers are used in professional settings where
speed and security are important.
Interpreters and compilers are
operating system programs that fall under the general category of language
translators. Each programming language requires a specific language translator
to convert it to machine language.
Assembly languages are
specific to a particular processor and give the programmer control over the
lower-level operations of the computer. Compared to third-generation languages,
discussed next, assembly language requires more detail in programming.
THIRD-GENERATION
LANGUAGES. The evolution of programming languages toward
user-friendliness continued with the development of third-generation languages (3GL). Third-generation languages, such as FORTRAN, COBOL, Pascal, Java,
PL/1, and C, are procedural languages. Program instructions are executed in a
precise sequence to accomplish a task. These languages use recognizable
statements like PRINT, INPUT, SORT, and IF, which must be compiled into
detailed machine language instructions. The linkage editor inserts pre-written
routines called library programs after compilation to produce an executable
program called the load module.
Some of the most common
third-generation programming languages are described next.
BASIC (Beginner’s All-purpose
Symbolic Instruction Code) was designed as a programming
language for novices. The language uses an interpreter that evaluates each line
for syntax errors, which helps beginning programmers. The language became very
popular for microcomputer use in the late 1970s and early 1980s.
FORTRAN (Formula Translation)
was developed in 1956 to provide scientists, engineers, and mathematicians a
programming language that is rich in scientific and mathematical operations.
COBOL (Common Business
Oriented Language) was designed for such business applications as
inputting records from a data file and manipulating, storing, and printing
them. A tremendous number of programs have been written in COBOL since its
inception in the early 1960s. COBOL still maintains a significant presence.
Each business day, billions of lines of COBOL code are executed.
IBM developed PL/1 (Programming Language
1) in 1964. This language combines the mathematical features found in
FORTRAN with the record-processing features found in COBOL.
Pascal was written to
take advantage of the programming technique called structured programming, in which programs are divided into modules
that are controlled by a main module. The language was very popular in the
1980s for teaching structured programming and advanced programming techniques
in computer science courses.
In the 1970s, AT&T Bell
Labs developed a programming language called
C that could be run on various types of computers. Source code written for
a microcomputer could thus easily be converted into source code for a
mainframe.
Java was developed in the
mid 1990s by Sun Microsystems. It is based on a new programming technique
called object-oriented programming.
Object-oriented programming allows the programmer to define not only the
characteristics of data but also the data's associated procedures. This type of
programming is especially beneficial in a networked environment because it
allows computers to quickly transmit computations to each other, not just data
requiring subsequent computation.
FOURTH-GENERATION
LANGUAGES. The development of applications written in
third-generation languages takes a considerable amount of time, often several
months to several years. Increasingly users need software that allows them to
develop simple applications quickly. Fourth-generation
languages (4GL) were developed to meet this need. They are declarative, not
procedural, languages. With the earlier generations of procedural languages,
the user/programmer had to delineate the step-by-step procedures for the
computer to follow to achieve a certain result. With fourth-generation
language, however, the user simply tells the computer what end result is
desired and the computer to decides the steps needed to achieve that goal.
Also, fourth generation languages have been designed to be easy to learn and
use. In addition, they relieve professional programmers from increasing demands
to develop new programs and maintain existing ones.
Fourth-generation languages
are found in a variety of applications, including statistical packages, data
base management systems, and graphical packages. Statistical packages perform a
full range of statistical analyses and enable the user to produce reports of
the results. Statistical Package for the Social Sciences (SPSS) and Statistical
Analysis System (SAS) are examples of powerful statistical packages that are
available on mainframe computers, minicomputers, and microcomputers.
Data base management systems
usually contain a 4GL query language that allows the user to retrieve data from
and store data to the database. Relational data base management systems have
been standardized on a query language called Structured Query Language (SQL). By using either a menu-driven
interface or simple commands, the end user can develop advanced queries to the
database without a programmer’s assistance.
FIFTH-GENERATION
LANGUAGES. Fifth-generation
languages (5GL) are attempting to make the task of programming even
user-friendlier than did the 4GLs. This is achieved by removing most of the
verbal aspects from programming. Instead, 5GLs use a visual or graphical
environment that allows the user to design the program with minimal use of
programming words. For example, visual programming allows the user to drag
icons together in a windows environment in order to assemble a program
component. The 5GL development interface then automatically creates the source
language that is typically compiled with a 3GL or 4GL language compiler.
Enabling users to design something as complex as a computer program by means of
graphical symbols is a difficult undertaking. Not all attempts at developing a
workable 5GL have been successful. Currently, however, Microsoft, Borland and
IBM make 5GL visual programming products for developing Java applications that
appear successful. The amazing evolution of computer languages from strings of
0s and 1s to graphical icons says a lot about the ability of computers to
inspire us with creativity and genius.