See K. A. Jamsa, Welcome to Personal Computers (3d ed. 1995); J. Preston and M. Hirschl, Personal Computing (1997).
Antivirus programs and hardware have been developed to combat viruses. These search for evidence of a virus program (by checking for appearances or behavior that are characteristic of computer viruses), isolate infected files, and remove viruses from a computer's software. Researchers are working to sidestep the tedious process of manually analyzing viruses and creating protections against each by developing an automated immune system for computers patterned after biological processes. In 1995 Israel became the first country to legislate penalties both for those who write virus programs and those who spread the programs.
A distinction should be made between a virus—which must attach itself of another program to be transmitted—and a bomb, a worm, and a Trojan horse. A bomb is a program that resides silently in a computer's memory until it is triggered by a specific condition, such as a date. A worm is a destructive program that propagates itself over a network, reproducing as it goes. A Trojan horse is a malicious program that passes itself off as a benign application; it cannot reproduce itself and, like a virus, must be distributed by diskette or electronic mail.
See F. B. Cohen, A Short Course on Computer Viruses (2d ed. 1994); G. Smith, The Virus Creation Labs: A Journey into the Underground (1994); W. T. Polk et al., Anti-Virus Tools and Techniques for Computer Systems (1995); M. A. Ludwig. The Giant Black Book of Computer Viruses (2d ed. 1998); P. E. Fites, P. Johnston, and M. P. J. Kratz, The Computer Virus Crisis (1999).
See L. Tijerina, Video Display Terminal Workstation Ergonomics (1984).
Systems programs are those that control the operation of the computer. Chief among these is the operating system—also called the control program, executive, or supervisor—which schedules the execution of other programs, allocates system resources, and controls input and output operations. Processing programs are those whose execution is controlled by the operating system. Language translators decode source programs, written in a programming language, and produce object programs, which are in machine language and can be understood by the computer. These include assemblers, which translate symbolic languages that have a one-to-one relationship with machine language; compilers, which translate an algorithmic- or procedural-language program into a machine-language program to be executed at a later time; and interpreters, which translate source-language statements into object-language statements for immediate execution. Other processing programs are service or utility programs, such as those that "dump" computer memory to external storage for safekeeping and those that enable the programmer to "trace" program execution, and application programs, which perform business and scientific functions, such as payroll processing, accounts payable and receivable posting, word processing, and simulation of environmental conditions.
See F. Maddix and G. Morgan, Systems Software: An Introduction to Language Processors and Operating Systems (1989).
Sounds can also be directly created by the computer, allowing it to act as a synthesizer. Some recent research into sound production by computers utilizes a technique called physical modeling, which attempts to model the physics of natural instruments or sounds. Computers can also be used to compose music by a process known as algorithmic composition. In this technique various details of a composition are determined by the computer according to a specific program written by the composer. Another area of computer music involves the interaction of humans and machines in live performance. Various techniques have been developed to enable a performer to actively control the output of a computer while a performance is under way.
See C. Roads, Composers and Computers (1985); F. R. Moore, Elements of Computer Music (1990); R. Dobson, A Dictionary of Electronic and Computer Music Technology (1992).
See J. D. Foley, Computer Graphics: Principles and Practices (1990); K. S. Chauveau, J. S. Chin and T. N. Reed, The Computer Graphics Interface (1991); Sun Microsystems, An Introduction to Computer Graphics Concepts: From Pixels to Pictures (1991); R. T. Stevens, Quick Reference to Computer Graphics Terms (1993); I. V. Kerlow and J. Rosebush, Computer Graphics for Designers and Artists (2d ed. 1994); J. Peddie, High-Resolution Graphics Display Systems (1994).
Computers are categorized by both size and the number of people who can use them concurrently. Supercomputers are sophisticated machines designed to perform complex calculations at maximum speed; they are used to model very large dynamic systems, such as weather patterns. Mainframes, the largest and most powerful general-purpose systems, are designed to meet the computing needs of a large organization by serving hundreds of computer terminals at the same time. Minicomputers, though somewhat smaller, also are multiuser computers, intended to meet the needs of a small company by serving up to a hundred terminals. Microcomputers, computers powered by a microprocessor, are subdivided into personal computers and workstations, the latter typically incorporating RISC processors. Although microcomputers were originally single-user computers, the distinction between them and minicomputers has blurred as microprocessors have become more powerful. Linking multiple microcomputers together through a local area network or by joining multiple microprocessors together in a parallel-processing system has enabled smaller systems to perform tasks once reserved for mainframes, and the techniques of grid computing have enabled computer scientists to utilize the unemployed processing power of connected computers.
Advances in the technology of integrated circuits have spurred the development of smaller and more powerful general-purpose digital computers. Not only has this reduced the size of the large, multi-user mainframe computers—which in their early years were large enough to walk through—to that of large pieces of furniture, but it has also made possible powerful, single-user personal computers and workstations that can sit on a desktop. These, because of their relatively low cost and versatility, have largely replaced typewriters in the workplace and rendered the analog computer inefficient.
An analog computer represents data as physical quantities and operates on the data by manipulating the quantities. It is designed to process data in which the variable quantities vary continuously (see analog circuit); it translates the relationships between the variables of a problem into analogous relationships between electrical quantities, such as current and voltage, and solves the original problem by solving the equivalent problem, or analog, that is set up in its electrical circuits. Because of this feature, analog computers were especially useful in the simulation and evaluation of dynamic situations, such as the flight of a space capsule or the changing weather patterns over a certain area. The key component of the analog computer is the operational amplifier, and the computer's capacity is determined by the number of amplifiers it contains (often over 100). Although analog computers are commonly found in such forms as speedometers and watt-hour meters, they largely have been made obsolete for general-purpose mathematical computations and data storage by digital computers.
A digital computer is designed to process data in numerical form (see digital circuit); its circuits perform directly the mathematical operations of addition, subtraction, multiplication, and division. The numbers operated on by a digital computer are expressed in the binary system; binary digits, or bits, are 0 and 1, so that 0, 1, 10, 11, 100, 101, etc., correspond to 0, 1, 2, 3, 4, 5, etc. Binary digits are easily expressed in the computer circuitry by the presence (1) or absence (0) of a current or voltage. A series of eight consecutive bits is called a "byte"; the eight-bit byte permits 256 different "on-off" combinations. Each byte can thus represent one of up to 256 alphanumeric characters, and such an arrangement is called a "single-byte character set" (SBCS); the de facto standard for this representation is the extended ASCII character set. Some languages, such as Japanese, Chinese, and Korean, require more than 256 unique symbols. The use of two bytes, or 16 bits, for each symbol, however, permits the representation of up to 65,536 characters or ideographs. Such an arrangement is called a "double-byte character set" (DBCS); Unicode is the international standard for such a character set. One or more bytes, depending on the computer's architecture, is sometimes called a digital word; it may specify not only the magnitude of the number in question, but also its sign (positive or negative), and may also contain redundant bits that allow automatic detection, and in some cases correction, of certain errors (see code; information theory). A digital computer can store the results of its calculations for later use, can compare results with other data, and on the basis of such comparisons can change the series of operations it performs. Digital computers are used for reservations systems, scientific investigation, data-processing and word-processing applications, desktop publishing, electronic games, and many other purposes.
Processing of DataThe operations of a digital computer are carried out by logic circuits, which are digital circuits whose single output is determined by the conditions of the inputs, usually two or more. The various circuits processing data in the computer's interior must operate in a highly synchronized manner; this is accomplished by controlling them with a very stable oscillator, which acts as the computer's "clock." Typical computer clock rates range from several million cycles per second to several hundred million, with some of the fastest computers having clock rates of about a billion cycles per second. Operating at these speeds, digital computer circuits are capable of performing thousands to trillions of arithmetic or logic operations per second, thus permitting the rapid solution of problems that would be impossible for a human to solve by hand. In addition to the arithmetic and logic circuitry and a small number of registers (storage locations that can be accessed faster than main storage and are used to hold the intermediate results of calculations), the heart of the computer—called the central processing unit, or CPU—contains the circuitry that decodes the set of instructions, or program, and causes it to be executed.
Storage and Retrieval of DataAssociated with the central processing unit is the storage unit, or memory, where results or other data are stored for periods of time ranging from a small fraction of a second to days or weeks before being retrieved for further processing. Once made up of vacuum tubes and later of small doughnut-shaped ferromagnetic cores strung on a wire matrix, main storage now consists of integrated circuits, each of which contains thousands of semiconductor devices. Where each vacuum tube or core represented one bit and the total memory of the computer was measured in thousands of bytes (or kilobytes, KB), each semiconductor device now represents millions of bytes (or megabytes, MB) and the total memory of mainframe computers is measured in billions of bytes (or gigabytes, GB). Random-access memory (RAM), which both can be read from and written to, is lost each time the computer is turned off. Read-only memory (ROM), which cannot be written to, maintains its content at all times and is used to store the computer's control information.
Programs and data that are not currently being used in main storage can be saved on auxiliary storage, or external storage. Although punched paper tape and punched cards once served this purpose, the major materials used today are magnetic tape and magnetic disks, which can be read from and written to, and two types of optical disks, the compact disc (CD) and its successor the digital versatile disc (DVD). DVD is an improved optical storage technology capable of storing vastly greater amounts of data than the CD technology. CD-Read-Only Memory (CD-ROM) and DVD-Read-Only Memory (DVD-ROM) disks can only be read—the disks are impressed with data at the factory but once written cannot be erased and rewritten with new data. The latter part of the 1990s saw the introduction of new optical storage technologies: CD-Recordable (CD-R) and DVD-Recordable (DVD-R), optical disks that can be written to by the computer to create a CD-ROM or DVD-ROM, but can be written to only once; and CD-ReWritable (CD-RW), DVD-ReWritable (DVD-RW and DVD+RW), and DVD-Random Access Memory (DVD-RAM), disks that can be written to multiple times.
When compared to semiconductor memory, magnetic and optical storage is less expensive, is not volatile (i.e., data is not lost when the power to the computer is shut off), and provides a convenient way to transfer data from one computer to another. Thus operating instructions or data output from one computer can be stored away from the computer and then retrieved either by the same computer or another. In a system using magnetic tape the information is stored by a specially designed tape recorder somewhat similar to one used for recording sound. In magnetic and optical disk systems the principle is the same except that the magnetic or optical medium lies in a path, or track, on the surface of a disk. The disk drive also contains a motor to spin the disk and a magnetic or optical head or heads to read and write the data to the disk. Drives take several forms, the most significant difference being whether the disk can be removed from the drive assembly.
Removable magnetic disks are most commonly made of mylar enclosed in a paper or plastic holder. These floppy disks have varying capacities, with very high density disks holding 250 MB—more than enough to contain a dozen books the size of Tolstoy's Anna Karenina. Compact discs can hold many hundreds of megabytes, and are used, for example, to store the information contained in an entire multivolume encyclopedia or set of reference works, and DVD disks can hold ten times as much as that. Nonremovable disks are made of metal and arranged in spaced layers. They can hold more data and can read and write data much faster than floppies.
Data are entered into the computer and the processed data made available via input/output devices. All auxiliary storage devices are used as input/output devices. For many years, the most popular input/output medium was the punched card. Although this is still used, the most popular input device is now the computer terminal and the most popular output device is the high-speed printer. Human beings can directly communicate with the computer through computer terminals, entering instructions and data by means of keyboards much like the ones on typewriters, by using a pointing device such as a mouse, trackball, or touchpad, or by speaking into a microphone that is connected to computer running voice-recognition software. Responses may be displayed on a cathode-ray tube, liquid-crystal display, or printer. The CPU, main storage, auxiliary storage, and input/output devices collectively make up a system.
Sharing the Computer's ResourcesGenerally, the slowest operations that a computer must perform are those of transferring data, particularly when data is received from or delivered to a human being. The computer's central processor is idle for much of this period, and so two similar techniques are used to use its power more fully.
Time sharing, used on large computers, allows several users at different terminals to use a single computer at the same time. The computer performs part of a task for one user, then suspends that task to do part of another for another user, and so on. Each user only has the computer's use for a fraction of the time, but the task switching is so rapid that most users are not aware of it. Most of the tens of millions of computers in the world are stand-alone, single-user devices known variously as personal computers or workstations. For them, multitasking involves the same type of switching, but for a single user. This permits a user, for example, to have one file printed and another sorted while editing a third in a word-processing session. Such personal computers can also be linked together in a network, where each computer is connected to others, usually by wires or coaxial cables, permitting all to share resources such as printers, modems, and hard-disk storage devices.
Computer Programs and Programming LanguagesBefore a computer can be used to solve a given problem, it must first be programmed, that is, prepared for solving the problem by being given a set of instructions, or program. The various programs by which a computer controls aspects of its operations, such as those for translating data from one form to another, are known as software, as contrasted with hardware, which is the physical equipment comprising the installation. In most computers the moment-to-moment control of the machine resides in a special software program called an operating system, or supervisor. Other forms of software include assemblers and compilers for programming languages and applications for business and home use (see computer program). Software is of great importance; the usefulness of a highly sophisticated array of hardware can be severely compromised by the lack of adequate software.
Each instruction in the program may be a simple, single step, telling the computer to perform some arithmetic operation, to read the data from some given location in the memory, to compare two numbers, or to take some other action. The program is entered into the computer's memory exactly as if it were data, and on activation, the machine is directed to treat this material in the memory as instructions. Other data may then be read in and the computer can carry out the program to solve the particular problem.
Since computers are designed to operate with binary numbers, all data and instructions must be represented in this form; the machine language, in which the computer operates internally, consists of the various binary codes that define instructions together with the formats in which the instructions are written. Since it is time-consuming and tedious for a programmer to work in actual machine language, a programming language, or high-level language, designed for the programmer's convenience, is used for the writing of most programs. The computer is programmed to translate this high-level language into machine language and then solve the original problem for which the program was written. Certain high-level programming languages are universal, varying little from machine to machine.
Although the development of digital computers is rooted in the abacus and early mechanical calculating devices, Charles Babbage is credited with the design of the first modern computer, the "analytical engine," during the 1830s. American scientist Vannevar Bush built a mechanically operated device, called a differential analyzer, in 1930; it was the first general-purpose analog computer. John Atanassoff constructed the first semielectronic digital computing device in 1939.
The first fully automatic calculator was the Mark I, or Automatic Sequence Controlled Calculator, begun in 1939 at Harvard by Howard Aiken, while the first all-purpose electronic digital computer, ENIAC (Electronic Numerical Integrator And Calculator), which used thousands of vacuum tubes, was completed in 1946 at the Univ. of Pennsylvania. UNIVAC (UNIVersal Automatic Computer) became (1951) the first computer to handle both numeric and alphabetic data with equal facility; this was the first commercially available computer.
First-generation computers were supplanted by the transistorized computers (see transistor) of the late 1950s and early 60s, second-generation machines that were smaller, used less power, and could perform a million operations per second. They, in turn, were replaced by the third-generation integrated-circuit machines of the mid-1960s and 1970s that were even smaller and were far more reliable. The 1980s and 90s were characterized by the development of the microprocessor and the evolution of increasingly smaller but powerful computers, such as the personal computer and personal digital assistant, which ushered in a period of rapid growth in the computer industry.
See S. G. Nash, A History of Scientific Computing (1990); D. I. A. Cohen, Introduction to Computer Theory (2d ed. 1996); P. Norton, Peter Norton's Introduction to Computers (2d ed. 1996); A. W. Biermann, Great Ideas in Computer Science: A Gentle Introduction (2d ed. 1997); R. L. Oakman, The Computer Triangle: Hardware, Software, People (2d ed. 1997); R. Maran, Computers Simplified (4th ed. 1998); A. S. Tanenbaum and J. R. Goodman. Structured Computer Organization (4th ed. 1998).
Computer program designed to copy itself into other programs, with the intention of causing mischief or damage. A virus will usually execute when it is loaded into a computer's memory. On execution, it instructs its host program to copy the viral code into any number of other programs and files stored in the computer. The corrupted programs may continue to perform their intended functions while also executing the virus's instructions, thus further propagating it. The infection may transfer itself to other computers through storage devices, computer networks, and on-line systems. A harmless virus may simply cause a cryptic message to appear when the computer is turned on; a more damaging virus can destroy valuable data. Antivirus software may be used to detect and remove viruses from a computer, but the software must be updated frequently for protection against new viruses.
Learn more about computer virus with a free trial on Britannica.com.
Use of a computer-generated system to represent the dynamic responses and behaviour of a real or proposed system. A mathematical description of a system is developed as a computer program that uses equations to represent the functional relationships within the system. When the program is run, the resulting mathematical dynamics form an analog, usually represented graphically, of the behaviour of the modeled system. Variables in the program can be adjusted to simulate varying conditions in the system. Computer simulations are used to study the behaviour of objects or systems that cannot be easily or safely tested in real life, such as weather patterns or a nuclear blast. Simpler simulations performed by personal computers are business models and geometric models. Seealso scientific visualization.
Learn more about simulation, computer with a free trial on Britannica.com.
Experimental method of computing that makes use of quantum-mechanical phenomena. It incorporates quantum theory and the uncertainty principle. Quantum computers would allow a bit to store a value of 0 and 1 simultaneously. They could pursue multiple lines of inquiry simultaneously, with the final output dependent on the interference pattern generated by the various calculations. Seealso DNA computing, quantum mechanics.
Learn more about quantum computing with a free trial on Britannica.com.
Set of ordered instructions that enable a computer to carry out a specific task. A program is prepared by first formulating the task and then expressing it in an appropriate programming language. Programmers may work in machine language or in assembly languages. But most applications programmers use one of the high-level languages (such as BASIC or C++) or fourth-generation languages that more closely resemble human communication. Other programs then translate the instructions into machine language for the computer to use. Programs are stored on permanent media (such as a hard disk), and loaded into RAM to be executed by the computer's processor, which executes each instruction in the program, one at a time. Programs are often divided into applications and system programs. Applications perform tasks such as word processing, database functions, or accessing the Internet. System programs control the functioning of the computer itself; an operating system is a very large program that controls the operations of the computer, the transfer of files, and the processing of other programs.
Learn more about program, computer with a free trial on Britannica.com.
Microcomputer designed for use by one person at a time. A typical PC assemblage comprises a CPU; internal memory consisting of RAM and ROM; data storage devices (including a hard disc, a floppy disc, or CD-ROM); and input/output devices (including a display screen, keyboard, mouse, and printer). The PC industry began in 1977 when Apple Computer, Inc. (now Apple Inc.), introduced the Apple II. Radio Shack and Commodore Business Machines also introduced PCs that year. IBM entered the PC market in 1981. The IBM PC, with increased memory capacity and backed by IBM's large sales organization, quickly became the industry standard. Apple's Macintosh (1984) was particularly useful for desktop publishing. Microsoft Corp. introduced MS Windows (1985), a graphical user interface that gave PCs many of the capabilities of the Macintosh, initially as an overlay of MS-DOS. Windows went on to replace MS-DOS as the dominant operating system for personal computers. Uses of PCs multiplied as the machines became more powerful and application software proliferated. Today, PCs are used for word processing, Internet access, and many other daily tasks.
Learn more about personal computer (PC) with a free trial on Britannica.com.
Two or more computers and peripheral equipment (e.g., printers) that are connected with one another for the purpose of exchanging data electronically. Two basic network types are local area networks (LANs) and wide-area networks. Wide-area networks connect computers and smaller networks to larger networks over greater geographical areas, including different continents. Communications may occur over cables, fibre optics, or satellites, but most computer users access the network with a modem, using telephone lines. The largest wide-area network is the Internet. In the 1990s the World Wide Web was introduced and became the most popular way to access other Internet sites.
Learn more about network, computer with a free trial on Britannica.com.
Computer capable of solving problems by processing information expressed in discrete form. By manipulating combinations of binary digits (see binary code), it can perform mathematical calculations, organize and analyze data, control industrial and other processes, and simulate dynamic systems such as global weather patterns. Seealso analog computer.
Learn more about digital computer with a free trial on Britannica.com.
Use of instructional material presented by a computer. Since the advent of microcomputers in the 1970s, computer use in schools has become widespread, from primary schools through the university level and in some preschool programs. Instructional computers either present information or fill a tutorial role, testing the student for comprehension. By providing one-on-one interaction and producing immediate responses to input answers, computers allow students to demonstrate mastery and learn new material at their own pace. A disadvantage is that computerized instruction cannot extend the lesson beyond the limits of the programming.
Learn more about computer-assisted instruction with a free trial on Britannica.com.
Integration of design and manufacturing into a system under direct control of digital computers. CAD systems use a computer with terminals featuring video monitors and interactive graphics-input devices to design such things as machine parts, patterns for clothing, or integrated circuits. CAM systems use numerically controlled (see numerical control) machine tools and high-performance programmable industrial robots. Drawings developed during the design process are converted directly into instructions for the production machines, thus optimizing consistency between design and finished product, and providing flexibility in altering machine operations. These two processes are sometimes grouped as CAE (computer-aided engineering).
Learn more about CAD/CAM with a free trial on Britannica.com.
Study of computers, their design (see computer architecture), and their uses for computation, data processing, and systems control, including design and development of computer hardware and software, and programming. The field encompasses theory, mathematical activities such as design and analysis of algorithms, performance studies of systems and their components, and estimation of reliability and availability of systems by probabilistic techniques. Because computer systems are often too large and complicated for failure or success of a design to be predicted without testing, experimentation is built into the development cycle.
Learn more about computer science with a free trial on Britannica.com.
Language in which a computer programmer writes instructions for a computer to execute. Some languages, such as COBOL, FORTRAN, Pascal, and C, are known as procedural languages because they use a sequence of commands to specify how the machine is to solve a problem. Others, such as LISP, are functional, in that programming is done by invoking procedures (sections of code executed within a program). Languages that support object-oriented programming take the data to be manipulated as their point of departure. Programming languages can also be classified as high-level or low-level. Low-level languages address the computer in a way that it can understand directly, but they are very far from human language. High-level languages deal in concepts that humans devise and can understand, but they must be translated by means of a compiler into language the computer understands.
Learn more about programming language with a free trial on Britannica.com.
Use of computers to produce visual images, or the images so produced. Creating computer graphics requires a digital computer to store and manipulate images, a display screen, input/output devices, and specialized software that enables the computer to draw, colour, and manipulate images held in memory. Common computer graphic formats include GIF and JPEG, for single images, and MPEG and Quicktime, for multiframe images. The field has widespread use in business, scientific research, and entertainment. Monitors attached to CAD/CAM systems have replaced drafting boards. Computer simulation using graphically displayed quantities permits scientific study and testing of such phenomena as nuclear and chemical reactions, gravitational interactions, and physiological systems. Seealso computer animation; computer art.
Learn more about computer graphics with a free trial on Britannica.com.
Any use of a computer as an instrument to further illegal ends, such as committing fraud, trafficking in child pornography and intellectual property, stealing identities, or violating privacy. Cybercrime, especially through the Internet, has grown in importance as the computer has become central to commerce, entertainment, and government. The international nature of cybercrimes has led to international cyberlaws.
Learn more about cybercrime with a free trial on Britannica.com.
Programmable machine that can store, retrieve, and process data. Today's computers have at least one CPU that performs most calculations and includes a main memory, a control unit, and an arithmetic logic unit. Increasingly, personal computers contain specialized graphic processors, with dedicated memory, for handling the computations needed to display complex graphics, such as for three-dimensional simulations and games. Auxiliary data storage is usually provided by an internal hard disk and may be supplemented by other media such as floppy disks or CD-ROMs. Peripheral equipment includes input devices (e.g., keyboard, mouse) and output devices (e.g., monitor, printer), as well as the circuitry and cabling that connect all the components. Generations of computers are characterized by their technology. First-generation digital computers, developed mostly in the U.S. after World War II, used vacuum tubes and were enormous. The second generation, introduced circa 1960, used transistors and were the first successful commercial computers. Third-generation computers (late 1960s and 1970s) were characterized by miniaturization of components and use of integrated circuits. The microprocessor chip, introduced in 1974, defines fourth-generation computers.
Learn more about computer with a free trial on Britannica.com.
Computer in which continuously variable physical quantities, such as electrical potential, fluid pressure, or mechanical motion, are used to represent (analogously) the quantities in the problem to be solved. The analog system is set up according to initial conditions and then allowed to change freely. Answers to the problem are obtained by measuring the variables in the analog model. Analog computers are especially well suited to simulating dynamic systems; such simulations may be conducted in real time or at greatly accelerated rates, allowing experimentation by performing many runs with different variables. They have been widely used in simulating the operation of aircraft, nuclear power plants, and industrial chemical processes. Seealso digital computer.
Learn more about analog computer with a free trial on Britannica.com.