PRELIMINARY DISCUSSION OF THE LOGICAL DESIGN OF
AN ELECTRONIC COMPUTING INSTRUMENT
BY
Arthur W. Burks
Herman H. Goldstine
I
John von Neumann
TAS LE OF CONT~NTS
Preface
l.O.Principle Components of the Machine
1.1 Introduction 1
1.2 storage and execution of orders 1
1.3 Use of one memory organ for both orders and numbers 1
1.4 The contro 1 2
·1.5 The arithmetic organ 2
1.6 Input and output organs 2
2.0. First Remarks on the Memory
2.1 Introduction 3
2.2 Memory requirements of various types of problems 3
2.3 Size of memory 4
3.0. Firs t Remarks on the Control am Code
3.1 ·3.2 3.3 3.1+ 3.5
3.6 3.7
Introduction Arithmetic orderS
Memory substitution orders Transfer of orders to the control Shifting the contro 1
Inputoutput orders
Conclusion
4 5 5 6 6 6 7
4.0, The Memory Organ
4~1 ~JPes of memory
4.2 Choice of Selectron for memo~
4.3 Choice of parallel representation of numbers 4.4 Svrl.tching Selectrons in pa rallel
1,.5 Requirements of tape memory
4.6 Library of tapes
4,. 7 Making aad reading tapes
4.8 Visual indication of results 4.9 Sele c tron regis ter
7 9 9 9
10 11 11 12 12
5.0. The Arithmetic Organ
5.~1 Introducticn
5.2 Choice of b iriary system 5.3 Floating bine.rypoint
5.4 Choice of builtin e.rithrre tic opera t Lons 5.5 The Accumulater
5.6 Average length 0 f carry s eqi ences 5.7 Negative numbers
1.2 12 14 15 17 I? 19
".
;:
TABLE OF CONTENTS (cont'd)
5.8 Mu1tiplicC'.ticn 19
5.9 Complement corrections f0r multiplication 21
5.10 Multiplication in static ani dynamic Accumulators 22
5.11 Roundoff procedures  23
5.12 Addition with the floa ti ng binary point 29
5.13 Division 30
6.0. The Oirrt ro L
6.1 6.2 6113 6.4· 6.5 6.6
6.7 6,8
Introduction
SWi tehing the memory Decoding ')rders
Transfer of orders to the contro 1 SynchI'O ntzed co n tr6.1 c ircui ts Orders for the 'internal operations 6.6.1 .Addition
6.6.2 Register transfers 6.6.3 Multiplication 6.6.4 Division
6.6.5 Meoory substitution 6.6.6 Shift of co ntrol .
6. 6,7 Unit shifts en d the floating binary po in j:.,/ Timing 0 ircui ts Inputoutput orders
6.8.1 Tare orders
6.8.2 Binary decimal conversion 6~8.3 Viewing tubes
6.8.4 Typewriters and printers 6.8.5 Finish signal
.'
Table 1 Summary of orders for the internal opera tions
33 33 34 36 38 41 42 43 43 45 45 46 46 48 49 49 52 52 53 53
This report has been prepared in accordance with the terms of
Contract ~:l 360340RD748l between the Research and Development Service,
Ordnance Department, U. S. Army and the Institut,e for Advanced StudYG
It is intended as the first of 'two papers dealing Hith some aspects of
the ov~rall logical considerations arising in connection with electronic
computing machines. R.n attempt is made to give in this, the first half
of the report , a general picture of the type of Lnst rument now under '
consideration and in the second half a study of how actual math€ll1atical
problems can be coded, Le., prepared in the language the machine can
understand.
It is the present intention to issue from time to time reports
covering the various phases of the project. These papers will appear
whenever it is felt sufficient work has been done on a given aspect,
e.ither logical or experimental to justify its being reported.
The authors also "wish to express their thanks to Dr. John
Tukey of Princeton University for many valuable discussions and
suggestions.
The Institute for Advanced Study 28 June 1946
Art hur W. Burks
Herman H. Goldstine
Jofu! von Neumann
,"
PP~LIMINARY DISCUSSION OF THE LOGICAL DESIGN OF
P:.N ELEC7i1.Gr~IC COli...5?UTING INSTRUMENT
1,1. Inasmuch 8.S the completed device will be a generalpurpose
computing machine it should contain certa.in main organs relating to arith
met i.c , memorystorageJ control and connection w.ith the human operator.'
I t is intended t.hat the machine be fully aut.omat.Lc in character, 1. eo,
independent of the human operator after the computation starts. A fuller
discussion of the implications of ,this remark will be given in :3 below 0
L2. It is evident that the machi.ne must be capable of storing
in some manner not only the digita1 information needed in a given
computation such as boundary values, t ab.Les of functions l such as the
equation of state of a fluid) and also the intermediate results of the computation (which may be wanted for varying lengths of time), but also the instructions which govern the actual routdrie to be performed on the
numerical data. In a specialpurpose tnachifl€ these instructions are an
int.egral part of the device and constitute a part of its design structure.
For an allpurposE' machine it must be possible to instruct the device to
carry out any whatsoever computation that can be formulated in numerical
terms. Hence there must be some organ capable of storing these program
orders. There must, moreover, be a uhit which can understand these
instructions and order their execution.
1. 3. Conceptually we have discussed above two different forms of memory: storage of numbers and storage of orders. If, however, the
orders to the machine are reduced to a numerical code and if the machine
2
can in stzne fashion distinguish a number from an order, the memory qrgan can
be used to store both numbers and orders, The coding of orders intO
nume r.i,c fQ:'."m is di, scuased in 6.,;3 be.Low ,
.L/~., If the memory for orders is merely a storage organ there must
exiat, an organ ,.;h::. ch can aut omat.I cally execute the orders stored in tho.
mmflO:.y. \1\',.,. o:i3..ll call this crg~ill the Control.
10 ,r; ' Inasmuch as the device is to be a computd ng machine there
must be a..11 arithmetic organ in it which can perform c ert.ain of the elem8n
ta:'y c.ritr..r!l.ctic opcrat.ione, There wi.ll be, therefore, a unit capable t;f
adding, subtracting, multiplying and di,viding. It will be seen in 6e6
below that it can also perform additional operat.tons that occur quite
:frGquGL1tly~
The operations that the rnacni.ne will view as e.Lemont ary are
clearly th033 LN(lich are wired into themachi .. '18c To iLJ .. ust rat.e, the
operation of multiplication cculd be elirn.:i.nated from the device as an
el.ernent.ary process if one were willing to view it ~s a properly ordered
series of additions. uimilar' remarks apply to division. In. general, the
inner economy of the arithmetic unt t is deterrrLi.ned by a compromise between
the desire for speed of' operation  a nonelementary operation will genarally
take a long time to perform since it is constituted of a series of orders
given by the control  and the desire for simplicity, or cheapneas , of the
L6. La.stly there must, exist devices, the input and output orc;J,;:".'"" whereby the human opera.t','~ and the machine can communi.cat e with each ot.hc r ,
This organ will be seen in 4.5 below, where it is discussed) to const.itutl)
a accondary form of automatic me.mory ~
3
. 2.,0 F;.rst E!,:..JIlRrks on the Memory
2,,1. It is clear that the size of the memory is a critical censidera~io~ in the design of a satisfactory generalpurpose computing machine, ',18 proceed to d.i.scus s what quanta. ties the memory should store fer vari.oue types of ccmput.at.i.ons.
2,2. In the solution of partia.l different;ial equations the storage requiremen::'s are likeljT to bl3 quite extensive. In general, one
Hl'.1St remember not only the initial and boundary conditions and any arbitrary functions that enter the prob.l.em but also an 6xtensiv€ number of intexrnediate results.
a) For equat.i.cns of parabolic or hyperbo.l.i c type in twa independent variables the integration process is essenti;:ll.ly a doub.Le Lnduct i 0::': To
fine the values of the dependent variables at time ti+ :\ t one integrates
with respect to x from one boundary to the ot.her by utilizing the, data at
time t as if they were coeffie:ie:lts "i'lhic~1 cont.ri.but e to defining the problem
"of this integ"r'a"Cion.
Nut only must, the memory have suf'fd.o.l ent, room to store these int.ermediate data but there must be provisions whereby these data can later be reaoved , Lev;; at the end of the (t+Llt) cycle, and replaced by the
cor responci ng dat a for the (t~ 2 /\ d cycle. This process of removi ng data from the memory and of replacing them with new information must, of cour se , be done quite aut omat.Lca.Lly under the direction of the control.
b ) For total differential equations the merllory requirements are clearly similar to) but smaller than, U~Re discussed in a) above.
c) Problems that are solved by iterative procedures such as systems of linear equations or elliptic partial differential equations) treated by relaxation t.echru.ques, may be expected to 'require quite ext.enaive
4
memory capac; ty e The memory requirement for. such problems is appnrently
much gr eat er t.har, f0r those problems .in a) above in which one needs only to
store :t;:1.f'~'i:lr.i'l.{·,ion corresponding to the instantaneous value of one variable
(t, in a; abcv e , w21::\.le now entire so.lut.Lons (covering all values of all
va~'ic:.t:_e.: ~ r.;·.fr, b~, stored. Thj c apparent discrepancy in magnitudes can,
hOW8ver, b€ ,Yl'J.8\·,hJ.t overcome by the use 0:' t.echnLques which permit the
use of much coarser integration meshes in this case, than in the cases
203. It is reasonable at t.hi.s time to build a machine tha7, can
convenrent.Iy handle problems several orders of magnitude more comp.l ex than
are now hand.l ed by existing machi.nes, e.l.ect.roru,c or al.ectir'omecharu.cal.. We
consequent Iy plan on a fully aut.omat.i.c elBct.:"'oflic st.crage fac:i.l:.ty of about
4, OGO numbers of 40 binary dig:i ts e",ch, ',le believe th2.t this exce eds the
'capacities ~"equ:b.'ed for pronl eas that one deaf.s "With at present by a factor
of about 10. In .;dd:.:cion, WE: propose . we ~2.ve a subsidiary memory, which is
also ;.'ully aut.omat.i,c , of much Larger c apacity on some med.i.um such as
Firs! ... qe;r'.3.l~ks 0': the Cont.r'o.L and r~oc1.e
............._ ......... .• __ ~~_~_ ._._. ~~__.._ L ................. _.·.·_ .... ,_ •• ~ • .__;.~. __ , __ ••••• ~' ... ,.._
301. It is easy to see by fOI·mal<l_cg::"cal met.hods , that there
€xj_d codes tMt are in abst rect o adequate to control and cause the execut Lon
of any sequence of operations whi.ch are i:;.c:L v.l,.dua~.J.y avaf.Lahl,e in br.e
machine and which are, in thei::: entirety, conceivable by the probl.emp'l.ar ne».
The really decisive eonsiderations from the preser.t poin.t of view, in
selecting a code, are isor'e of a practical nature: Sir£1_plicity of the eq'l:\.~
men.t demanded by the code) and thE; clarity of its application to the
acbua.Ll.y important problems together with the speed of its handling of
th038 problems. It would take us much too far to discuss these questions
5
at all ge':").erally or from first principles. We will therefore restrict
ourS2::;_',SS ': 6 ena'Iyz.i.ng only the type of code which we now envisage for our
mach ire ,
~\: 2. 'l'he re must certai!1~;r be iP,st ruct ions for perfo_rming t.he
nd be ·:;'Q_':l;J.e':;ely giver! untd.L the adt'r;iQ.:st.ic unit is described ina little
mar") det.ad.L,
J,,3, It must be possible to t.ransf'er data ,froCj the memory to the
arit!,",'ll€'~ic organ and back agai n , L'1 transferring infor:.w.tj_on from the
arithmetic organ back into the memory there are' two typea'we rnuat distingu.tsh~
I'rans I'ere of numbers ac such and t.ranef'ers of numbers wr:oich are part s of
~
The second case is more subtle a;::·_d serves ':.0 iLl:'Btrate the generalit.y and
si,glp}_:'ci:'y of t.hs syste_'ll, Cons.i.de r the pro9lem of .int.ecpo.Lat lon in the
syste:a .. _ Let us ~u?>::se that we have f'o rmuLat.ed. tll',) riecesaary instructio:1s
for perfom.iog &'1 interpolation of orde r n i:1 a sequence of data. The
\ .
exar~t Locat.i.cn Ln the memory of t he In I'" .1_) cusnt.i, ties that bracket the
des.i.red flJl1C'::'iot:&l ve.Lue i:,} o~ course, a [Qr:lc:.i or. of t he argument" This
argument pro':lably is found as the resu.::. t. of A. ccmput.ati.on in the maeha.ne,
,c
''!'Ie t1::'.lS need an orjer whi~h can subst:_tLte a muter into a given order
 it! the case of i_:,tf;rpolation the Locat.i.on of t.he nearest argument i.n our
'".ab::r_e to the desired va.Lue , by means of ouch an order the results of a
computat.Lor; can be introduced Lnto tae Lnst.ruct.i.ons gover rring that or a
d:'fferent c oruP:..lt at ion . 'I'his makes :'+, possible for a sequence of instruc::,l'"ll:S
to be used w::'th d::fferent. sets of numbers located in different parts of the
To summarize, trans f'ers into the memory w.j~l be of two sorts:
Total subst.It ut.Ions , whereby the quantity previously stored is cleared out
6
and replaced by a new number. l'artial substitutions in which that part of an order containing a memory locationnumber is replaced by a new memory location number.
3.4. It is clear that one must, be able to get numbers from any part of the memory at any time. l'he treatmen:t in the case of orders can, however , be more methodical since one can at least partially arrange the control instructions in a linear sequence. Consequently the control organ will be so constructed that it will normally proceed from place n in the memory to place (n11) for its next instruction.
3.5. 'rhe utility of an automatic computer lies in the possibility of using a given sequence of instructions repeatedly, the number of times it is iterated bei.ng either preasai.gned or dependent upon the results of t.he computation. When the iteration is completed a different sequence of orders is to be followed, so we must, in most cases, give two parallel trains of orders preceded by an instruction as to ~,!hich routine is to be followed. This choice can be made to depend upon the sign of a number (zero being reckoned as plus for machine purposes). Consequently we introduce an order (the conditional transfer order) which will, depending on the sign of a given nwnber, cause the proper one of two routines to be executed.
Frequently two para.Ll.e.L trains of orders terminate in a common ~outine. It is desirable, therefore, to order the control in either case
':.0 proceed to the beginning point of the common routine, Tl1isunconditi('_~·l<).:'. transfer can be achievLd either by the artificial. use of a conditional .I:.ransfer or by the introduction of an explicit order for such a transfer.
3.,6. Finally we need orders which will integrate the inputout.put devices with the machine. These are discussed breifly in 6,8.
7
3.7. ~Ve proceed now to a more detailed discussion of t.he machine.
Inasmuch as cur experience has shown that the moment one chooses a given
component as the elementary memory unit .one has also more .or less determined
upon much of the balance 9£ the machine, we start by a consideration of the
memory organ. In attempting an exposition of a highly integrated device
like a computing machine we do not find it possible, however, t,o give an
exhaustd.ve di scuasfon .of each organ before completing its description. It
is .only in the final block diagrams that anything approaching a complete
unity is achieved.
4.0. The Memory Organ
~
4.1. Ideal.ly one would desire an indefi..'1.itely large memory
capacity such that any parti cular 40 binary digit number or word would be
immedia tely  L, e., in the order of 1 to 100 1" s  available and that
words could be replaced with new words at about the same rate. It does not
seem possible physically to achieve such a capacity. We are therefore
forced to recognize the possibility of constructing a hierarchy of memories,
each of which has greater capacity than the preceding but which is less
quickly accessible.
The most common forms of st.o rage in electrical circuits are t he
flipflop, the gas tube, and the electromechanical relay. To achieve a
Demory of n words would, of course, require about 40 nsuch elements,
exclusive of the switching elements. V{e saw earlier (cf', 2.2) that a fast
memory of several thousand words is not at all unreasonable for an a11 purpose instrument. Hence, about 105 flipflops or analogous elements ~ould
be required! This would, of course, be entirely impractical.
We must therefore seek out some more fW1damental method of storing
electrical information than nas been suggested above. One criterion for
8
such a storage mediwn is that the indivicual storage organs, which
accomodate only one banary digit each, should not be macroscopic components,
but rather microscopic e.Lemerrt s of some suitable organ. They would then,
of course, not be identified and swi t.ched to by the usual macroscopic wire
connections, but by some functional procedure in manipulating that organ.
One device which displ&ys this property to a marked degree is
the iconoscope tube, which has a resolution of about 500 by 500. One is
accordingly led to consider the possibility of storing electrical charges
on a dielectric plate inside a cathoderay tube. Effectively such a tube
is nothing more t han a myriad of electrical c apac.i.t.ors which carl. be connected
into the circuit by means of an electron beam,
At the present time the Princeton Laboratories of the Radio
Corporation of America are engaged in the develop..rnent of a storage tube,
the Selectron, of the type we have mentioned above. This tube is also
planned to have a. nonamplitudesensitive switching system whereby the
electron be&~ can be directed to a given spot on the plate within a quite
smal.L fraction of a millisecond. Inasmuch as the storage tube is the key
<omponent; of the machine envisaged in this report we are extremely fortunate
in having secured the cooperation of the RCA group in this as well as in
v""rious other developments.
An alternate form of rapid memory organ is the feedback delay
line described in various reports on the EDVAC, Inasmuch as that device
,
has been so clearly reported in those papers we give no fUrther discussior
There are still other physical and 'chernical properties of matter in the
presence of electrons or photons that might be considered but since none .is
yet beyond the early discussion stage we shall not make further mention of
them. \
9
402. vie shall accorrtl ng'ly assume throughout the bal.ance of this
report that the Select ron is the modus for storage of w!1Jrds at electronic speeds. l1.S now planned, this tube will have a capacity 01 212 = 4)09b:::~·4,OOO
binary digits. To achieve a total electronic storage of about 4jOOO words we propose to use 40 aal.ect.rons , thereby ach iev.ing a memory of 212 words of
40 binary digits each.
4.3. There are two possible means for storing a particular word
. \
in the select ron memory  or in fact in either a delay line memory or in a
storage tube with amplitudesensitive deflection. One method is to store
the entire word in a given tube and then to get the word out by picking
out its respective digits in a serial fashion. The other method is to
store in corresponding places in each of the 40 tubes one digit of the word.
To get a word from the memory in this scheme requi.res, then, one switching mechanism to which all 40 tubes are connected in paral.I eL Such a switch
ing scheme seems to us to be simpler than the technique needed in the
serial system and is, of course, 40 times faster.
vie ,accordingly adopt the
,
p~rallel procedure and thus are led to consider a socalled parallel machine,
as contrasted with the serial principles be.ing considered for the EDVAC.
The: essential difference between these two systems lies in the method of
performing an addition: In a parallel machine all corresponding pairs of
digits are added simultaneously, whereas in a serial one these pairs are
added serially in time.
4.4. To summarize, we assume that the fast electronic memory
consists of 40 selectrons which are switched in parallel by a common sw.~"~::.~:·~
ing arrangement. The inputs of the switch are controlled by "the Control
~ Oreon•
10
r>;
f·
4.5. Inasmuch as a great many highly important classes of problems require a far greater total memory than 212 words, we now consider the next
stage in our storage hierarchy. Although the solution of partial differen
tial equations frequently involves the manipulation of many thousands of
words, these data are generally.required only in blocks which are well
within the 212 capacity of the electronic memory. Our second form of storage
then can be a medium whi.ch is controlled by the main Control Organ of the
computer and is thus an integral part of the system, not requiring human'
intervention.
There are evidently two distinct problems raised above, One can
choose a given meditun for storage such as teletype tapes, magnetic wire or
tapes, movie film or similar media. 'i'here still remains the problem of
e.utomatic integration of this storage medium with the machine. This
integration is achieved logically by introducing appropri.ate orders into
the code which can instruct the machine to read or write on the medium, or
to move it by a given amount or to a place with given characteristics~ We discuss this question a little more fully ~n 608.
Let us return now to the question of what properties the secondary
storage medium should have. It clearly should be able to store information
for periods of time long enough so that only a few percent of the total
computing time is spent in reregistering information that is "fadi.ng" off,
It is certalnly desirable, although not i.mperative, that information can b e
erased and replaced by new data. The medium should be such that it can 1:.;>
controlled, i.e., moved forward and backward, automatically. This cons i.d e v .,/
tion makes cerh.in media, such as punched cards, undes.l rab.l.e , While card.:
can, of course, be printed or read by appropriate enders .f'rom some machine,
they are not well adapted to problems in which the output data are fed
11
directly back into the machine, and are required in a sequence which is nonmonotone with respect to the order of the cards. The medium should be capable of remembering very large numbers of data at a much smaller price than electronic devices, It must be f'asb enough so t hat, even when .it has
to be used frequently in a problem, a large percentage of the total
solution time is not spent in getting data into and out of this medium and achieving the desired positioning on it. If this condition is not reasonably well met, theadv~~tage9 of the high electronic speeds of the machine will belargely lost.
Both light or electronsensitive film and magnetic tapes, whose
, motions are controlled by servomechanisms integrated with the Control Organ, seem to fu1fill our needs reasonably well. In a subsequent section we discuss a few problems to show the overall efficiency of bhi s system using magnetic tapes.
4.6. Lastly our memory hierarchy requires a vast quantity of' dead storage, i. e., storage not int egrat ed with the machine. This storage requirement may be satisfied by a library of tapes that can be introduced into the machine when desired and at that time became automatically controlled. Thus our dead storage really is nothing but an extension .o.f our secondary storage medium. It differs from the latter only in its avai1ability to the machine.
4e 7. 1/;1e impose one additional requirement on our secondary memory. It must be possible for a human to put words onto the tape or other substance used and to read the words put on by the machine. In L!.:_~·~ manner the hwnan can control the machines functions. It is now clear th,::'~ the secondary storage medilliu is really nothing other than a part of our ir.putoutput system.
12
4.8. There is another highly important part of the inputoutput
which .we merely mention~t this time, namely, some mechanism for viewing
graphically the results of a given computation. This can, of course, be
achieved by a selectronlike tube which causes its screen to fluoresce
when data are put on it by an electron beam.
4.9. l"or definiteness in the subsequent discussions we assume
that associated with the output of each selectron is a flipflop. This
assemblage of 40 flipflops, we term the ~elec.tron Regi.st.ez,
5~1. In this chapter we discuss the features we now consider
desirable for the arithmetic part of our machine. tie give our tentative
conclusions as to which of the aritnnetic operations should be built into
the machine and which should be programmed. Finally, a schematic of the
arithmetic unit is qescribed.
5.2. In a discussion of the arithmetical organs of a computing

machine one is naturally led to a consideration of the number system to be
adopted. In spite of t.he longstanding, tradition of building digital
machines in the decimal system,. we feel strongly in favor of the binary
system for our devi.ce s , Our fundamental unit of memory is naturally adapted
to the binary system since we do not a~tempt to measure gradations of
charge at a particular point in the selectron but are content to df.st.i.ngui.eh
two states. In delay line memories one is also content m.erely to recogru.ze
the presence or absence of a pulse, the flipflop again is truly a binary
device. Hence if one contemplates using a decimal system with either the
iconoscope or delayline m~mory one is forced into a binary coding of the
decimal system  each decimal digit being represented by at least a tetrad of binary digits. _ Thus an accuracy often decimal digits requires 40
13
binary digits. In a true binary representation' of numbers, however, only
3 d"'t ff" t hi ., f 1010
4 191 s su 1ce a ac eve a preC1S10n 0 •
The use of the binary
system is therefore somewhat: more economical of equipment than is the
decimal.
An even more significant virtue of the binary system as against
the decimal is the greater simplicity and speed with which the elementar.y
operations can be performed. To illustrate, consider multiplication by
repeated addition. In binary multiplication the product of a particular
digit of the multiplier by the multiplicand is either the multiplicand or null according as the multiplier digit is 1 or Or In the decimal system,
however, this product has ten possible values between null and 9 times the
multiplicand, inclusive. Of course", a de cdma.L' number has only log,,..,2·~,.3 J..,_)
times as many'digits as a binary ,number of the same accuracy, but even so
snultiplication in the decimal system is considerably longer than in the
binary system. One can accelerate decimal m~tiplication by complicating
the circuits, but this fact is irrelevant to the point just made since
binary mul.t.ipl.Lcatd on can Lik ewi.se be accelerated by adding to the
equipment. Similar remarks may be made about the, other operations.
The one disadvantage of the binary system from the human point of
vierl is the conversion problem. Since, however, it is completely known h:J"N
to convert numbers from one base "to another and since this conversion can ~c
effected solely by the use of the usual arithmetic processes there is no
reason why the computer itself cannot carry out this conversion. It mig>:'
be erroneously argued tqat this is a time consurning operation. .t3ut a
generalpurpose computer, used as a scientific research tool, is called
upo~ to do a very great number of multiplications upon a relatively smalJ amount of input data, &~d hence the time consumed in the decimal to binary conversion is only a trivial percent of the total computing time. A siirtilar remark is applicable to" the output data.
. ' ,
14
In the preceeding discussion we have tacitly assumed the: desirability
_ of introducing end ,\'ithdrawi_ng data in the decimal syst.em , 'I/le feel, however,
no great reverence for the base 10 in a scientific instrument and consequently
will probably attempt to train ourselvGs to use numbers base 2 or 8. (The
reason for the base 8 is this: ~ince B is a power of 2 the convers~on to
binecry is tri,vial; since 8 is about of the; size of 10 it violates weny of our
habits less b~dly thun base 2Q)
5u30 Several of the digitcl computers being built or pl.anned jon
t:cis country Lnd Fngl.and are to contain a socalled "f'Loatdng decima.L po.int.".
This. is a mechani.em for expre0sing each word as a ch~ac!:. eristi c and a
marrt.Lssa  e < g" ~ 123v45 wou.Ld be carried in the rnachi.ne as (0" 123i,,5; 03),
~';l"lere the three is the exponent of 10 associated ''l'ith the 'number. Tner e
•
r
,~.rpe?_r to be two l'J.ajor PLl2:'lJOSCB in a (;i'J.oe.1inrj;)! decimal point system both of
~j!',i.c~";. arise from the fact that the number of digits in a word is a constant,
::"i:xec~ by deoign considerations for each particular machi.ne , The first of t.hese
'?'.:::'PQses is to reta.in in a sun or product as many significant digits ae
t)oJ 55! ble and t he second of this is' to free. t.he humanoperat.or' from the burden
.: estimating and inserting into a problem "scale factorsl(  multiplicative
,~~~'lS"',ants wInch SC:l"'Ve to keep numbers within the lirni t.s of' the machine.
_ There is , of course, no denying the fact that human t.ime is
,'>"''19 U.!11'2d in ar.reng'lng for the introduction of sui.t abl,e scale factors, We n;";_:' 7 ;,"\6:(1':; that the time so consumed is a very smal.L perctntage of the total tiLF;
'y,_) will spend in preparing an interesting prob.Lern for our machine. T~'e f: : _ .
2..;;fantage of the floc.ting point is, we feel, somewhat illuscry" In c rder ...
:_"['":.'/8 SL1ch a floating point one must waste memory capacity
15
which could otherwise be us ed for c2.rr;ring more digits per word. It would
therefore seem to us not at 03.11 c Lear ... het.her the modest advant ages of a
floating binary po.irrt offset the loss of memory capacity and the increased
comp.l exi, ty of the arc.t.hnet.Lc and control circuits 0
'I'her e are cert ai.nl.y some problems wi.t ni.n the scope of our device
which really reqru re more than 240 precision> To handle such problems
we w.i.sh to P~"'1..'1 in t erms of wc rde , whose lengths aZ'8 some f:ix·::;d integral
multiple of 40, mid
prcgrsm the machine in such a manner as to give
:.h? correspond'ing aggregates of ~_o digit words the proper t.reatraent., He
must t.her; conai.der an addition or multiplication as a ccnp'l ex operation
There
wou.Id seem to be cons.rderaul.e extra difficulties in t he way of such a
!,~ocedure in an Lnstrunerrt viith a floatine; binary po.irit ,
The rea.der may remark upon our alternate SPG:'.:~S of radicalism and
cons erv at isa in deciding upon various possible features for our rnecharu.sm,
'iJe feel, however , t hat, we have a SOl1IKl rationale whereby we judge the
~~E;r'its of an idea. VIe wi sh to incorporate into the rzachi.ne  in the form
)1' circuits ~ only such logical concepts a5 a.re either necessary to hDve a
ccmp.Let.e system or higilly convenient because of the frequency with which
. !:".:,;_;r 0 C cur.
5'!~., On the basis of this criterion we definitely wish to bu:L' ,"
.,l.to the machi.ne circuits which will enable it to form the b.inary sum of
,,1fQ 1+0 dig:i.. t numbers, "e nruce t hi s deci, SiD:! D::>: because addition is a.
~.(~gically basic net Lon but re.t·her because it 'would s Iow t~le mecharu.sm as
l"~3} 1 2'5 the OpeY2 ;:;"':;I' down encurmous Ly if each addition were programmed OL;
\
.,
t
....
, ,
~ :'\
,
_ .. r:
16
:...
f' !
The cases for division and squareroot are .much less clear.
It is well known that the reciprocal ofa number .'1. can be formed
to any desired accuracy by iterative schemes. One such scheme consists of
blprovingan estimate X by forming XI .~~ 2.XaX2. Thus the new error IaX' is (laX)2, which is the square of the error in the p~eceding est~llate~
We notice that in the format.Len of XI, there are two bonafide multiplications
We do not consider multiplication by 2 as a true product since we will
have a facility for shifting right or left in one pulse time. If then, we somehow eould gu.ess .i/« to a precision of 25, 6 multiplications  3 iterations  would suffice to give a final result good to 24°. Accordingly a small table of 24 entries could be used to get the initial
ss't imat.e of l/a, Accordingly we see that the question of building a
I
divider is really a f'unct.i.on of how fast it can be made compared to the
iterative method sketched above. We have however conceived a divider
whic:h is much faster than the 6 multiplications of the iterative procedure
and therefore feel justified in building it, especially since t.he amount,
;i' equipment needed above the requirements of the multiplier is not
·_!ll.portant 0
It is, of course, also possible to handle squareroots by
Lterative techniques.
In fact if ..iI. is our estimate of a 1/2 then
,
x.:='~:/2 + a/ii is a better estimate. He see that this scheme involves one
·::'~_:i,=;i.on per iteration, As will be sean be.Low ~_.'1 our more detailed
~Xe:.n:~_natio:l of the arithmetic organ ,~ e do not i:1r.::"ude a squareroote r ir:.
~\il:'~ y].ans because such .3 dev i.ce wcu.Ld involve more equrpment, than we
~'e~.: ::'_S desirable in a first model,
17
5.5. The first part of our arithmetic organ requires little
discussion at this point.
It should be a parE'~;Lel storage organ which can I
"
receive a nwnber andadd it to the one already in it, and which is also
able to clear its cont.ent.s , We will call such an organ an aceumul.at.or , It
is quite conventional in principle in past and present computing machines
of the mo st varied types. (E, g. : Desk mul tiplie:rs, standard ltiM count era,
. ,
more modern relay machines, the ENIAC,) There are, of course, numerous
ways to build such a binary accumul.ator, He distinguich two bread types
of such devices: Static and dynami,c or pulsetype acctmul.at.ors c These
will: be discussed in 5,,10, but it is first necessary to make a few remarks
coricerning the arithmetic of bina,ry addition. In a parallel accumulator,
the first step in an addition is to add each digit of the addend to the
corresponding digit of the augend, 'ine second step is to perform the
v
carrl.es , and Uris must be done in sequence s.i.nce a carry may produce a
carry. In the worst case, 39 carries will occur. Clearly it is ineffiClent
to allow 39 times as much time for the second step (performing the carries)
3.8 for the first step (adding the digits), Hence either the carries must
c e accelerated, or use must be made of the average nwnber of carries, or
'.:oth.
5Q6. Vfe go to show that for a awn of binary words, each of
_:_S:rtZ~:'~1 n, the length of the lar,~est carry sequence is on the ave:cage not
::_'1. exees s of log2 ri, Let Pn ( v ) designat e tr.e probability that a carry
.:::equence is of length v or greater in the sum. of two binary words of ler_'~":
L. Then clearly Pn(v)Pn (v+l) is the probability that the largest car"!'; sequence is ~f length exactly'v and the weighted average
'::........ ~; _"_) (p (v )  p (v + l)) v is the average length of such a carry s.in; C"
.L ._ v""o' n n 
':: '1,;:0 (Pn (v)  Pn (vII) :.: 1 and since Pn (v) ;:; 0 if V>l.1. He notice
18
moreover tlzwt an"" 2v <!; 1" Pn (v) and proceed to show that Pn (v) ~ smaller
(1, Cnv ...... 1).. 1).
»>: 2v+
Observe first
that P (v) = p l(v)f. ~l (lp (v), if
n n 2v~ nv
Indeed! Pn(v) is the probability that the sum of two ndig;it numbers.
v:i n,
contains a carry sequence of length :sv. This probability obtains by
adding the probabj}ities of two mutually exculsive alternatives: First!~vim the nL first digits of the two numbers by themselves contain a carl'y sequence of length ~ v ; This has the probability Pn1 (v). Second:
The n1 first digits of the two numbers by themselves do not contain a
carry seCtuence of length ? v , In t his case any carry sequenc e of length ~ v in the total numb~rs (of length n) must end with the last digits of
t he total sequence. Hence these must form the combination 1, 1. 'I'he
next vI digits must propagate the carry, henc~ each of these must form
the combination 1, 0 or 0, 10 \.The combinations 1, 1 and 0, 0 do not
propagate a carry,) The probability of the combination 1, 1 is i s that
one of the alternative combinations 1, 0 or 0, 1 is~. The total proba,ility of this sequence is therefore ~(~)vl  _1_. The remaining 2v+l
_".v digits must not contain a carry sequence of length;: v , This has
·:·he probability Ip l( v). Thus the probability of the second case is
n
__ 1 __ (lp (v)). Combining these two cases, the desired relation
r v + 1 riL
.J
"n (v) ::: p 1 (v) I __!_ (II< . (v)) "obtains. 'l'he observation that
n 2v+l nv
)n(v) ·0 if v;;. n is trivial.
We see with the help of the formulas proved above that
. .)~/;)  Pn_l(v) is always " =: __ L ~ and hence that the SUlIl =. . .'1 11
/..
terms in the sum;
since, moreover, each
f nv~ 1· th
o _, sance ere ar;
2v+1
Pnev) is a probability, ~.::.
.) . r ) • ) •
. :' .. l v  p. 1;_V j ::; p l v lS not in excess
. '. l n
19
is not greater than 1.
H\· ( ) 11 (1 nv+l »> )
enee we nave Pn v ~ ema.i, er, .... ~ •
»> . 2 v _,__ 1
Finally we turn to the question of getting an upper bound on
a", j P"'l(V)~ Choose K so thnt2K~n;2K...ll. Then
n "_ v L "
.l!_  Kl + n •
2V;1  2K"
This last expression is clearly linear in n in the interval
2K2 n ~, 2K Tl, andLt is ~K for n = 2K and =K +1 for n ~ 2K;I, i.e.,
it is ~,log2n at both ends of this interval. Since the runct.Lcn log2n is everywhere concave f!'om below, it follows that our expression is ~ log2n
throughout this interval.
Thus a :.;:_ log2n. n _
'I'h.i s holds for al~ K, i. e.,
for all n, and it is the inequality whioh we wanted to prove.
For our case n = 40 we have an ?, log240 :,: 5.3, i. e. J an average length of about 5 for the Lonrest carry sequence. (1'he actual value of
O¥o is 4,62.) 5,7.
~le propose to handle negative numbers by means of a
, ~
system of compl.ernerrte with respect to 2 to some power. To fix on this Dower we further propose to place all numbers F, 'i.e the 4iJll.achi.ne so that
,., I I
. " 0<.; I
. t, ,
Thus we express'~ t~nporarily as Xl' ~J .'0' x39' will be prefaced by a Oth digit expressing the sign, cf.
(These
~~igits
below. )
We then take all complements with respect to 2°:;:1 and observe that
::.f (~ c 0, we
.~
'.
, i,.e. , as
' ,
r: l' _l~)~ ..... l_ <> If now 1: ~ 0, we express it as O.x.. ,x2, .. : ,x"9i
~o 39 '; J.::>
2'1 2
express it for macrrine purposes as the comp.Lernerrt of
LY1'Y2'···'Y39 where (O.xl,x2"'~Jx39) + (O'YI'Y2,o"'Y39':: (10 0 0 .• ~O). ~;e have thus a 11 cor r espondende between the interval
·/~
'l~ (. . + 1 and the set of all 40 tuples of binary digits.
508. To effect a multiplication we first send the multiplier
: .. nto a r cgi.st.er ARJ the Arithmetic Hegis\E:r) which is essentially a set of
20
40 flipflops and whose characteristiys will be discussed below. ~le place
the m.ultiplica.nd in the Selectron rtegi.ster, SR, and us e the accunul.at.or , A,
to form and store the .partial product s, We propose to multiply the entire
multiplicand by the successive digits of the fil~tiplier in a serial
fashion. There are, of course, two possible ways this can be done: We either can start with the digit in the lowest position  position 240 or in the highest position  position 2~1 _ and proceed succes~ively to
the left or right, respectively.
There a!'e a few disadvantages from our
point of view to starting {iith the rightmost digit of the multiplier. We
therefore describe that scheme'. Asswlle we have already multiplied the
multiplicand ~ by the n last (n = 0, 1, •.• , 38) digits of the multiplier
and desire to multiply by the next digit /339n• We assume fu.rther that A holds a quantity Pn/2. de now form Pn+l;;_~n.f./~' 39'n xa in A and then
2 .
P:!.3z by shifting the contents of A one stage to the dght by means of an
slectronic shifter wnich is part of A. Clearly at the end of the operation
;';8 have  apart f rcm possible corrections due to the use of complements
and certain carry problems  in A the 40 significant figures of our product.
To comp.l et.e the general picture of our multiplication technique
;',8 must consider how we sense the respective digits of our multiplier.
Tt1ere are two schemes which come to one! S mind in this connection. One is
C,') have a gate tube associated with each flipflop of AR in such a f'aahi.on
~.hat t rd s gate is open if a digit is 1 and closed if it is null. de wouJ_d
then need a 39 stage counter "1:.0 act as a switch wru.ch wou.Id successively
d,imulate these gate tubes to react. A more ei'ficient scheme is built i.n·~·,
.",.11 8. '':;~"lifter circuit which enables AR to be s;d.fted one stage to the righT
:}3.ch '~ime A is shifted and to sense the va.lue of the d.i.git in the
• 'oJ.
ra.gnt.
fJ.ipflop of AR •
The shifter itself requires one gate tube per stage.
21
.
We need in arldition a counter to count out the 39 steps of the multiplication,
but this can be achieved by a six stage binary counter. Thus the latter is
more €conoroi::d of tubes and has one additional virtue from our point of
view wi,ich we d Ls cuss in the next paragraph.
The choice of 40 digits to a word (including the slgn) is probably
adequate for most computatiomiJ. problems but situations cert.a.lnry might
arise when we desire higher precision, Le~ words. of greater length. A
trivial illustration of this would be the computation of 'yTto hundreds of
figures 0 More important . instances are the so.Lut.Lons of N linear equations
in N variables for large values of N. (Probably when N :> 10,) It is
therefore desirable to be able· to handle numbers of 39K digits and sign by
means of program i.nstructions  one way to achieve this end is to regard a
word of length 39K as a sequence of K words ea8h of length 39. In order to
~)e able to treat numbers in this manner, it is necessary to keep not 39
~.:i .. gits in a product., but 78; this is discussed in more detail in 6~603 below. "0 accomplish this end (conserving 78 product digits) we' connect , via. our
'.;'ifter circuit, the rightmost digit of A with the left digit of AR. Thus,
\·.:·:;8n in the process of multiplication a shift is ordered; the last digit ·of ). is transferred into the place in Ali made .Jacant when the mu..1tip1ier was
I • . .b_tft ed 0
5Q9< In the previous discussion we tacitly assumed that the
~."ltiplier and multiplicand were nonnegatd.ve • If either or both are
:~gatj ve we must perform certain correction operations. If the multiplie"
~'.~ negat ive , we add t.n e complement of the multiplicand into the partial
~',cC)dUC7. P39/2j if the multiplicand is negative; we connect , via our shi.ft,e
,:1 rcui t., the leftmost digit of A with the right digit of A.it and pass 1
c_ ; . .:.'lS this di.git into A. Thus, when a multiplication shift is ordered, the
:22
complement of the multiplier is fed into the partial products  clearly an
, J
additional complement correction pulse is also needed. Lastly, if both the
mu1:j:;iplier and multiplicand are negative, we must net, only carry, out both the
processes described above, but we must also introduce an additional pulse to correct the digit in the 2.0 place. lie make the above discussion somewhat
more precise in the next paragraphs.
5.10. To complete our discussion of the multiplicative organs of
our machine we must return to a consideration of the two types o'f Accumulators
mentioned earlier. The static adder operates by sjmultaneously applying
static voltages to its two inputs  one for each of the two numbers being
added. "ihen steadystate opeeat tcn is reached the total sum is formed
complete with all carries. For such an accumultor the above discussion is
substantially c~~plete, except that it should be remarked that such a
~i.rcu_it requi:res at most 39 ri se times to ccmp.Let e a carry.
I Each stage of a dynamic accumul.at.o r consists of a binary counter'
.:or registering the digit and a flipflop for temporary storage of the carry.
'1l:1e counter receives a pulse if a 1 ·is to be added in at that place; if this
,~uses the counter to go froml to 0 a carry has occurred and hence the carry
i'Li.pf'Lop will be set. It then remains to perform the carries. Each flip
flop has associated with it a gate, the output of which is connected to the
!:t8xt binary counter to the left • The carry is begun by pulsing all carry .[Qtes< Now a carry may produce a carry, so that the process needs to be
rspeat.ed until all carry flipflops register 0 < This can be detected by IT<: S".
of a circuit involving a sensing tube connect.ed to each carry flipflop,
WdS shown in 5.6 that,on the average, 5 pulse times (flipflop reaction t:_i,:_~ s::'e required for the complete carry. An alternative scheme is to connect
~ gate tube to each binary counter which will detect whether an incoming
C:.u!.:ry pul.se would produce a oarry and will, under this circumstance, pass tile incoming carry pulse directly to the next. stage.
23
This Circuit would require at most 39 rise times for the completion of the
carry.
Vie ret.nrn now to the multiplication operation. In a static
accurrmlator \'IfE:: order simultaneously an addition of the multiplicand or Dull,
a shift, and a complete carry, for ,each of the 39 steps~ In a dynanic
accwnulator of th~ second kind just described we order in succession an addition 01 the multiplicand or null, a complete carry, and a shift, for
each of the 39 steps. In a dynanri.c accumulator of the first kind we can
avoid losing the time required for completing the carry at each of the 39
steps. We order an addition by the mul.t tp.It.cand or by null, a shift, and
,
then order one pulsing of the carry gates. This process is repeated 39
times. A s inpl.e arithmetical onalysis whi.ch will be carried out in a later
r epor't , shows that at each one of t.heae intel!I:'.ediate stages a single
carry is adequate, and that a complete set of carries is needed at the end
,
onl.y , ~ie then carry out the complement corrections, still without ever
order.ing a complete set of carry operations. Vlhen all these corrections
'l.re completed and after roundoff, described below, we then order the
;~,omplete carry. mentioned above.
5.11. It is desirable at this point in the discussion to
I
ccns.irier rules for roundingoff to n  digits, In order to assess the
c_haracteristics of alternative ~ossibilities. for such properly, and in
;:)ar::'icular the role of the concept of "unba.asednes s", it is necessary to
viaualize the conditions under which roundingoff is needed.
Every number x that appears in the computd.ng machine Ls : an
appr'c x:i.mation to Mother number x I, which would have appeared if the
r;alcul."3.tion nad been performed absolutely rigorously. The approximat.i.onc
:'0 wbich we refer here are not those that are caused by the explicitely
24
introduced approximat.Lons of the numericalmathematical set up, e.g. the replacement of a (continuous) differential equation by a (discretej difference equation. The effect of such approy~tions should be evaluated mathemat i cal.Ly by the person who pl.ans the problem for the macrrlne , and should not be a direct concern of the machine. Indeed, it has to be hand.l.ed by a mathematician and cannot be ha.ndled by the machine, since its nature, complexity, and difficulty may be of any Kind, depending upon the problem under consideration. The approximations which concern us here, are these: Eve!1 t.he elementa:::y operat i.ons of aritcLIDetic, to which the mathematical approximationformulation for the machine has to reduce t he t rue (possibly transcendental) problem, are not rigorously executed by the
machi.ne , The machine deal.s with numbers of n digits, where n, no matter /
:)0\1\' large, has to be a fixed q\!antity. (rie assumed for our machine 40 digits, including the sign, LEo" n = 39.) Now the swn and difference of two
;.1  digit numbers are again n  digit number s , but their product and
'1Uotient (in general) are not. (They have, in general, 2n or '.:" . digits, .:"'~~,pectivelY.) Consequently, mv.1tiplication and division must, unavoidably
~:;'} replaced by the machine by two different operations which must produce
' .. ,. digits under all conditions, and which, subject to this limitation, .'~:;ould lie as close as possible to the true multiplication and division. '.l;:,G might call them psuedomultiplication and division; however , the
~,:cepted nomenclature terms them as multiplication and division with round'':';[1. (We are now creating the i.mpression as if addition and subtraction 'I\i~' ( "'ntireJ.y free of such shortcomings. This is only true inasmuch as they do
:· , ot cr eat e new digits to the riZ:1t, as tmltiplication and division do. "!0:i!6V8r; they can create new digits to the left) i.e" cause the numbers
:.() II g(o 11"1 out of range"; This complication) which is, of course,wo:ll known"
25
is normally met by the planner J by mathematical arrangements and estimates
to keep the numbers II within rangello)
'Ihus the roundoff is intended to produce satisfactory ndigit apprcximat.Lons for the product x y and the q.iot.i.errt ::.t_ of two ndigit numbers. y
Two t.h'ings are wanted of the rOP'ldoff: (1) The approxamat.Lon should be
good, L, e. J. its variance from the "true II xy or
x
 should be as small as
