Chapter 5

Computer Architecture

At a Glance

Instructor’s Notes

Chapter Overview

In this chapter you will learn how a computer works by identifying the circuit board components, and understanding RAM, virtual memory, CMOS, and ROM. You will also learn about the CPU, data bus, and expansion bus work. In addition, you will identify the components needed to connect a peripheral device to a computer. Finally, you will troubleshoot the boot process of a computer system.
 

Lecture Notes

Key Terms

Accumulator (221): Memory location in which data that is the result of an arithmetic or logical operation can be sent to RAM or used for further processing.

Address lines (214): Lines that carry signals that specify where the computer can find the data that it is supposed to process.

AGP (accelerated graphics port) (231): Expansion slot primarily used for graphics cards.

ALU (arithmetic logic unit) (221): Unit that performs arithmetic operations such as addition and subtraction, as well as logical operations such as comparing two numbers.

Analog device (211): Type of signal used by a computer to represent data that operates on continuously varying data.

ASCII (American Standard Code for Information Interchange) (212): The data representation code used on most microcomputers, many minicomputers, and some mainframe computers.

Binary number system (212): Number system that had only two digits: 0 and 1. Also called base 2.

Boot process (234): The sequence of events that occurs between the time you turn on a computer and the time it is ready for you to issue commands.

Bootable floppy disk (237): Disk that contains a minimal set of operating system files.

Cache (226): Special high-speed memory that gives the CPU more rapid access to data.

Capacitors (215): Microscopic electronic parts that hold the electronic signals for the code that represents data.

Character data (212): Letters, symbols, and numbers that will not be used in arithmetic operations.

Chip packages (209): Ceramic carrier in which an integrated circuit is packaged, that provides connectors to other computer components.

CISC (complex instruction set computer)(227): Computer based on a central processing unit with a complex instruction set.

CMOS (complementary metal oxide semiconductor) memory (218): Memory that holds data, but requires very little power to retain its contents.

Computer architecture (208): The design and construction of a computer system.

Control unit (222): Portion of the CPU that directs and coordinates processing.

Data bus (214): An electronic pathway or circuit on which a signal travels from location to another within a computer.

Data lines (214): Lines that carry signals representing data.

Default drive (237): Drive used by the computer automatically unless another drive is specified.

Digital device (211): Type of signal used by a computer to represent data that works with discrete numbers or digits, such as 1 and 0.

DIMM (dual in-line memory module) (216): Small circuit board onto which RAM is soldered.

EBCDIC (213): The data representation code often used by IBM-brand mainframe computers.

Expansion bus (229): The segment of the data bus that transports data between RAM and peripheral devices.

Expansion card (230): Small circuit board that provides a computer with the ability to control a storage, input, or output device.

Expansion port (232): Any connector that passes data in and out of a computer or peripheral device.

Expansion slot (230): Long, narrow socket on the motherboard into which you can plug an expansion card.

Graphics card (230): Expansion card used to connect a monitor to a computer.

I/O (input/output) (229): The process of collecting data for the microcomputers to manipulate, and transporting results to display, print, and storage devices.

Instruction (223): Step that tells the computer to perform a specific arithmetic, logical, or control operation.

Instruction cycle (224): The process in which a computer executes a single instruction.

Instruction pointer (222): Portion of the CPU that keeps track of the sequence of instructions that is supposed to be processed.

Instruction register (222): Place where each instruction sequence is stored after being retrieved from RAM.

Instruction set (223): The list of instructions that a CPU is able to execute.

Integrated circuit (IC) (209): Thin slice of silicon crystal with microscopic circuit elements such as wires, transistors, capacitors, and resistors.

ISA (industrial standard architecture) (231): Expansion slot used today for some modems and other relatively slow devices.

Megahertz (226): Millions of cycles per second.

Microprocessor (221): Single integrated circuit that functions as the central processing unit in a microcomputer.

Mils (220): Measure used for CPUs, equivalent to one one-thousandth of an inch.

Modem (230): Device that translates a digital signal to an analog signal and vice versa, so that the signal may be transmitted over phone and cable lines.

Motherboard (210): Circuit board located in the system unit inside which chips are housed. Also called a main board.

Numeric data (212): Numbers that represent quantities and that might be used in arithmetic operations.

