Information Technology Reference
In-Depth Information
There are two things to note about this reduction. First that the stored- program is
not the only way to achieve a Turing complete machine, such a machine could be
achieved by a mechanism that stored data and instructions in completely different
formats. Most obviously a machine with hardware implemented conditional branch
and unlimited potential for rewritable storage of separate instructions and data, such as
magnetic tapes could be Turing complete. The most striking example of the potential
to achieve a universal machine by other means was Raùl Rojas' demonstration that
German computer pioneer Konrad Zuse's Z3 machine could in principle perform any
finite computation a Turing machine could, if it were given an infinite tape and indefi-
nite intermediate storage for data. This is despite the Z3's incredibly limited repertoire
of capabilities. The Z3 could perform basic arithmetic as directed by a long tape of
instructions. It was not however a stored-program, rather the program was fixed with a
small rewritable storage for numerical data. Also the Z3 could not perform a condi-
tional branch, except to stop under certain conditions such as a divide by zero error.
Rojas demonstrated that a branch can be simulated on such a machine by carrying out
both paths of the branch and negating, via multiplication by zero, any contributions
from the path that would not be taken by a genuine branching machine. [4]
The second thing to note is that as narrowly defined a stored-program machine
need not have any resemblance to the machine described in the “Draft Report.” A
machine with the basic stored-program might have no hierarchy of memory possess-
ing only one form of storage, such as say a rewritable tape, or might store and calcu-
late with the same mechanism in a massively parallel system. Despite this, “von
Neumann architecture” and “stored-program computer” are used interchangeably, for
example Wikipedia has a single entry for both terms. [5] The equation of these two
terms strips them of some important connotations. For example, the problem of deliv-
ering new instructions and data to the processing unit of a computer from its memory
has become known as the “von Neumann bottleneck”, a clear reference to the features
of the design from the “Draft Report” rather than a feature of a narrowly defined
stored-program machine. [3]
The difficulty of defining the essential characteristics of the computer is already
widely noted in the literature. The 2000 anthology of history papers, The First Com-
puters, embraces the ambiguity of the concept and contents itself with discussing a
broad range of machines in the 1930s, 40s and early 1950s as the first computers, but
not accepting any one of these as the singular first computer. [6] My aim in this essay
is to expand on this point detailing some non-material aspects that separate computers
from other calculating machines. While certain hardware characteristics may be nec-
essary to create a machine with the capabilities of the modern computer, they alone do
not constitute the defining essence of the machine. Rather the practices, applications
and expectations that surround a machine play a key role in defining what it is.
2 The IBM SSEC a Stored-Program Computer?
Part of my inspiration for this paper has been my research on astronomer Wallace J.
Eckert (no relation to Presper Eckert) and his work at Columbia University and IBM.
At IBM, Eckert was associated with the development of only a few machines. One of
these was the Selective Sequence Electronic Calculator (SSEC) dedicated in January
Search WWH ::




Custom Search