y
practical; (2) Tl16 approximation should be unba.ased, i. eo, its mean should
be equal to the '!7.:rU.8 IT xy or ~ 0 y
These desiderata must} however , be considered on the basis of some
further comment,s , .specifically: (0) x and y themselv.es are likely to be
the results of similar roundof'f'e J directly or indirectly inherent J L e.,
x and y t hea .. 3slves shoul.d be vi.ewed as unb'i.ae ed nd tgi.t approxi.aat.Lons of
':tru.ei! Xl Fwd yl va.Iues j (b) vs taJid.ng of "varLances " and "means" we are
'.r::tr,J(h.lclng stat.istical concepts. Now the approximations which we ,are here
e ons idcrtiug z.re not really of a statistical nature: They are due to the
·~eculiariti€s (from our point of view: inade.quacies) of arittffnetic and of
Lgita.l rep:cesentationJ and are therefore actually rigorously and uniqubly
~;1.~~te:rmined, It seeme, however , LI'l the present state of mathematical science,
·~':J.thsr hopeless to try to deal with these matters rigorously. Furthermore,
J. certai.n st.atistical approach, wh.ile not t:ru.ly justified, has always gi.ven
2(eqlla~e practical results. This consists of treating those digits whi.ch
. . .
·::.;6 does not wish to use individually in subsequent calculations} as r and.rn
r6riablesJ with equxprobahLe digital va.luesyand of treating any two such
.1 !_gUs as sta ti stically independent (unless this is patently fa]_se)"
These t.hi.ngs being understood, we can now undertake to discuss
:;")lJ.rtd·'G~f procedures J realizing that we will have to apply them to the
l'Y.ltipl'_catiun and to the division,
26
Let x = (. f 1" .• ;; n) and y = (hl,1" • • "n) be unbiased approxi
~
~~ I
Then the IItrue" xy = ,(. '~l 0 •
illations of Xl and yl~
and the "t rre"
x
y
= CWl .•• W w lW . 2.'~) (this goes on in Lnr'Iru.t.uml )
. n fij n+
are appro)~ations of x! y! and
.
yi
BefoJ:'e we discuss how to round them
.off', W3 must Know whether the "true!! xy and~ are themselves unbiased y
approxunat t.ons of X'I v I and ~~
~ y'
xy
is indeed an unbias~d app~oximation of
! ! .,
X Y i> l.e.,
the mean of xy is the mean of x (;::, x I) t imes the mean of
J~ (:.;: s' ), oVling to the independence assumpt.Lon which we made above.
However, if x and yare closely correlated~ e.g~ for·x = y, ioe:~ for squar
a.ng , there ,is a bi.as , It is of the order of the mean square of xx ~, i. e.,
C )
of the varc.ar.ce of x, Dinee x has n digits; this variance is about .=.
22n "Tf tJ., d.i ··t" f I' d .J..' 1 ," th . . r.l
',~ ... e g~. sox ceyon n ar e ent.a re Y unxnown, I en our or.rganar,
assuapt.Lons give the variance . _ _},;._,_ .) Next, x/y can be wr i.t.t.en as x.yl_,
3,22n
:\nd s.i.nce we have already di.scuased the bias of the product, it suffices
,,"lOW to conai.der the reciprocal ;)Tl, Now if y is an llilbiased estimate of y' ,
·:,hen ·1 is not unbiased es::'irrtate of 11 i. e", the of yis
s an Y s mean " ;d.pi.'oeal is not the reciprocal of y's mean. The difference Ls >. .. y3
::._ .t.l~i.: the variance of y, L e. _, it is of essentially the same order as the
~'ias found above in the case of squaring.
it f'o.Ll.ows from all this t:la:' it is futile to attempt to avoid
1
'oiases of the order _"L_ or less.
2n
, 2
.:_ C"_"3'lO24) is the critical cas e ,
~78 
:is ~:j ("'.2.1012) times our last significant digit.
2··'·
Since we propose to use n:·~39, therefol''3
Note] that this possible bias Levc"
Hence we will Loo.c
.~()r ::::>L'Ildoff rules to n digits
'> s,
for the "t rue" xy '" (.~' o.,r F 1': " ;\.
"'>1 "In::>n+ ",
and x/~l' :: (,wI". wn wn+l wn+2" •• ). The desideratum (1) which we f'ormul.at ~! )revio;.isly) that the variance should be smal.L, lS still valid. The
.. _
desi,::~~ra.tlUil
however, that the bias shoul.d be zero, need, according t c
27
/ i
the above, only be enforced up to terms of the order .~.. 22n
The roundoff procedures, which we can use in this connectacn,
fall into two broad classes. The first class is characterized by its
Lgnoring all d.2.gits beyond the nt.h, and even the nth digit itself, which
it repJ..aces by a 1.. The second e.Las s is charact.eri aed by the procedure of
I,
addi.ng one unit in the D"t'lst digit) perf'ormi.ng the carrl.es which this may
Lnduce , and t.hen keepi::J6 o~y the n first digits~
·,tlnen applied to a number of the f'orm «"1" 0 ~ v n ~.r. 1 v '2' ". " )
_ ni.J.. nT
! (in infini t ua ~ ), the effects of either procedure are easi.Ly est.amat.ed a In
the first case we may say thHt we are dealj . .:og with (.vI'. ~ 0,· vn_l) plus a randon number of the form (.O •• ~Ov v +1 v",.J .. 20'·~); Leo, random in the
n n ' .. T
,
'i.nt erva.L 0, .. f_ 2111
:'hereL::re have a
Comparing wtt.h the rounded off (_, VI ~ ., v n. .11), we
, '
/ n / '1
cc_fference r andom in the interval  1 2l ~ 1 .2'.
Hence its
In the second case we are dealing with
vn) plus a random number of the form (.O~. ~OO v v 2
n+l n+
=sndom in t.he interv8.1 0, 1 0 The 11 roundedoff IT value will be (ovl, •• Vn) 2n1
:'.LcrewJed by 0 or by 1/2n) according to whether the random number in question
_d_8S in the interval 0, _1_.  2n~1
': l!iiparing with the "roum edof'f" value, we have a
1 / n
or in the interval =':" , 1 2 •
2n41
Hence
difference random in the
'_ntervals 0, .. 1... and 0, 2na .
E::::1ce, its mean is 0 and
1 1
 ~l ' 7"n+T • 2n+ .2 .
~p fin:i.te), then these results are somewhat affected. The order r:f magni;"\,,,
;~_f the variance remains the same, indeed for large p even its relative chC1!:\~.'
.~.:i neg].:..gible, The mean differe.t::!e may deviate from 0 by. amounts which a:;:j
'.~asily estimated to be of the order
._l_. _L = _:J........... •
2n 2P 2n+P
28
In division we have the first situation, x/y:: (.w1 •.• ww lw,,..,4.),
 . n n nlJG