Op code (223): A command word for an operation such as add, compare, or jump.

Operands (223): Part of an instruction that specifies the data or address of the data for the operation.

Parallel computer (228): Computer capable of parallel processing. Also called a von Neumann machine.

Parallel processing (228): Technique whereby two or more CPUs execute computer code simultaneously.

PCI (peripheral component interconnect) (231): Expansion slots that offer fast transfer speeds and a 64 bit data bus.

Pipelining (227): Technology that allows a processor to begin executing an instruction before it completes the previous instruction.

Plug and play (219): Feature that helps you update CMOS if you install a new drive.

Power-on self-test (POST) (236): Test which diagnoses problem in the computer by checking the graphics card, RAM addresses, keyboard, hard disk, and floppy disks.

RAM (random access memory) (215): An area in the computer system unit that temporarily holds data before and after it is processed.

RAM address (215): Address found on each bank of capacitors used to locate the data contained in that bank.

Register (221): Place where the ALU holds data that is being processed.

RISC (reduced instruction set computer)(227): Computer with a microprocessor that has a limited set of instructions that it can perform very quickly.

ROM (read-only memory) (218): One or more chips that contain instructions that help a computer prepare for processing tasks.

ROM BIOS (basic input/output system) (218): Small set of instructions contained in ROM that tells the computer how to access the disk drives and other peripheral devices.

Safe Mode (239): A limited version of Windows that allows you to use your mouse, monitor, and keyboard, but no other peripheral devices.

Sound card (230): Expansion card used to connect speakers to a computer.

System clock (226): "Clock" that sets the speed or frequency for data transport and instruction execution.

Virtual memory (217): A computer’s ability to use disk storage to simulate RAM.

Windows Registry (238): File that contains the settings that a computer needs to correctly use its hardware devices and software.

Word size (226): The number of bits that the central processing unit can manipulate at one time.

Digital Electronics

In this chapter, you will begin to dissect a computer to find out how it works. You can use Figure 5-4 to point out the main components on a computer main board.

Many people have the impression that the black ceramic case is actually a computer chip. To see that the chip is inside the black case, use Figure 5-2.

Computers use the flow of electricity to "read" and "write" binary digits: 0 means that there is no current flow, and 1 means that the electrical current does flow. By combining sequences of 0s and 1s, the computer is able to store and manipulate letters, numbers, and symbols.  If you want a basic understanding of binary numbers, use Figure 5-6. You can gain additional exposure to binary numbers by using the Binary Numbers Course Lab.

In this chapter we try to distinguish between binary codes and binary numbers. Binary codes use 0s and 1s to represent numbers, numerals, characters, symbols, and lists of things. Binary numbers use 0s and 1s to represent a numeric quantity, and can be converted to decimal numbers, etc. To clarify this, consider the example that the binary code 01 might stand for females, 10 for men. The binary number 01 represents the quantity "one", the binary number 10 represents the quantity "two."

Computers use binary codes such as ASCII and EBCDIC to represent letters and symbols. Refer to Figure 5-7 for an ASCII or EBCDIC table. Some worried students always want to know if they need to know ASCII codes! People rarely need to know the ASCII code for a character, and if they do, they will use a chart to look it up.

The main idea you want to remember about the data bus is that data, in the form of 1s and 0s, moves around the main board. Use Figure 5-8 to understand this concept, noting the 0s and 1s in the windows of the bus. The bus analogy seems to clarify a concept that is difficult for some to visualize.

Memory

The two standard analogies for RAM are banks of light bulbs and post office boxes. Use Figure 5-9 to understand the post office analogy. The text uses an additional analogy, comparing RAM to a chalkboard—you can write numbers and formulas on it (analogous to spreadsheet data in RAM), then erase it and write an outline (analogous to word processing data in RAM). This analogy can be extended by realizing that you could also write instructions that must be followed to complete an assignment (analogous to programs in RAM).

Virtual memory puzzles many students, because "it’s not really there!" You can refer Figure 5-11 to see that virtual memory makes use of disk space. Realize that during a power failure, you lose the data in RAM—what happened to the data in virtual memory (on disk) during a power failure? Although a power failure does not erase the contents of virtual memory, it becomes inaccessible in most cases because it loses the pointers from real memory.

