Untitled Document
Untitled Document
www.expresscomputeronline.com WEEKLY INSIGHT FOR TECHNOLOGY PROFESSIONALS
19 October 2009  
Untitled Document
Sections

Market
Management
Technology
Technology Life

Express Intelligent Enterprise

Events

Technology Senate
Technology Sabha

Services
Subscribe/Renew
Archives
Search
Contact Us
Network Sites
Exp.Channel Business
Express Hospitality
Express TravelWorld
Express Pharma
Express Healthcare
Group Sites
ExpressIndia
Indian Express
Financial Express

Untitled Document
 
Home - Technology Life - Article

Manage-Wise

Enter the universal machine

A Programmable Machine, by its nature, can perform many processes, one for each possible program. A Ropebot can travel as many paths as there are ways to wind rope around its axle. As a result, a programmable machine has a greater degree of flexibility than many other kinds of machines. A toaster toasts and a hammer hammers; just try toasting bread with a hammer or driving nails with a toaster if you think otherwise. For this reason, toasters and hammers are both special-purpose machines.

Some devices, such as a combination TV-DVD-VCR or a Swiss Army Knife, can perform multiple functions. But no matter how many ways you can slice and dice with a Swiss Army Knife, you can’t change its operation by programming it. Therefore, a Swiss Army Knife is a multifunction machine, but not a programmable machine.

Not all programmable machines, however, are artificial invention genies. A Jacquard Loom will never produce an invention no matter how cleverly you program it; it will only produce a cloth with a new pattern, which we would not consider to be an invention no matter how new it might be.

Computers going universal

A modern computer, unlike a Jacquard Loom, can be programmed to perform a nearly infinite number of functions. In fact, you could program a single computer to act as the guts of a Jacquard Loom and a Hollerith tabulator simultaneously. You are familiar with the extreme flexibility of modern computers just from using them. The computer I am using to write this book has software installed on it for writing documents, browsing the World Wide Web, compressing and decompressing files, playing music and video, and protecting itself against viruses, just to name a few. Furthermore, I can install new software on the computer to enable it to perform new functions whenever I please, even if the designers of the computer itself never dreamed of those functions. I can even run multiple pieces of software simultaneously on the same computer, as you know if you have ever checked your email in one window while browsing the Web in another. Try doing all of that with a Hollerith tabulator.

Modern computers are often called general-purpose machines or universal machines as a result of this shape-shifting ability. Recall the analogy to drill and drill bit, but now take it one step further. Attaching a sanding bit to a drill doesn’t just enable the drill to sand surfaces; it effectively transforms the drill into a power sander. The same is true of a computer. A computer with no software installed on it is a universal machine, a blank slate pregnant with possibilities, none of which has yet been unlocked. Install word processing software on the computer, however, and you effectively transform the general-purpose computer into a special-purpose machine for writing documents.

Concept of universal machine

The term universal machine derives historically from Alan Turing’s use of it in a seminal 1936 paper in which he demonstrated that a longstanding problem in abstract mathematics posed by mathematician David Hilbert at the turn of the 20th century could not be solved. Incredibly, in retrospect, Turing described in principle how a universal machine could work merely for the purpose of proving his primary mathematical conclusion. Turing, in other words, laid the theoretical foundation for all modern computers as part of an intellectual detour.

Although Turing’s original concept of the universal machine was of an abstract machine, not a physical one, it wasn’t long before he and others recognized that a real, physical, universal machine could be built. Although such pioneers built a variety of machines with increasing degrees of programmability in the years after Turing’s original paper was published, it was not until 1945, when John von Neumann formulated a feasible way to implement a “stored program computer” in a real machine, that the dream of building working universal machines became a reality.

A computer designed according to von Neumann’s stored program architecture consists of a processor and a main memory connected by a “bus”. The primary novelty of von Neumann’s design lay in the fact that you could store an entire computer program and the data on which it operates in a single uniform memory. By comparison, recall the Hollerith tabulator with a plugboard, in which the instructions were embodied in the wired plugboard, while the data to be processed by the machine were embodied in a distinct set of punched cards. Now consider a program with just a single line of code (“Add 2 + 4”) in which Add is the instruction and the numbers 2 and 4 are the data. In a von Neumann computer, such a program could be represented in a single sequence of bits in memory, such as 011010100000001000000100.

Genies in hiding

One significant benefit of this design was that the program instructions and data could be modified while the program was running, thereby opening the door to much more flexible and powerful programs than were possible with previous generations of computers. Furthermore, making it possible to program a computer merely by storing software inside the computer’s memory eliminated the need to engage in the tedious rewiring that was necessary to program early computers. The von Neumann architecture has remained the basis of most modern computers ever since; every computer you have ever used most likely has been a von Neumann computer.

The universal machine, as pioneers such as Turing and von Neumann originally envisioned it, was capable of performing any computation. It probably isn’t immediately obvious, however, how you could ever use such as souped-up calculator to produce an invention no matter how cleverly you might program it. You can perform computations using a handheld calculator until you are blue in the face and it will never morph into a new automobile engine or cancer-curing drug.

Also, computers are the ultimate artificial chameleons. We use them every day to mimic everything from old-fashioned typerwriters to wristwatches to stereo systems. Although we now take the ubiquity and flexibility of computers for granted, most early compurter engineers did not envision that computers would ever be so broadly applicable.

Excerpt from ‘The Genie In The Machine’ by Robert Plotkin. Reproduced with permission © 2009, Penguin Portfolio. Price: Rs 599.

 


Untitled Document
Untitled Document

FEEDBACK: We would love to hear from you -- what you like about our content, what you dont, and even how you think we can improve. Please send your feedback to: prashant.rao@expressindia.com


© Copyright 2001: The Indian Express Limited. All rights reserved throughout the world. This entire site is compiled in Mumbai by the Business Publications Division (BPD) of The Indian Express Limited. Site managed by BPD.