i"e. p is infinite. In multiplication we have the second one,
xy :=
(?~ '(" '·r .~).
• (" " " • I; :  ,~ ~"'.,:.:., '), , l 0 e. p = n·
',j_ » n :;.:1 . .L _ . .;:...rl
met.hoc s are app.l.i.cahl e wi thcut modification. In mu.Lt i.p'Li.cat.Lon ;;3. bias of
Her!C8 for the di Yision both
J.~J.y
pOlntless to
.ins Let. on removing b~8S8B of t.h i s size. de will t.heref'ore UEc the urunodi.f'Led
It 511 0 1..",:.:!_ be not ed t.hat the bias i:J. the case of muI7,iplicBt.: .. on can
be removed =n va::~ion6 si!"'.:t:'le ways. G::;.uss i faI'"lOUS method of "rcuncu.ng vt.he
.::::.mL;·ig'.~c·c:.s case to t:"e nearest 3'; en D':!nber:l Ls OEe instance o.f this, nowever,
r o r tt.'.S reE!.::')::S set forth above, we shall no:' ccmp.Li.cat e the f!i.achin€t by
.:':.ntrod:}.cing such cor rectd ons ,
'It::s we ha vet wo st.an dard I! ro und  0::£'1' r: m 8::' hcds , both un biased tot he s.x:tent to whi.ch «e need t hi.s , and with the variances 1/.3 22n and 1/12e22nJ that is .• wib the dispersions .J~ _ _l_ = .58 times the last digit and
r+
.:,,'.3
v.'3 2n
.29 times the last di.git.
The first one requires no carry
!:',:_:::ilities, the second one requires t.hem ,
Inasmuch as we propose to fa 1'.'1'. the product x+y ' in the accwnulator,
.1 rich has carry facilities> there is no reason wh,7 We should not adopt the
.'( ,1.i~::lif'.g scheme des crtibed above whi.ch has the sme.ller d:i_spe:rsionJ i, e < > t.he
'~e whj_ch ffi:'::'y induce carries. In the case) however, of d.ivision we w i.sh to
,':foid SCi""IG,7Ic~S Lead irg to carries since we expect to form the quot.Lent in t·'.;·c
Lt.h .. ..
'~::l nmsc.i.c regi.st.er ,
which does not permi.t, of carry operations,
The s cher. ~
·~ich we accordingly adopt is the one in whi.ch wn is replaced by 1. This
.,~". t,hc·'.l 1, ,'.'3 the decided advant.age that it enables us to write down the appr .. ·
· ... .'.~e con,)~ie~:~ as soon as we <,~n;';1JI its first Cn·l) .d.i.g.i.t.s , It will be seen ~~~l.
"" ~,4 t>f;':.CW that our procedure fo:.~ f'orming the quotient of two numbers will
29
always lead to a result that is correctly rounded in accordance with the decision just made , We do not consider as serious the fact that our rounding scheme in the case of division has a dispersion twice as large as that in muJ.ti;>2ication since division is a far less f:i.v:qu"3nt oper atd.on ,
A .f.inal rE'maX'!:' s ~:;~;:]"'( be raade in connert.Lon w.i:'",h the pas sible, occas.Lona.L need of carr/:'_r:.g mo.::e t.han n :; ]9 c.ig~;.ts, Oi;r' logi.cal control is s'J.f.ficiently flex:~_~)le to permit treating k (::; 2;3) ' •• ) words as one number, and tb:s ef.f:'ecting a ::. 39ko In this case t.l:":,= round off has to be programmed ~or tU.3 n. The m,'ltiplier produces all 78 dj.git,s of the basic 39 b~T 39 digit m,ul~irlicakon: The first 39 in the eccumul.at or, the Laat 39 i..'1 the :register~ Tbe,se f.1UBt then be manipulated in an appropzi.at.e manner.
(~or det aa.Ls cf. 6~6h3,) The divider work·'_~ for 39 "digits onl.y : In forming '~~/y , it is necessary, even if x and yare ava.i.Labl,e to J:?k digits, to use o~llY :39 digi.ts of each, and a 39 digit result will appear. It seems most conveni ent to use this result as the first step of a series of successive O,?pro.i:~.matj_ans. The successive improvements can t hen be obtained by means
:.: the well known iteration formula (er, 504). For k :: 2 one such step will :::: needed, for k = 3, 4 two steps, for k = ), 6, 7, 8 three steps, etc.
5.12. We might ment.Lon at this time a oompld cat fon which arises :'i,en a flo(!U.ag bi.nary point is introduced Lnto t he machi.ne, The operat Lcn '~r:: adc,itio:1 'W:licn usual.Ly t akes about 1/10 of a p'.ultiplicat.ion time becomes ~).c;h Longer in a machine with f'Loat.Lng binary point since one must per ror« ·,i1ift(; End roundofis as well as ad.ditions., It would seem reasonable in <.i' .,) >:se to place the time of an acJEion as about i of a mul.t.Ipl i.catd.on, At J, .•• .: at e ~.':, ::..; clear t hat the number of additions in a problem is as Import.ant
_~. fad;)i.~ in +:.he t ot.eL so:'ution tj.me as are the nwnber of multiplications.
\ "
',;' r
~. ,
/ { I.
, 3D
"
5.13. We conclude our dascusedon of the arithmetic uni.t with a
description of our method for handling of the division operation. "i'o perform
a division we wish to store the denominator in the selectrbn register, the
_ 1
partial remainder in the accumulator and the partial quotient in the arithm.etic register. Before proceeding further let us consilier the secalled
restoring and nonrestoring methods of division. Normally when one divides 
for the moment we assume the numerator and denominator are both positive 
.'
one subtracts the denominator, from the numerator, or partial remainder, if and only if the former does not exceed the latter.  If the denominator is in
excess of the numerator a null is put in the quotient, the remainder is .
shifted one place to the left and the computation proceeds. This socalled
restoring scheme utilizes, in a number system to the base m, the digits
0, I, .'~J mI in each place in the guotient. The difficulty of: this scheme
for machine purposes is that the only economical method for comparing two
I
numbers as to size is t,o subtract~one from th6 ot.her~ If the partial
 ~ .,
r8Jnainder r were less than uhe denominator d, one would then have to add
n ~
J. back into r d in order to restore the remainder. Thus at every stage
, n ~
(J unneces sary ope rat.Lon wou.l.d be performed. A more symmetrical scheme is
~otained by not restoring.
"
In this niet.hod one compares the signs of rn and
l; if they are of the same sign, the denominator is repeatedly subtracted
, ,un; the remainder until the sign.s become opposite; if they are opposite, the
.encmi.nat.or is repeatedly added to the remainder until the I signs agaan become
like. In this scheme the digits that may occur in a given pla.ce in the
quotient are evidently :f_l, :<:2, .'., ± (ml), the j..lositive digits corres
iJvnmng to subtractions and the negat.Lve ones to additions of the deuomi.nata.:
Cu the remainder.
Thus we "have two (ml) digits instead of the usual 1h digits. In
... ,·'"'31
\ J
31
the decimal system this would mean 18 digits instead of 10. This is a
redundant notation. The standard form of the quotient must, therefore be
restored by subtracting from the aggregate of its positive digits the
aggregate of its negative digits. This requires c~rry facilities in the
place where the quotient is stored.
We propose to store the quotient in AR, which has no carry
facilities. Hence we could not use tins scheme if we were to operate in the
decimal system.
The same objection applies to any base m for which the digital representation in question is redundant  1. e. when 2 (ml) > m, Now 2 (m.l) ~ m
whenever m ~2, but 2(ml) = ill for ill = 2. Hence, with the use of a register
1iJhich we have so far contemplated, this division scheme is excluded fr01ll the
start unless the binary system is used~
Let us now investigate the situation in the .binary system. We
inquire if it is possible to obtain a pseudoquotient by using the non
~estoring scheme and by using the digits 1,0 instead of 1, 1. Or rat her
.'113 have to ask this question: Does this bear a simple relationship to the ~rue quotient?
Let us momentarily ass~e this question can be answered affirma
~lvely and describe the division procedure. We store the numerator initially
.i.n A, the denominator in Sh and wish to form the quotient in AR. We now
";j.ther add or subtract the contents of SR into A, according whether the
Digns in A and SR are opposite or the same, and insert correspondingly a °
OT 1 in the righthand place of AR. We then shift both A and AR one place
::.(::'.ft  note therefore that A as well as AR must now be capable of sl1ifting
::.~1 either da.rect ion  and proceed, carrying out this process 39 tdrues ,
,
Denote this digit, which is 0 or 1, by c. The true digit, which is 1 or 1,
)
I 1
 ,
32
is then2cl, However, we record, as ind~cated, c and not 2c1.
We answer now the question raised above~ namely, how can we correct
the ps~udoqu.otient C now in AR so that it is the correct quotient QG First
we recall that all numbers in' the machipe  apart from the sign digit
are less than 1. "Hence in forming N/D, we first must adjust Nand D so that
,
the result will be in the machine range. We have at the nth stage of the division process sketched above, 2nr = ZnN_2nl (2°01) D_2n2 (2cll)D ••• =
n n~l
2nrl  2n+1 (Co.,/ + Cl /' 2 + ••• "+ Cn+l ..4 ) D+ L 2i. With the
~ 2 /2 ~ ~ 1
help of this relati6n we see that N = (2Cl + 1/239) D+ r39 and hence that
Q = 2C  1+1/239•  Thus to fbrm Q from C we shift C one place left  this makes the 239 position null  insert 1 in the 239 position  note that this is our last mentioned roundingoff rule , and add 1 to the 20 position, wfUch is the "sign flipflop. Thus the 2° flipflop must be changed to a
I
binary counter, i.e., a flipflop with its two input leads tied together.
o Note that neither 1 which we added in produces a carry: The 1 in the ?
position produces none, since it is in the highest position already. The 1 in the 239 position produces none since it is added to a 0 there.
1
t '
6.0.
J'he Control
6.1. It has already been stated that the computer will contain an
organ, .cakl.ed the Control, which can aut.omat.Lca.Hy execute the orders at,ored in the Selectrons. Actually, for a reason stated in 6 .. 3, the orders for th,is
Qomputer are less than half as long as a forty binary digit number, and hence
the _orders are stored in the Selectron memory in pairs.
....
 I
Let us consider the routine that the control performs in directing
,/ a computation. The control must know the location 'in the Selectron memory
of the pair of orders to be executed. It must direct the Selectrons ,to tran6~
j •
mit this pair of orders to the Selectron Register and then to itself. It
must then direct the execution of the operation specified in the first of the
two orders. This usually involves causing the Selectrons totransmit a
specified number to the Sele;ctron Register and causing the arithmetic unit
to pe~form some operation on this number. The process must then be repeate~
with the second order of the order pair. This entire routine is ·repeated.
~til the end of the problem.
6.2. It iscl!3ar from what has just been stated that the control
must have a means of switching to a specified location in the Selectron
1':1
memor,y, for withdrafling both numbers for the computation and pairs of orders. Since the Selectron memory (as tentatively planned) will hold 212 = 4096 fortydigit words (a word is either a number or a pair of orders), a twelve~
digit binary number suffices to identify a memory location. Hence a
swit~hing mechanism is req~red which will, on receiving a twelvedigit bi.nary number, select the corresponding memory location.
"
The type of circuit we propose to use for this purpose is known
as a decoding or manyone function table. It has been developed in
variou_s forms independently by J. Rajchman and P. Crawford. It consists
of n flipflops which register an n digit bihary number. It also has a maximum of 2n output wires. The flipflops actd, vat.e a matrix in which
I
the interconnections between ll1put and output wires are made in such a
way that one and only one of 2n output wires is selected (i.e., has 'a positive .ToJ.tageapplied to it). These interconnections may be established
by means of resistors or by means of nonlinear elements (such as diodes or rectifiers); all these various methods are WIder investigation. The
Selectron is so designed that four such fun.etion table switches are required, each with a three digit entry and eight (23) outputs. Four sets
of eight wires each are brought out of the Selectron for switching
purposes, and a particular location is selected by making one wire positive
with respect to the remainder. Since all forty Selectrons are switched in
parallel, these four sets of wires may be connected directly to. the four
flli~ction table outputs.
6.3. Since most computer operations involve at least one
number located in the Selectron memory, it is reasonable to adopt a code in which twelve binary digits of every order are assigned to the specifi'
cation of a Selectron location. In those orders which do not require a
number to be taken out of or into the 8electrons these digit posit~ons
will not be used,
•. t
Though J,.t has not been defl.nitely decided how many opera iODS
will be built into the computer (i.e. how many different orders the control must be able to underatand l , it will be seen presently that there will probably be more than 25 but certainly Lese than 26• For this reason
6 binary digits are assigned for the order code.
(It is worth noting
35
that. a choice of six digits as compared to five, has the advantage that the code m.ay be expressed outside the machine in the octal system.) It thus turns
out that (each o~da:t' cons i.st.s of ei.ghteen ba.nary cLig:i.ts, the first twelve
id9!l.t5.fy::_r:_g a memory los;;;.:,:;_on s.nd the rema::_f1.~r:G s~.x spes.·:_fyiEg an operation.
the s ame m.sm:'>~'Jr O~C'!;8l1 is to be used in t hi.s '~OJ;:.1:li:t';r' for both orders and
numbezs , it is efficient to make the: Lengt.h c f each about equi.vaf.errt , But
numbers of s:'.ghteIJ!1 bin2.::'y di.g it.s would not be 3l:fficiently acc.rrat.e f'o r the
p:c'ob~_eT..s whi.ch this machi ne wil.l so.l.ve , hat.he:r) an accuracy of at Least, :0.10 CT 2":3:3 is requi.red , hence t.he number« are made long enough to acco
.nodat e t'.\'(j orders"
TLe spec.i.f'Lcat.Lon of an operet i.on in an order occurs in b.i.nary
~(lrmj so t.hat another manyone or decoding fun ct i.on table is required to 32code the or ter . This func t i.cn table will have six ini)<)t flipflops and :.~6 or 6)+ out.:;J\lts ~ each corresponding to a pos sible order. Since there will 'tOt be 64 different orders, not all 64 outputs need be provided; However,
:_': is perhaps wo~thwhile to connect the outputs corresponding to unused ·.::dE:r possibilities to a checking circuit which will give an indication
"''f~~ene''ler a code WO::I!! unlnt.e.l.Li.gf.bl.e to th'3 control is received in the input
.. >.3_p.flopG,
':';<.1'; fill'c:,~:_on t ab.l.e just, described ene rg.Iz es a different out.put.
I,_ re f'JI' e.2.c.11 di f'f erent code operat.Lon, As will be shown lat er , many of t.;:., .rt eps .i.nvc Lved in executing different orders overlap. (For examp.Le , addi.; ., ,:'_'ltipJ.ic ati on, division, and gcing from t ae Selectrons to the register a._
·.Zlclut.'s ·:~::,a.n.'f6rrj_n8 a number from the Seledrona to the Selectl'on hegist.·~ _ ·>··:r tL_·'.; i~'33.s::m it is de s.i rahl,e :'0 have an additional set of cont ro.L wires.
'oJ.·:::h of ;~hL;:1 is activated by any particular combination of dif;:erent code
36
I.
~~ words. These may be obtained by taking the output wires of the manyone
function ta.ble and using them to operate tubes which will in turn operate
a onemany (or codJ.,:,;,;;; f'':''1.ction table. Sueb 5. func t i on table consists of a .
me:~·,!"j_~~; as 06!OreJ but in t.hi.s case only O:1q of t~e l'1P'2.t wirss is activated
act.i.vat.ed. I'hi.s particular table may be re.fs:",~'3':! to as the recodir.g f'unct.Lon
T~s t.we lve f'Li.pf'Lops operating :':18 ;:01).1' funct Lon tables used in
sele~~~t.:·1Jg a ;)elect~on position, and t.he s i.x f .', Lpf'Lops cperating the function,
!
table us eel .'":01' dscodi.ng the order , are referred to as the Funct.i cn Table
l{egist '3:;"':, F H ,
6~L:.o L'Ot us consider next the process of t.ransf'er rLng a pair of
orders from the Se.Lect.rons to the control.
These order~ first go
• .L.
lG.,,,Q
SR.
'i'he order which is to be used next may be t ransf'errsd c:.irectly into FR.
I'he second order of the pair must be removed from 0R (since SR may be used
'.;;l1en the fic:'st order is executed), but can not as yet be placed in FR.
;ence a temporary storage is provided for it " This storage means is called
·;·;1e Control Register, CR, and consists of ej.ghteen fli.pflops, . capable of
.'8ce:_ving a number from SR and transmitting a number to FH.
As al ready stat.ed (6.1.), the control ffi"J.st know the location of
'~he pC'.5_r, o.~ o rde r s it is to get f'rom the 0E:'lectrcn memory; No rmalIy this
.i.ocatc.on l',·~J_l be t.he one follovdng the location of the two orders just
(:;xec'Jt.8d. That is, until it receives an order to do otherwise, the cont.v.".
Mill +ake its orders f rcm the Sal.e ct rons in sequence. Hence the order
... j
Lc ca: .. ".or· FCc"'.? be remembered in a twelve stale binary counter (one capable  r,our.+:.:_ .. :g '·c.:) 212) to which one uni.t is added whenever a pair of orders is
s.v:.sC".+'sd.. 'l'h.i.s ccunt er :i_a cal.Led the Control Count.er , CC.
37
The c;l.etails of the process of ?b:taining a pair of orders from the
Se.l.ect ron are t.hus as follows. The contents of CC are copied, into FR, the
proper Selec'~ r on 1 ocat.i on i~ select ed , and t':e cant ent s of the Selectrons
trar:s..:'f:;I:H:'':_ T.:) l t and CR. CC is advanced by 'j_l8 un.i.t so the cont ro l will be
i
prepared t,::; fJ al.e c':' ·the next pair of crder s [·;:'U.1 'i~~8 meaory , (There Ls ,
however , an exceps.ion from this last rule 1'0:':' '~he eoveal.Led t ransf'er orders,
cf', 3,5~ This ffiqr f'eed CC in a different menn er , cf", 606,6.) first the
,
order itt FB. is exacut ed and then the order in eR is transferred to FR and
execut.ed ,
I:, shcul.d be noted that all these ooe rat.Lons are directed bv the
l:" \ . ~
control :!.:~~8<~i' j net onJ.ythe operations specified in the control words sent
i.o FR bu.t also the autom.atic operat.Lona rrequd.red to get the correct orders
~here.
<, :;';:1 sequence from the memory has been described, it only remains to consider
S~.nce the method by means of wh.i.ch the control takes order pairs
";c")W t he control sl',ifts itself from one sequence of control orders to another
:>, acco rdance with the operat.Lons described in 3,5. The execution of these
~T;.erc:t::_ons is i·e.l,"J.tively simple., An order ~,e~J.i~E for one of t.heae operations
·./)nl;~<i::!s t he ·(":,w8J.ve.,d:i.g:l t sped.:fication of t.:,e position to wh.i.ch the corrt ro L
.;_;.,; to '09 swi.t.ched , and these d~_gits will appear in the lefthand twelve
r.ip·fl.nps of FR., Al.L _'",;:' 1.."; .requi red to shift the control is t o, t ransf'e r
he 'cOl""lteT[,S of these flipflops to ce. i·fuen the control goes to the
')elect.d'Ot18 for the next pair of orders it will then go the location spec.i fi '''.t
;.\7 tJ::t') number so trans fe rred ,
,
In the case of the unconditlonal transfer;
;,::.e t',:.'ilJ!;~~~:r ·j_s made autoffi<:tically; in the case of the conditional transf2:~
.. 1, is m.~.d.~ only if the s.ign counter of the accumulator registers zero.
38
6,,5. In this report we will d.i.s cusa only the general method by
means of whi.ch t.he cont.ro.l, will execute spec'i f'Lc orders , leaving the details
uribi.L !.B.twr' _ It h.J..s 2.Jrc~.d;:; bBen explained ~:5 .5) that 'ro'm a cireui':. is to
a cr.c:",~·:~ _.>', ~,~ ~f.8.de beT.:"!.)e~ c. static type ,DC .:c. ::'.ynamis type circui t ,
When the :!,e;=;>.gn of the control is consader ec., q~f, same choice arLaes , The
f'unctc.on of the control is to direct a sequence of operations which take.
p.Iace in the vari.ous ci reui ts  of the computer (including the cireui t 8 0 f the
::.ontro_'_ ~.t,se]_f); Consider what is involved in directing an operation. The
cont.ro.l I'l1~'.E"·~. s2.gn" .. l for the operation to begi.n , it must suppl.y what.ever sig
11a1s a::e ·~~(it,.ired :'0 specif.y th3.t, part.Lcul.ar operation, and it must in some
t'::'Y 1G1(Ht when the oper at.t.on h3.3 been comp.l.et.ed so that i.t may start the
f,ilcce3ding operat.Lon , Hence t:'8 controi circuits must be capable of timin,g
t.he oper&i:".ion3o :.ct shou.Id be noted that timing is r equd red whether the
o i.r cuf.t. P(li:'.l:>.''l"m.j_ng the operation is static or dynami c ~ In the case of a ':, ':,at::':: typ,~ circuit the control must supply static control signals for a
\'''l!'ir: .. d of t i.ne sl:.fficient to allow the output vo~.tages to reach. the steady
!.::",ats cond i.t ion. In the case of a, dynamic t.ype c.i.r cui.t the control. must sene.
' .. r.e e~TSt."":r" ~l:owe',er) t hough same of the c~l~cuits of the computer we are
pl.an ... "1~.r_8, w~'_l_}_ be static, they will not all be so, and hence pulses as weJ.l
, I
,::: .. '3 s:~~~L.c; si.gnals must be supplied by the cont ro.L to the rest of the comv":·',_::·.
I'nere ax," [l'''':; ~;,y adv ant ag es in deriving th ese pul.s es from a cent ral source,

·:;:tlle:: "':.;_1'3 clOCK., _The t::.cn:_ng ma.y then be done either by means of counters
_.o:.m1~J_r:g e:'_ock pu.l ses or by means of electrical delay lines (an He circuit ]_"
, ~ l'
39
here regarded as a sampl.e delay line). Since the tiL.ling of the entire computer
is governed by a s:Lngle pulse source, the computer circuits willbe said to
':'~~(, ,:;] ... ;:k plc:,ys [H'_ j_mportar:.t role bot h 5_n detecting and in localiz
ccnsf.der at.Lon is that of havi.ng two .i.derrt i.ce'L computers which operate in
para.l.Le L and automatically compare each others .resul.t.s , Both machines would
be cont ro l.Led by thesaIrJ,e clock, 60 they would operate in absolute ,synehro
ni.sm, It j.s not necessary to compare every flipflop of one machine with the
of the ot.he r,
Since ail numbers and conttol words
?3,SS tl·~ro:·t),1 either the Select ron Regi.ster ur the Accumulator soon before or
soon 'after tl:ey are used) it suf'f'Lcea to check the flipflops of the Selectron
.:;_egi8~jer and the flipflops of the Accumulator wpJ_ch hold the number registered !~,here; in fact, it se ems possible to check t·he accu:nulator ~nly (cf. the
end of 6,,602.)" 'l'hach ecktng circuit would stop the clock whenever a. differ
snce appeared., Every flipflop cf each computer will be connected to a neon
:.nd::.ca7,ing Lamp whi.ch will be located at a converrterrt place, In fact, all
~
",eo.res 'will be Lo cat ed on one pa.:lel,the corieeponddng neons of the two
:,lP,c·hi.;,.es bBi;'l_B. pJ.2.::ed ~r::. p?:('~\1181 rows so that one can tell at a glance where
40
The merits of any checking system must be weighed against its
cost. Building two machines may appear to be expensive, but since most
of the cost of a scientific computer lies in development rather than
this conai.der at.Lon is not so Impor t.ant as it might seem.
Expe:'io).~e may show that for IllC6 t problems the two machines need not be
operated in parallel. Indeed, in most cases purely mathematical, external
\
,
.checks are possible: Smoothr:ess of the results) behavior of differences of
\ 
various types, vali.dity of suitable identi.tiesJ redundant calculations, etc •
.All (,f these met~ods are usually adequate to disclose the presence or
absence 07' error in toto, their drawback is only that they may, not allow
I.
t.he detuL.)"ed diagnosing and Loc at.Ing of errors at all or with ease.
. .. ,~
I
Vhen a problem is run for the fil'st 'time, so that it requires spec.i.aL care,
or when an error is known to be present, and has to be located  only
'::,hen will it be necessary as a rule, to use both machines in paralle.lo
Thus, they can be used as separate machines most of the time. The unique
I
"feature of euch a method of checking lies in the fact that it checks the
x.mput.at.Lon at ev€ry point (and hence detects transient errors as well .
.is, steadystate ones) and stops the macui.ne when the error occurs so that
'.:hr3 process of localizing the fault is 9reatly simplified. These '.'::'la"1tages are .onl:,' partially gained by duplicating the arithmetic part
r.f the computer, or by fo.Ll.owi.ng one operation with the complement operat.Lon (multiplication by division, etc.), since this fails to check
6ither the memory or the control (which is the most complicated, though
not the largest, part of the machine) ..
The method of localizing errors, either with or without a
'~upJ.:;_.::,,:'~ machine, needs fu:i;ther discussion. It is planned to design all
cirl_:l'.:i.i:.E (including those of the control) of the computer so that if the
clock is ct.opped between pulses the computer will retain all its informa
41
(
tion in flipflops so that the comput.atd on 11k'lY proceed unaltered whenthe
clock is started again. This principle has already. demonstrated its
usefulness in the ENIAC. This m&kes it possible for the machine to comput.e
wi.t h the clock operating at any speed below a certain ... ,,~.i:';'U1n, as long
as the clock gives out pulses of constant shape regardless of the spacing
bE::tween pulses. In particular, the spacing between pulses may be made
indefinitely large. The clock will be provided with a mode of operation
in which it will emit a single pulse whenever instructed to do so by the
. "
operator. By means of this, the operator can cause the machine to go
,
through an operwt.i.on step by step, checking the results by means of the
indicating lamps connected to the flipflops. It will be noted that this
design principle does not exclude tbe use of delay lines to obtain delays
as long as these are only used ,to time the constituent operations of a
single step, and have no part ~l determining the macr~nes operating
repetition rate. Timing coincidences by means of delay lines is
exc Iuded since this requires a const.arrt pulse rate.
6$6, The Qrd6rs·which the control understands may be divided
into two groups: Those that specify oper.at.Lons which are performed witi1in
the computer and vthose that specify oper at.ions involved in getting data
into and out of the computer. At the present time the internal operata.ons
lre more completely planned than the input and output operations, and
hence t.hey will bb discussed more in detail t han the latter (which are
treated briefly in 6.S),fhe Lrrt erna.L operations which have been
. .
tentatively adopted are listed in Table 1. It has already been pointed
out that not all of these. operations are logically basic, but that many
, .f' _"
CE:.n be programmed by means of the others. in the case of some of these
op~ratiQns the reasons ~or building them into the control have already
42
been given.. In this section we will give reasons for building the other
operations into the eont.ro.L 'and wiD_ expf.a in in the case of each operation
what the control must do in order to sxecute it.
In order to have the precise mathematical meaning of the symbcls
which are introduced in what follows c Leanly in mind the reader should consult
for each new symbol the table at the end of the report in addition to the
explanations given in the text ..
.6.0601. The add.i t.Lon operations' ~(x) ....... Ac+, Sex) ~ Ac, S(x)""'A.h+, and S(x) ), AhJ involve the f'o.l.Lowi.ng possj.ble steps: Clearing the S,electron
Register; t.rans ferrf.ng to it the number at S(;;..;}; possibly clearing the
Accumulator; adding the number in the Seleetron Regi~ter (cr its complement wi.t.h respect to 1_239) .int o the Accumul.at.or; possibly addtng '2'}'9 to the
Accumulator; and then perf'ormi.ng a complete carry.. (In a static adding
ci.rcuf.t the last t hree steps are como.ined into one or two. ) 'The operations
Sex) ) AcM) sex) } AcM, &(x)}jl.hM, S(x) ~ AhM involve an extra step, namely
that of determining the sign of the number in the Selectron Register and
using 'this information to determine \'Jhether it is to be added .o r subtracted
into the A.ccumulator. Bu.ilding these operations into the control requires
only a few tubes to perform this step. This is ,a smal.L addition and hence
would seem of itself to justify adding the operations cf plus and minus
absolute value. But it should be noted that these operations can be programmed
out, of the other operdions of Table 1 with correspondingly few orders (three
for absolute value and five for minus absolute value), so that some f'urt.hcr
justification fcr building them irl is required. The absolute v~lue order is
used frequently in connection with the orders L and 11 (see 6~6.8), while the
lLinus absolute value order makes the detection of a zero very airapl,o by Ill.orely detecting the sign of !I (if  I ul ~ 0, then N :::. 0) $
43
6.6.2. The operation of S(x)·~ H. involves the following steps; Clearing the Selectron Register and transferring 6(x) to it, and clearing the
Arith.rnetic Register and adding the numbe r in the ce Lect ron Register into it. are
The operation of R~A merits more detailed discussion, since the ref. alternative
ways of removing numbers from Ali. Such numbers could be taken directly to
the Selectrons as well as into the AccuT!ulator, and they could b0 transferred
to the Accumulator in parallel, in sequence, or in sequence parallel.· It
should be recalled that while most of the nwnbers that go into AR nave come
from th~ Selectrons ar.d hence need not be returned to them, the result of a
divi.sion and the righthand 39 digits of a product appe ar: in AR. Hence while
an operation f?r withdrawing a number from AR is required, it is relatively
infrequent and therefore need not be particulorly fast. It is reasonable to
do the transferring at least partielly in s equence and to use the shifting
properties of the Accumulator and the lI.egister for this. Transferring the
number to the S81ectron via the Accumulator is also desirable if the dual
machine method of checking is employed, for it means that even if numbers are
only checked in their t ransa't through the Accurnul.at.or, nevezt hel.ess every
munber going into the Selectron is checked before being placed t he r e,
6.6.3. Multiplication involves the following steps: Clearing the
belectron Register and transferring .s(x) (the multiplicand) to it; if the IL.ultiplicand is negative, connecting the 239 stage of the iirithmetic Register to the 2° stage of the Accumulator in such a manner that when a right sbift occurs the complement of the r.:J.ultiplier ",lith respect to 1_2.39 is gradually fed into the Accumulator; clearing the Accumulator; 39 steps of (a) adding
the multiplicand into the Accumulator if the multiplier digit then being used is 1, with partial or complete carry, and (b) shifting the contents of both the j~ccu.a.ulator and the .hritlil"11etic Register to the right; adding 2"':39 into
the Accwrmlator if the multiplicand was negative; subtracting the multiplicand into the Accumulator if the multiplier was negative; adding 1 into the .Accumulator if both the multiplier and multiplicand were negative;;
44
possibly rounda.ng off the answer held in the AccumuLat.or; and completing the
carries if a partial carry system has been employed. If only 39 digits of
the product are to be used, the answer should be roundedoff, otherwise; not
(cf', 5.11) < Hence some means of sele ding whet her or not t he answer is to
be roundedoff must be provided. Tilis may be done either with a 'second
multiplication order, or (since tL.is cho i.ce can probably be made for a
complete pr onLem l by means of a manual svri.t ch,
It will be noted that since any number held in the Accumulator at
the beginning of the process is gradually shifted into the Arithmetic Register,
it is impossible to accumu.Lat.e sums of products in the Accumulator without
storing the various products temporrarily in the Selectr()ns~ While this is
undoubt ed.ly a disadvantage, it cannot be al.imrnat.ed without constructing an
extra register, and this does not at t.hi.s moment seem worth while.
On the other hand, saving the right hand 39 digits of the answer
is accomplished at very little extra equd.pmerrt , since it only means connecting the 239 stage of the Accumulator to the 21 stage of the Arithmetic
Register during the shift operation. The advantage of saving these digits is
that it. makes possible the handling of numbers of any finite size in the
computer (cf. 5.11). Any number of 39k binary digits (where k is an integer)
and sign can be divided into k part,s, each part being placed in a separate
selectron position. ,Mditi.on and subtraction of such numbers may be progrenmed
out of a series of additions or subtractions of the 39digit parts, the c.J.rryover being programmed by means of CC+ S( x) and CG I +S(x) operations. (If
the 2° stage of the Accumulator registers negative after the addition of· two
,
39 digit parts, a carryover has taken place and hence 239 must be added
to the sum of the next parts.) A s imi.Lar procedure may be followed in
[~1Ulti.plication if all 78 digii{s of the product of the two 39 digit parts are
45
I ., ~,
kept, as is pl.anned, Since it would greatly compl:i,cate t ae computer to make
provision for holding and using a 78 digit denominator, it is planned to
program this operation in the manner described in 5.1l.
be b~4. The operation of' division A ;. S(x) i'R involves the following
steps: Clearing the Selectron Register and transferring Sex) (the denominator) to it; clearing the Arithmetic Registe;;, ~9 steps of (a) adding or subtracting
tho
4,~nominc.tor into the renai.nde.r (depending upon the comparative signs of remainder and the denominator) with complete carry and placing 0 or 1 into
the
the Arithmetic Register and (b) snifting the accumu.Lat.or and the li.rithtnetic Register to t.he left; and adding 20 and 239 to the Arithmetic Register.
For the purpose of timing the 39 steps involved in division a six stage counter (cap.able of counting to 26 = 64) will be built into the cont.rol.,
This same counter will also be used for tiJaing the 39 steps of multiplication,
and possibly for controlling the Accumu.l.at.o r when a number is being trans
ferred from or to a tape or film to it (S80 6.8).
b~b.5e The substitution operat.i.ons [At4 Sex), Ap7.':l_(x), and ApI..., Sex)] involve transferring all or part of the number held in the
Accumulator into the Selectrons. This will be done by means of gat,e tubes
connect ed to the registering flipflops of the Accumulator. Forty such tubes are needed .f?r the total substitution, At 40 S(x). The partial substitution Ap"~ Sex) and Apl;!> Sex) require that the lefthand tewlve digits of the number
haLd in the Accumulator be substituted in the proper places in the Lef'tshand
end righthand orders respectively. This may be done by means of extra g::;t"3
tubes, or by shifting the number in the Accumulator and using the gate t.ub es
required for At"7 S(x).
The importance of the partial substitution operations can hardly be
overestdmat.od , It has already been pointed out (3.3) that they allow the
, 
46'
computer to perform operations it could not ct herwrse perform, such as 'making
use of a function table stored in the Selectron memory. Furthermore, these
operations remove a very sizable burden from the person coding problerns, for
they make possible the coding of the 'cLass es of problems, in contrast to
coding each individual problem separately. Because Ap~S(x) and Ap r 4 six)
are available, any progrcm sequence may be stated in general form (that is,
~\lithout Selec,tron location designatior:s for the nu ... mbers being operated on),
and the Selectron locations of the nwnbers to be operated on substituted when
ever that sequence is used. As an example, consider p general code for nth
order integration of lli total differential equutions for p steps of independent
variable t, formulated in advance. ~Jhem::.ver a problem. requiring this rule
is coded for the comput.er the genoral, integration sequence can be .insert ed
'I
into the statement of the problem along with coded instructions for telling
the sequence where it will be located in the memo!'y (so that the proper S(x)
designations will be inserted into such orders as CU~S(X), etc.).
Vfuenever \
this sequence is to be used by the computer, it will automntically substitute the correct values of m, n, p, and Lit, as well as the locations of the
boundary conditions and the descriptions of the differential equations, into
the general sequence. A library of such general sequences will be built up,
and facilities provided on the typewriter for cunvenient U1sertion of any of
these into the coded statement of a problem (cf. 60804). When such a scheme
is used, only the unique features of a problem need be coded.
6.6.66 The manner in which the control shift operations
[eu...." S(x), CUI 4 6(x) ,. CC "_,. S(x), and eel _, s(xD are realized has been
discussed in 6.4 and needs no further comrnento
6<6.7. One basic question which must'be decided before a cOllpu~er
is : built is whether the machine is to hove a socalled floating binary (or
47
·decimal)point. While a flo,ating binary point is undoubtedly very conv:.enient
in coding problems, b'.lilding it 'into the cOI:1puter adds greatly.to its complex
ity, and hence a cho.i.ce in this matter should receive very careful attention ..
However, it should first be noted that the el,.l_ternat,ives ordinarily considered
(building a machine with a floating binary point v .e , doing all computation
with a fixed binary point) are not ex .... haust.Lve and hence that the arguments
generally advanced for the flo:rd_Ilg binary point are only of limited validity.
Such arguments overlook the fact that the choice with respect to any particular
operation (except for certain basic ones) is not between building it into the
computer and not using it at all, but rather between building it into the
computer and programming it out of operations built into the computer.
Building a flot~ting binary point into the computer will not only
complicate the control but will also increase the Length of a number and hence
increase the size of the memory 8J.'1d the arithmetic unit. Every number is
effectively Lncreaaed in size, even though the floating binary point is not
needed in many Lnst ances , Fu:::thermore, there is considerable redundancy in a
floating binary point type of notation, for each number carries with it a
e ce Le factor, while generally speaking a s.ing.l e scale factor will suffice for .9. possibly extensive set of numbers. By means of the operations already
~escribed in the report a flQating binary point can be prograrr£1ed. While

additional memory capacity is needed for this, it is probahl.y less than that
:>"'~~quired by a builtin floding binary point since a d.ifferent scale factor
ioes not need to be remembered for each number.
To program a floating binary point involves detecting where the
::..rst zero occurs in a numbe r in the Accumulator. Since the Accumulator has
shifting facilities this can best be done by means of them. In t.erms of the
operations previously described this would require taking the given number
48 ...
(
out of the Accumulator nnd p~rforaing a st4table arithmetical operation on it; For a (multiple) right shift a multiplicat.j_on, for a (multiple) left shift either one d iv i sf.on, or as many douhLings (Le. add.i't.i.ons ) as the shift has
st ages. How ever, the s c Op6 rat. ions ;"1'e in '3,onveni ent 21d time cons und.ng , SO we propose to Lnt roduce twv operat.Lons (1 and .tl) in oder that this (L e. Lhe
single .left and right shift) can be accompf.Lshed directly. These operations make use of fEic:i.lities already present in the sccucul.et.o r and hence add V($ry little equipment to the computer. It should be noted. t hat in many instances a sipgle use of L andpossihly of R will suffice in programaung a floating binary point. For if the two factors in a lJ1ulLiplicatioh haVE: no superfluous zeros, the
product will have at most one superfluous zero (for if i i.l 41 <:: 1 and
~ ~ I yl <;1, then l';: ~ )Xil <1). ':i.'his is siid.larly true in division (for if
i s IX I c ~ and ~ c I Y J < 1. t hen k e I ~·I « 1)., In addition and subtraction any
I , numbers growing out of'rwlge can be treated simil1'!.:tly.. Numbers which d6Cl"e1JSe ·in these cas es , L,e .. ; develop a sequence of zertos at the beginning, are ;:oe[).lly (mathematically) losing precision..... lknc£' it is perfectly proper to
0!1lit formal readjustments in this event. (Indeed, such a true loss of precision cannot .be obv.i.at.ed by any formal procedure , but , if at all, onJ,y by a different nat.hemat ieal formulation of the problem...)
6~ 7. [fable 1 shows that many of the operations which the control
:._s to execute have conunon elements.. rhus addition) subtraction, multiplication, and di.vi.s.ion all involve transferring a number from the Se1ectrons to .the "'·'3lectron Register. Hence t.he control may be simplified by breaking some of
the operations up into more basic ones. A timing circu.it will be provided
for each basic operation, and one or more such circuits will be involved il"l the execution of an ord6r~ The exact choice of basic operations will depe~d
upon how t he ari.t.hmet.Lc uru.t is built ..
49
In addition to the timing circuits needed for executing the orders
of Table 1, t.wo such cireui ts are needed f:lJ:' the automatic operations of
transferrin..:; orders f rom t~3 :<)(:;] ect ror; .!.Lpgi~t2~ '~0 Control Hegister and
Function TaiJle Regi.s:'er> and f'oz trlli"1b£"er:d_1"1.g an order from the Cor:trol
Register to ~·he Funct i.on 'L)l:J.a Regi3t.e!'  In n'!::"'I:J'~I. computer operation these
which is to be us ed next . ]n the' operat.Lons Gu I ..} j(x) and Cc I_;; Sex) the
first order of a pedr is i€noI'cd, so the bj nary count er must be altered
accordingly.
The execut i.on of a sequence 0": orC:32.~S :"nvolves using the various
timing ci.rcui 1:.S in sequence, iHhen a given tli.1..i'lg circuit has complet.ed its
operation, it emits a pulse wh.ic~ should go to t.he timing circuit to be used
•
next. Since this depends upon the par·ti cu.l.ar operation being executed, these
pulses are routed,.;;.ccordj.ng to the sign2.ls received from the decoding and
;recoding flUlction tables activated by the six binary digits specifying an
ordero
6c8~ In this section we will consider what must be added to the
control so that it can direct the mechanisms for gettDlg data into and out of
'r,he comput er, +hree d'i.f'f'ererrt. kinds of inputoutput mechanisms are p.Lanned ,
~lrst, a magnetic tape or film storag~ operated by a servomechanism controlled
ty the computer; second, some viewing tubes for graphical, portrayal of results;
and third, a typewriter for feeding data dar ect.Ly into the computer (not to
be identified with the typewriter used for making tapes o r films).
6,,801. Though a chcd.ce between a magnetic rned.ium (wire or tape;
and movie film has not yet been made, for ter.minological sir!lplicity we sta:.l
speek in terms of tape hereafter. ~ince there a.lready exists a way of
"transferring numbers between the SeLect rons and the accumul.ator , the Accuaul.atcr
50
may be used for t ranarerrtng nwnbers from and to a tape. Whether the latter
transfer will be done serially or in parallel will depend upon the input and
output speed, a question to be answered only by experimE;nt&tion. If it is
done serially the shifting facilities of the Accumulator will be employed.
Using the Accu.rnulator for this purpose eliminates the possibility of computing
and reading or writing on the tapes s imu.lt.aneous.Ly, However, simultaneous
operation of the computer and the inputoutput organ requires additional
temporary storage and introduces a synchronizing problem, and hence it is not
being considered for the first modal.,
Since, at the beginning of the problem, the computer is empty,
facilities must be built into the control_for reading a set of numbers from
a tape when the operator presses a manual switch. As each number is read from
a tape into the Accumulator, the control 11lUSt transfer it to its proper
location in the Sel~ctrons9 The control counter may be used to COI.U1t off these
pos i.t.Lons in seq~€nce, since it is capable of transmitting its contents to the :"unction Table Register. A detection circuit on the control counter will stop
the process when the specified number of numbers has been placed in the memory,
~:,nd the control will then be shifted to the orders located in the first position
vi' the Selectron memory.
It has already been stated that the entire memory facilities of the
·:.apes should be available to the computer without human intervention. This
~;,B2JlS that t.he control must be able t'o select the proper set of numbers from
.
·:~~lOse going byo Hence additional orders are required for the code. Here> 02
Lef'ore, we are faced with tvlO alternatives. He can make the control capahl,« u~·
€.xecuting an order of the form: Take numbers from positions p to p+s on ~.:·::"3
J3.nd place them in Selectron locations v to vl s , Ur we can make the corrtc.o.',
._~·pable of computing and reading or writing s.imul.t.aneous.Iy , there is little
51
merit in the former scheme so WE:; shall adopt the latter.
The computer must have some way of finding a particular number on a
tape.
One method of arranging for this is to have each number carry with it ,
its own location designation. A method more economical of tape memory
capacity is to use the Selectron memory facilities to remember the position
of each tape. For example, the computer would hold the nuraber'tl specifying
which number on the tape is in position to be r ead , If the control is
instructed to read the number at position Plan this tape, it will compare
PI with tl; and if they differ cause the tape to move in the proper direction. As each number on the tape passes by one unit is added or subtracted to tl
and the comparison repeated. When PI = tl numbers will be .transferred froLil the tape to the Accumulator and then to the proper Locati.on in the memory.
Then both tl and PI will be increased by 1, and the transfer from the tape to Accmnulator to memory repeated.  This will be iterated, until tl + s and PI + S are reached, at which time the control will direct the tape to stop.
Under this system th8 control must be able to execute the. following
orders with regard to each tape: Start the tape forward, Stclrt the tape in
:>:'''3Ver5e, stop the tape, transfer f'rom tape to Accumulator, and transfer from
!~":',cu:.nulator to tape. In addition, the tape must signal t'he control as e!:l.ch'
cigit is read and when the end of a. number has been reached. Conversely, when
recordtng is done the control must have a means of timing the signals sent
:>.>om the ACCllil11.1lator to the tape, and of counting off the digits if serial
. 6
'~:c,msmission is adopted. The 2 counter used for multiplication and divir3~ o."!
may be used for the latter purpose, but other timing circuits will be requ; !,;~,'" .
. ~or the former.
If the method of checking by means of two computer's operating . simultaneously is adopted, &lid euch maclune is built so that it can operate
52
independently of the other, then each wi.il have a separate inputoutput
mechanism. The process of making tapes for the computer mllst then be dupli
cat.ed, and in this way the work of the person makmg a tape can be checked.
Since the tape servomechanisms cannot, be synchronized by the central clock,
a problem of synchronizing the two computers when the tapes are being used
arises. It is probably not practical to synchronize the tape f'eeds to within
a given digit, but t hi s is unnecessary since the numbers cowing into the two
Accumu.Lat.or s need not be checked as the individual digits <,_rrive, but only
prior to being .depos l.Led in the Se.Lect ron memory.
608 .. 2. Since the computer operates on the binary system some means
of decimalbinary and binarydecimal conversion need to be provided. Various
!;l.lternative ways of handling the problem are under consideration. The conv er=
sian can be made in the typewriter and prLnt.er, so that the tape only receives
binary numbers. Alternatively, each decimal digit could be expressed in a
hinary code, requi.rd.ng four binary digits. Then the standard 40 binary digit
word in the Selectrons 'Would accomodat e only ten decimal, digits. There are
similar alternatives with respect to binarydecimal conversion.
6.8Q3. It is posai.b.l e to useSelectrons for the viewing tubes, in
~;;J:lich case programming the viewing operation is quite simple. The viewing
E.·electrons can be srd.t ched by the same function t.cbl.es that switch the memory
2electrons. A single order wUl then serve to graph a point on the memory
:::;:electrons. jjy means of the substitution operat Lcn Ap ~ S (x) and Ap I 1 b(x),
sixdigit numbers specifying the abscissa and ordinate of the point (six binary digits represent a precision of one part in 26 = 64, 1. e. of about
 OJ
) • ,'_.. /':1
",'hich seems r'easonabl.e in such a component) can be substituted in this cr~.{~,:,.
which will specify that a particular one of the viewing Se.Lect.rons is to be
&ctivated..
53
6Q8.4. The typewriter and printer used for preparing tapes and printing from tapes wiLl be built separately from the machine and hence will crave Lndopenderrt program controls. He will not discuss these here except to formulate the requi.rement.s they must satisfy in ordf;r to silnplify the preparation and checking of tapes to a degree consistent with the facilities of the computer itself. As was shown in 6.6.5, the sta_teruent of a new problem on
a tape involves data unique to that problem (and hence put in via the typewriter) int.erspersed with data found on a previously prepared tape (from the library)! Hence the typewriter control must have a means whereby the operator can order any particular set of numbers frem the library tape to the new tape. In addition, the operator must, be able to print any part of what is on a tape, to check one tape against another automatically, and to easily correct errors f'ound on a tape. It is frequently very convenient to introduce data into a '?omputation without producing a new' tape. Hence it is planned to build one .o~ur,ple typewriter as an integral part of the computer. By means of this '~,ypewriter the operator can stop the computatiori, type in a memory location !"Nhich will go to the Function Table Re.:'ister), type in a number (wh.ich will ~o to the Accumul&tor e~d then be placed in tue first mentioned location),
i1_" .... .J. start the computation again.
6.8~5. Tilere is one further order that the control needs to cxecut e , There should be some means by whi~h t he computer can signal to t.he li;_.:>erator when a comput.atd.on has been concluded. Hence an order is needed ,''l':ich will tell the computer to flash a light or ring a bell.
~~'r~~
d o . .1
.j.J
• .1 (f,l o 0.
!
I
I
1
I
I

00 0..
Cl Cl U} ",)
0.. 0)

Cl
I ~
.
C\l rl
.
C"\ rI
. .
~s1
. . .
O">Orl rlrl
.
..;t
.
to