CMOS is interesting because students sometimes wonder how the computer "knows" how it is configured—how many disk drives and how much memory, for example. It is a good idea, however, to distinguish between the kinds of data stored in CMOS and those stored in ROM.

Central Processing Unit

On the basic level, understand that the CPU processes instructions that is gets from RAM (Figure 5-14). Going into a little more depth, you should understand that the control unit and the ALU perform specific roles in processing instructions (Figures 5-17 and 5-18). The next level is to understand what an instruction is (Figure 5-19). Next, you should understand the instruction cycle (Figure 5-20). Finally, you might want to understand the process of creating and tracing a short assembly language program (see the CPU Simulator Course Lab). Remember that although we show op codes as characters and data in decimal format, the processor is actually working with 1s and 0s.

This section of the chapter ends with a description of the factors that affect CPU performance: clock rate, word size, cache, instruction set complexity (RISC vs. CISC), pipelining, and parallel processing.

Input/Output

A practical point about computer I/O is that microcomputers have expansion slots of different types: 8-bit, 16-bit, and local bus. To add devices to a computer system, expansion cards are plugged into these slots. The expansion cards provide a connection called a port for the cord that goes to the peripheral. Computers have a variety of ports: refer to Figure 5-26 to see some of the ports for connecting commonly used devices such as printers, modems, mouse, monitor, and keyboard.  Page 231 includes a list of the three types of microcomputer expansion slots.

User Focus: Troubleshooting the Boot Process

Understanding the boot process is a key to troubleshooting many computer problems. It also reinforces the relationship between disk storage, memory, and the processor.

The Windows Registry plays an important role in the boot process, providing technical information about the configuration of your computer. Remember that it is necessary to backup your Windows Registry periodically, since applications may not run properly if the Registry has been damaged. (For a more detailed explanation of backing up the Windows Registry, see Chapter 9.)



Related Course Labs

CPU Simulator
Troubleshooting



Inside Your Computer

Overview

The essential components of a computer are the CPU and memory.  All other components are peripherals.  Inside the system unit is the motherboard, which includes a socket for the CPU, expansion slots for expansion cards/boards, sockets for memory chips, an  attachment for the power supply, and ports for attaching peripherals.  Also located inside the system unit are the power supply and disk drives in drive bays.

Inside a computer, all data is represented digitally, and stored in circuits that can be either on or off.  Binary numbers allow these circuits to represent numbers.  Each circuit represents one binary digit, or bit.  Eight bits make up one byte. Numbers with fractional parts are represented in floating point notation.  Special codes including ASCII, EBCDIC and Unicode allow numbers to be interpreted as letters or special characters.

A microcomputer's central processing unit includes a control unit and an arithmetic-logic unit (ALU).  The control unit manages the computer's 4-step processing cycle: fetch, decode, execute, and write-back.  The ALU performs arithmetic and logical operations.  CPUs also have temporary data storage locations called registers.  In microcomputers, CPUs are located on a single chip.  The specific instructions a given processor can execute are its instruction set.  Because instruction sets vary from one processor to another, programs written for one processor will not run on another processor.

Important characteristics of the CPU include its compatibility with older models of CPU; the width (in bits) of its data and address buses; and speed of the system clock, which synchronizes the operations of the CPU. Two other important concerns are whether the chip is RISC or CISC; and whether the CPU has a numeric coprocessor.

Intel is the largest manufacturer of microprocessors, but AMD and Cyrix make Intel-compatible chips, and Motorola manufactures chips for Macintosh.  Early IBM chips were relatively slow and could run only one program at a time.  Later chips could multitask by running in protected mode, in which they could also access more memory.  The latest Intel chips are the Pentium MMX and the Pentium II.

Clock speed alone does not determine CPU performance, so benchmark tests are used to compare CPUs.  "Real world" benchmark tests run complex applications to test the overall performance of a system.

There are four types of computer memory: RAM - a temporary work area for programs and data, cache memory-a super-fast memory to store frequently-used data, ROM-a memory used for boot instructions, and CMOS-a non-volatile memory that stores configuration information.

Lecture Notes
Talking about Computer Hardware
In the strictest sense, a computer is a central processing unit (CPU), which processes the data, and a memory, which stores the data temporarily for use by the CPU.  CPUs are generally microprocessors: complete circuitry on a single chip.  Any other components of a computer, which include input/output (I/O) devices such as a keyboard and printer, and storage devices such as a hard disk, are peripherals.

The CPU is located inside the system unit-the basic box of a computer, while the peripherals may or may not be located there.

The System Unit:  Looking Under the Hood
A large number of the standard components to be found on the outside of a computer are pictured and described, along with a closer look at the motherboard.

How Modern Computers Represent Data
Data is represented using special codes that translate integer numbers, rational numbers (those with decimal points), or characters into a digital form that can be represented using circuits in one of two states: on or off.

Digital computers represent data using digits-separate units of measurement or storage that all data must be converted into.  In contrast, analog computers measure on a continuous scale.  Electronic computers use two digits for storage: 0 and 1, which are represented by a low-power circuit (off) or a high-power circuit (on).

Numbers can be represented using different bases.  We commonly use base 10, but other bases such as 60 for measuring time are also used.  In representing a number in a given base, numbers up to one less than the base are represented by one digit, but to represent a number one larger than that, 1 is carried over into the next column and the first column is reset to zero.

Binary numbers use a base of 2.  This means there are only two digits (1 and 0) in binary numbers, and it makes them very appropriate for use in an electronic computer, which has only two states (on and off) with which to represent data.  Each 1 or 0 stored in this way is called a "binary digit," or bit.

Because binary numbers can be tedious and error-prone for humans to read, they are often represented as hexadecimal (base 16) numbers for the convenience of programmers.  Hexadecimal numbers use the symbols 0 through 9 just like decimal numbers, but add the symbols A through F to represent the numbers 11 through 15 as single digits.

Because computers must store characters as well as numbers, codes must be used to translate characters into bits, which is all that a computer can store.  The two most popular codes are ASCII and EBCDIC.  ASCII is most common in personal computers, minicomputers, and on the Internet, while EBCDIC is widely used in IBM mainframes.  Today, most computers use an extended character set that requires 8 bits (1 byte) to store each character.  The basic ASCII characters, but not the characters in the extended set, are standardized.

Unicode uses 16 bits to encode letters, which gives it enough room to store more than 65,000 different characters, covering the characters of many foreign languages.

An extra bit, called the parity bit, may be added to each character.  This bit is set so that the sum of all the bits in one character is either odd (odd parity) or even (even parity).  Each character can then be checked for parity after data has been transmitted within a computer or from one computer to another.  If the sum of the bits is not correct, it can be assumed that an error has occurred.  Most personal computers do not perform this "parity checking" for internal data transfer because errors are rare and the check takes time.  However, when data is transmitted over transmission lines between computers parity checking is common.

Numbers with fractional parts (decimals) or very large numbers are stored using a format called floating-point notation.  This requires special processing circuits, usually provided by a unit called the floating point unit (FPU) which is a part of the CPU.

The Central Processing Unit:  The Computer's "Brain"
The CPU consists of a control unit and an arithmetic-logic unit (ALU).  A given processor is designed to handle a specific list of operations called its instruction set.  Because the instruction set varies from one microprocessor to another, programs written for one manufacturer's chip will not run on another manufacturer's chip.

The control unit performs a four-step process called a machine cycle or processing cycle.  It begins with the loading of the next instruction from the memory (fetch) and the decoding of the operations the instruction requires (decode).  These two steps are the instruction cycle.  It then executes the operation (execute), and writes the result back to temporary storage in a register, a small memory location in the CPU itself (write-back).  These two steps are the execution cycle.  The arithmetic-logic unit performs arithmetic operations (add, subtract, multiply, divide) and logical operations (testing which of two numbers is larger).  These are temporary storage locations within the CPU.

A clock that generates pulses synchronizes the operations of the CPU.

Microprocessors:  Computers on a Chip
Microprocessors are complete CPUs on a single chip of silicon.

Sidebar:  Creating an Electronic Marvel
This sidebar describes how microprocessors are manufactured by etching circuits into the surface of a wafer of silicon in an ultra-clean environment.  It points out that years of research may be needed to develop the design for a new chip, and that it is common for many chips to be rejected after quality checking, particularly with a new chip.  Thus, creating new chips is an expensive process, but as manufacturing processes are refined after the initial investment, the cost often goes down.

CPU Compatibility
A program written for a given CPU's instruction set is said to be compatible with that processor, or to be a "native" application for that processor.  When new and improved versions of chips are created, they are generally designed to be downwardly compatible-that is, to run the programs that would run on the previous version of the same chip.  If this were not so, many customers might refuse to buy a new chip that would force them to discard all their old software and buy new.

Sockets are the holders into which chips fit on the motherboard.  They make the connection between the circuits on the chip and the circuits on the motherboard. Both sockets and chips can be of several different designs, so not all chips can be inserted into any socket.  Some sockets are upgrade sockets, which are designed to allow you to insert an upgraded (new and improved) chip without also having to buy a new motherboard.

Comparing CPUs
It is difficult to compare CPUs because they can vary in many ways.  It is not safe to assume that a CPU with a faster clock speed is necessarily faster overall. Other factors also affect speed, such as:  The data bus is the circuits which transport data between the components of the computer.  A given computer's data bus can move a specific number of bits (the computer's word size) concurrently.  The more bits that can be moved at a time, the faster the computer can operate.  Some computers have a different size for the external data bus, which connects the chip to the rest of the computer, than for the internal data bus, which moves data between the CPU and the ALU.

This is the number of operations that can be done each time the system clock "ticks".  Originally, this number was always 1, but modern computers can use "superscalar" architecture, in which operations are  "pipelined":  a new instruction is fetched at the same time that the previous one is being decoded, executed, or written back, so that more than one instruction is being processed during a single machine cycle.   However, this technique is not always successful, since sometimes the result of a previous instruction will change which instruction should be performed next.  Another way to perform multiple operations at once is to use parallel processing, a system in which a computer has more than one microprocessor running at the same time.  Using parallel processing requires special programming techniques, however, to gain speed.

CISC (complex instruction set computers) have many instructions available.  In contract, RISC (reduced instruction set computers) have relatively few.  RISC chips have proved to run faster, cooler, and are cheaper to manufacture.  Over time, however, each of these types of chips has adopted some of the characteristics of the other, and today the distinction between them is not great.

Math coprocessors (also called floating point units or FPUs) are specially designed to process floating point operations faster. They were once separate chips, but are now usually part of the CPU.  Sometimes chips which lack FPUs are sold less expensively for users who do not do much work which requires floating point operations.  Work which requires floating point operations includes heavy graphics and complex spreadsheets, among others.

Firms which manufacture microprocessors for IBM compatibles include Intel, Advanced Micro Devices (AMD), and Cyrix.  New microprocessors by these manufacturers are downwardly compatible, and are known as a "family" of processors.  A chart showing the evolution of Intel processors from the 4004 to the Xeon is given in the text, with information on year, bus width, speed, and number of transistors.

Starting with the 286, Intel provided both real mode and protected mode, which allowed multitasking-running two programs at once-because in protected mode references to memory are checked to prevent interference between programs.

Apples and Macintoshes have used Motorola chips.  A chart showing the evolution of these chips, which fall into two families, is also provided.

Benchmarks
Benchmarks are tests which check how chips perform on a series of  operations.  This makes it easier to compare how one chip will perform versus another in the real world.  SPEC (Standard Performance Evaluation Corporation) provides some of the most widely-used benchmark testing programs.

Memory:  The CPU's Electronic Scratchpad
Most computers have several types of memory: RAM, cache memory, ROM, and CMOS.  Memory capacities are measured in kilobytes (K or KB), roughly a thousand bytes, megabytes (M or MB), roughly a million bytes, and gigabytes (G or GB), roughly a billion bytes.

RAM is used by the processor as a temporary "scratchpad" memory while it works.  It is called "random" because the CPU can directly access data at any memory location by using a memory address.

In general, users want as much RAM as possible.  If a system has too little RAM, the computer must use "virtual" memory, which means that it switches data back and forth between the RAM, where it must be for processing, and the hard disk, which can serve as temporary storage for data that won't fit into the RAM.  This switching slows processing.

Most RAM is DRAM (dynamic random access memory), which is volatile.  This means that when the power is turned off, any data stored in it is lost.  That is why hard drives are necessary for long-term storage.

Cache memory is expensive, but super-fast.  It is used to store instructions and data that the CPU may want to use soon, so it can save processing time to fetch. Primary cache is on the CPU itself, while secondary cache is on a separate board.  Some secondary cache boards are physically attached to the CPU.

ROM is non-volatile memory that comes with instructions permanently stored on it. ROM BIOS (Basic Input/Output System) stores start-up instructions for the computer. EEPROM (Electrically Erasable PROM-sometimes called flash BIOS) can be re-written by a special program.  This means you can upgrade your BIOS without having to buy a new chip.

Complementary Metal-Oxide Semiconductor memory is used to store configuration information about the machine-such as the number and type of disks it has, or the amount of memory installed-as well as the time and date.  CMOS is volatile if it loses power, but the information it holds must be kept when the power is turned off, so a battery in the system unit is used to maintain a small current for the CMOS.

Busses:  Freeways for Data
The system bus (or memory bus) carries information between the microprocessor and the RAM, as well as other chips on the motherboard.

The expansion bus (or I/O bus) carries information between the CPU and the expansion slots.  The expansion slots are sockets for expansion boards, which are boards containing circuits to support special peripherals, such as stereo speakers, a joystick, a printer, etc.  The use of expansion boards means that computers can add new peripherals easily because the circuits needed to support them can be plugged into the existing circuits.

In order from oldest to newest technology, these types include the ISA (Industry Standard Architecture), the Nubus, the PCI (Peripheral Component Interconnect), and the AGP (Accelerated Graphics Port).  Boards must match in type the busses and sockets into which they fit, so computers often have several different types of busses and sockets.

Plug and Play is a standard which board manufacturers can follow to make it easy to attach new peripherals.  Peripherals manufactured to plug and play standards contain as part of their circuitry identifying information that the CPU can read.  This enables the CPU to automatically configure the system to recognize and use the peripheral.

Macintosh has long had the equivalent of plug and play, but IBM compatibles have not had it until recently.  Previously, configuring your system to recognize a new peripheral was complex, time-consuming, and often frustrating.



Input and Output

Overview
People use input devices to enter commands and data into computers. There are several different kinds, each best suited to a particular situation and a particular kind of data. The most common input device is the traditional QWERTY typewriter keyboard, which can enter both commands and data.  On a computer, the keyboard has additional keys to help you operate the computer and use software effectively. Users should be aware of the repetitive strain injuries that are a danger of extended keyboard use.

For situations requiring graphics or menus, the user will find various pointing devices: mouse, trackball, touchpads, and joysticks. These devices are generally used for inputting commands to the system. Some systems are especially oriented toward pointing.  These pen-based systems may use a special screen that can interpret motions of a special pen on the screen's surface. Light pens and digitizing tablets are frequently used in computer-aided design.

Some input devices scan data into the computer from forms (optical mark readers) or from printed text (optical recognition systems) or from special symbols (bar code readers).  Digital cameras capture images in digital form that can be input into computers, or photographic images can be scanned.  Voice recognition systems, which enable people to give spoken commands to a computer, use sophisticated software to enable the system to adjust to different accents. Touch screens are another type of input device that allow the user to interact with the computer by making choices by touching the display on a special monitor that is sensitive to touch. Many of these input devices have applications that make everyday activities accessible to individuals with physical disabilities.

Output devices are the channel through which information is given to users. Soft copy output can't be held or carried but is useful because it can be changed quickly. Soft copy includes the display on a computer monitor and audio (sound) output. The quality of output to a monitor is affected by a variety of technical factors.

Hard copy output is most frequently printed. Printers range from quiet, inexpensive inkjet printers to quiet, expensive laser printers; from loud, fast line printers, to loud and versatile dot-matrix printers. Plotters create high-quality color graphics output by using pens of different colors or electrostatic charges to draw on paper. Sound cards provide output of speech, sounds, or music, and new tactile output devices will allow users to "feel" output.

Lecture Notes
Understanding Input:  Not Just Data Entry

Input devices do more than enter data; they also control the computer by issuing commands or by responding to messages from the system.

Input Devices:  The Computer's "Senses"
Keyboards
Keyed input devices are usually used for entering text, numbers, or commands to some systems software.  Although they have a similar layout to a typewriter keyboard (usually QWERTY, but sometimes Dvorak), keyboards include other keys, such as a numeric keypad, function keys, and Ctrl and Alt keys to vary the functions of certain other keys.

Keyboards also have cursor movement (arrow) keys to change the position of the cursor or insertion point on the screen.

Prolonged use of a keyboard can cause cumulative trauma disorders (CTD), also called repetitive strain injuries (RSI), which can be debilitating.  Ergonomically designed keyboards may help prevent this problem, along with use of a wrist rest, taking frequent breaks, using ergonomically designed office furniture, and other measures.  Module 12C covers this topic in greater detail.

Pointing Devices
Many people use pointing devices to minimize the amount of typing. Pointing devices include the mouse, trackball, trackpoint, touchpad, joystick, light pen, digitizing tablet, touch screen, and pen-based computers.

The mouse and trackball (an upside-down mouse) are used for making menu choices in graphical user interface systems as well as for drawing and painting.

Joysticks are used mostly for games, and airplane simulator programs sometimes make use of special devices shaped like an airplane's controls.

Trackpoints and touchpads are widely used for laptop computers, while touch screens are usually used only on special purpose computers such as those that serve as cash registers or those in information kiosks.

Handheld computers such as the Apple Newton allow use of a stylus to write data. They can actually recognize cursive handwriting but require "training" to a particular user's style. Other examples of pen input devices are the combination bar code reader and pen device used by Federal Express and United Parcel Services; and the credit card scanners that require you to place your signature on the credit card receipt by signing in the designated area on the device.  Engineers and architects may use a light pen to draw designs onto the screen, or a stylus to draw on a digitizing tablet.

Additional Input Devices
Sound cards act as input devices to receive sound from microphones or musical instruments that have MIDI (Musical Instrument Digital Interface) interface capabilities.  Speech input can be transcribed into text input by speech recognition software that is greatly improved from earlier versions that required users to speak artificially slowly and distinctly.

Video capture cards allow the computer to accept input of video signals, compress them, and store them digitally or send them to other computers.  With a video capture card, you can use video cameras to record and store video for replay or to broadcast live video for the Web or for videoconferences.  Video requires huge amounts of memory, so it is always compressed.  The most standard technique is MPEG2, established by the Motion Picture Experts Group.  Decompressing the video is time-consuming, so some computers have built in support for MPEG decompression.

Digital cameras are increasingly popular.  They record pictures on a disk instead of on film, and except for the very best digital models, their resolution is significantly inferior to that of conventional cameras.  Nevertheless, while the cameras themselves are expensive, they are cheaper than conventional cameras to operate and are very appropriate for some uses.

Scanners operate similarly to digital cameras, but they receive their input from paper, like copiers, and turn it into a file containing a "picture" of the original document.  Most scanners can also use optical character recognition (OCR) software.  OCR software tries to decode the images on the document into characters, and then to save those characters as a text file.  This eliminates the need to type a document into a computer in order to edit it or send it through email.  OCR technology usually misinterprets some of the characters it tries to read, and most scanned documents must be re-edited by humans; however, it saves considerable time over retyping an entire document.

Input Devices in Business and Industry
Businesses may try to capture data directly to a computer file to eliminate the use of paper and reduce the chances for error when re-recording it for the computer. For example, image processing systems scan documents for computer storage, and bar code readers read the UPC (Universal Product Code) on products for retail stores.

MICR (Magnetic Ink Character Recognition) systems are used only in the banking industry to sort checks printed with special characters for this purpose.

Optical mark readers (OMR) can read the marks on Scantron forms that are used for testing and surveys.

Biological Feedback Devices
These take input from the human body.  They may be used by the physically disabled to control a computer, or to control a computer chip that controls a physical device such as a wheelchair.

Virtual reality devices also respond to biological feedback: when a user turns a head wearing a virtual reality helmet or extends a hand wearing a data glove, the computer responds by providing different input that simulates a new view or manipulates an object.

Chemical Detectors
Computers can also receive input from minute airborne particles, and so can be said in some way to mimic the human sense of smell.

Output Devices: Engaging Our Senses
These allow humans to perceive the results of processing.

Video Adapters
These generate the image displayed on a monitor, so their quality determines the quality of the image.

Resolution refers to the number of pixels on the screen (for example, 1024 horizontal by 768 vertical) or the density of those pixels (for example, 28 dots per inch, or 28 dpi). The higher the resolution numbers, the better, in both cases.  Higher resolution, as well as greater depth of color, require more memory, so some video adapters can be expanded with additional VRAM (Video RAM).

Monitors
Most output can be divided into two categories: soft copy and hard copy. Soft copy includes output from monitors and from audio devices. Hard copy output includes output from printers, plotters, and microfilm and microfiche.

Types of monitors include the TV-like cathode-ray tube monitor (CRT), and the flat-panel display, which can be either a liquid crystal display (LCD), a gas plasma display, or a field emission display (FED). LCDs can be monochrome, gray-scale, or color. Passive-matrix LCDs usually need to be viewed "head on," or else the image is difficult to see. Active-matrix LCDs tend to give sharper images that don't "fade out" as much when viewed from an angle.  LCDs are also used for projectors and for virtual reality headsets or glasses for use in CAVEs (Cave Automated Virtual Environment).

Monitors can also be categorized by the colors they display.  Monochrome sometimes means black-and-white without shades of gray, but some manufacturers use the term for monitors that can display many shades of gray, green or amber, but no other colors.  The number of colors a monitor can display depends on a combination of the capabilities of the monitor and the adapter.

Eye strain can be caused by monitors of poor viewing quality.  Elements which contribute to this include the quality of the resolution of this image, which is affected by the dot pitch, and the degree of screen flicker, which affected by the screen refresh rate, and whether or not the entire screen is refreshed on each pass.

Printers
Computers have obviously not caused paper to disappear from society. In fact, printers may have helped generate more paper copy.

Line printers are sometimes used to produce "graphics" by printing different characters to indicate different levels of darkness for each position on the page. Another use is producing crude plots of data. A line printer's speed is rated in lines per minute.

Character printers historically also included daisy-wheel printers. Each character is on a "petal" on a wheel-like device resembling a daisy. A hammer causes the character to strike against the ribbon and page when the character is spun into position.

Dot-matrix printers are sometimes called "near-letter quality" printers because some of the better ones use very dense dots, which produce nice-looking text. Of course, dot-matrix printers can also do complicated graphics. Dot-matrix printers are frequently rated by the number of pins used to make the dots. Nine-pin printers produce rather rough-looking copy; 24-pin printers produce adequate copy. Speed is counted in characters per second (cps).

Although the impact printers have been largely superseded by non-impact printers, the need to print multipart forms will keep impact printers around for a while.

Laser printers require cartridges containing toner, a plastic powder that is melted to stick to the page. These cartridges are expensive but last for quite a while, and some companies are recycling and refilling the cartridges.

Inkjet printers have a disadvantage: the ink is usually water-based and therefore will run if the printed page gets wet. Inkjets are also less expensive unless a large number of pages are printed (as many as hundreds to thousands of pages a month); with such heavy usage, the ink cartridge costs add up.

Non-impact printers are typically rated in pages per minute (ppm) for speed and dots per inch (dpi) for resolution. (Color printers are so slow that they are often rated in minutes per page mpp.)

Color printing technology is much more complicated than other printing. A dot-matrix printer can just make several passes over each line and tilt a ribbon, or an inkjet can switch internal ink cartridges. However, for high-volume, high-resolution work, special technologies, such as thermal wax transfer and phase-change solid inks, are needed. Blending basic colors in the right proportions to produce accurate output is the major difficulty with color printing.

Plotters are less popular in homes, but engineers use them for printing drawings. Some plotters are designed to plot on very large sheets of paper (six feet wide), so they are useful for large plans. Plotters tend to be slow printing text because they must move the pen through the motions to draw each letter. Color plotters are not full-color output devices because they can only switch within the set of pens they have; they aren't designed to mix colors.

Sound Cards and Speakers
Sound cards, which enable stereo sound output and sometimes input, are frequently added to PC-compatible systems. Macintosh systems automatically include the capability to input and output sound.

Tactile Feedback
This type of feedback will certainly be used to enhance virtual reality programs but may also be used in biomedical applications to provide realistic feedback to users of artificial limbs, for example.