ENIAC                             U. S. Army

A Logical Coding System Applied to the ENIAC

SECTION IV: SUMMARY OF ORDERS

A summary of orders (machine instructions) is found on the following 13 pages.

ORDERS FOR 60 WORD VOCABULARY - November 13, 1947

ORDERS FOR 60 WORD VOCABULARY - November 13, 1947
Code Number Code Name Order
00 01,02,03, 04,05,10 11,12,13 14,15, 21-25 C x[l] Clear Acc. 15 Acc. x clear, and then receive from Acc. 15 which transmits and then clears (x is not equal to 6,13,15,20)
20 13[l] Acc. 13 hold and receive from Acc. 15, which transmits, then clears
### AAA Text

Editor's note: This section will be converted to an HTML Table as soon as possible.


Code Number
------------------------------------------
00
01,02,03,
04,05,10
11,12,13
14,15,
21-25
------------
20
------------
31-35,
40-45,
51-54,64
------------
50
------------
30
------------
55
------------
60
------------
63
------------
65
------------
90
------------
71
------------
80
81
82
83
84
------------
70
------------
72
------------
61
------------
62
------------
75
------------
85
------------
93a
------------
94a
------------
95a
------------
91a
------------
92a
------------
73a
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Code Number
------------------------------------------
74a
------------
94
------------
95
------------
91
------------
92
------------
93
------------
73
------------
74
------------------------------------------------------------------------------
Code Name
------------------------------------------
C
x[l]
------------
13[l]
------------
x[t]
------------
13[t]
------------
X
------------
Divide
------------
Square root
------------
M
------------
DS
------------
Sh
------------
Halt
------------
AB
CD
EF
GH
JK
------------
N2D
------------
F.T.
------------
Pr.
------------
Rd.
------------
C.T.
------------
Sh'
------------

         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Code name
------------------------------------------
N3D8
------------
N3D6
------------
N6D6
------------
20[l]
------------
20[t]
------------
6[l]
------------
6[t]
------------
N4D
------------
N6D
------------
18 <--> 20
------------
6(11,10,9)
------------
6(8,7)
------------
6R3
------------
6R6
------------------------------------------------------------------------------
Order
------------------------------------------
Clear Acc. 15
Acc. x clear, and then receive from Acc. 15 which transmits and then clears
(x is not equal to 6,13,15,20)
------------
Acc. 13 hold and receive from Acc. 15, which transmits, then clears
------------
Acc. x transmit-hold to Acc. 15 (x is not equal to 6,13,15,20)
------------
Acc. 13 transmit-clear to Acc. 15
------------
No round-off, 10 place multiplier.  The number, a in Acc. 11 is multiplied by
the number d, in Acc. 15, added to the number c in Acc. 13, and stored in
Acc. 15.  At the end Acc.'s 11,12,13 hold a, 0, and d respectively.
------------
Divide and round-off to 10 places.  The number c in Acc. 15 is divided by the
number b in Acc. 7, and the quotient is stored in Acc. 15, the remainder in
Acc. 5.  Acc. 13 must be clear at the beginning.  The alternate division order
uses a special + 2 shifter at 4(alpha) that takes data arriving on line 9 and
puts it into counter 11.  For this reason, denominator must always exceed
numerator and, if decimal points of numerator and denominator are at extreme
left, decimal point of quotient is also at extreme left.
------------
Round-off to 10 places.  The square root of the number c, in Acc. 15 is put
into Acc. 15 and the remainder in Acc. 5.  Acc. 13 must be clear at the
geginning.  A + 1 shift of square root is made by sending twice square root to
Acc. 15 five times.  This means that if decimal point of radicand is at
extreme left, decimal point of square root is also at far left.
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Code Name
------------------------------------------
(complement of no. in Acc. 15)
------------
Drop the sign of the number in Acc. 15.  Note that if number in Acc. 15 is
originally -a, it will become (10**10 -a); if it is originally, a, it will
remain, a.
------------
Shift no. in Acc. 15 as described below.
Shift order takes two positions:
  1st position:  code symbol 90
  2nd position:  10j + k
where
  j indicates direction (0 to left, 9 to right)
  k indicates number of places
    (1 is less than or equal to k is less than or equal to 5)
------------
Do not get next order (all other orders include getting next order) and
therefore cease computing.
------------------------------------------------------------------------------
Order
------------------------------------------
Clear Acc. 11, then constant transmitter send 1st. no. mentioned to Acc. 11
and 2nd no. mentioned to Acc. 15.
------------
Send next pair of instruction digits to Acc. 15.  This order occupies two
order positions.
  1st position:  code symbol 70; 2nd:  10(alpha) + (beta)
where 0 is less than (alpha) is less than 9,
  0 is less than or equal to (beta) is less than or equal to 9.
------------
Clear Acc. 11. F.T. transmit 12 digits and 2 signs from F.T. and line
specified in Acc. 8(3,2,1).  Acc. 11 receive left sign and 6 digits.  Acc. 15
receive right sign and 6 digits.  Increase arg. in Acc. 8 by 1.  Nos. are
received at far left of 11 and 15.
------------
Move next card into printing position and print contents of accs. 1, 2, 15-20. 
Move next card into read position.
------------
Store information from card on relays of ENIAC reader.
------------
Examine no., a, in Acc. 15 and then clear Acc. 15.
  (1) If number in Acc. 15 is negative, continue with next order on line
        specified at 6(3,2,1)
  (2) If positive, transfer 6(6,5,4) --> 6(3,2,1) and continue with FIRST
        ORDER of line now specified in 6(3,2,1).
------------
Shift no. located in Acc. 15 as described below.  Shift' order takes 2
positions:
  1st position:  code symbol 85
  2nd position:  10j + k
The symbols j and k are interpreted in the following way:
  The no. which is in Acc. 15 at the start of this order is shifted as
  described in the ordinary shift order (code symbol 90).  But, furthermore,
  the no. which is in Acc. 15 at the start of this order is also operated on
  by a shift of 100 - (10j + k), in the sense of the ordinary shift order. 
  The no. resulting from this latter shift is placed in Acc. 12.
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)

Order
------------------------------------------
Clear Acc. 8(3,2,1).  Send next 3 instruction digits to Acc. 8(3,2,1).  This
order consumes 3 order positions.
  (1)  1st position:  code symbol 93
  (2)  2nd position:  10(alpha) + (beta)

  In general, it is assumed (alpha) = 0.
  But if (alpha) is not equal to 0, (alpha) is added to whatever decade 4 of
  the Acc. 8 holds before this order is given.  (Beta) --> Acc. 8(3)

  (3)  3rd position:  10
         (gamma) --> 8(2)
         (delta) --> 8(1)
------------
Clear Acc. 6(3,2,1).  Then send next 3 instruction digits to Acc. 6(3,2,1).
take next order from FIRST ORDER POSITION of line now indicated in
Acc. 6(3,2,1).  This order consumes 3 order positions.
  (1)  1st order position:  code symbol 94
  (2)  Remarks made above in N3D8 apply here if Acc. 6 is substituted
       wherever Acc. 8 is mentioned in N3D8.
------------
Clear Acc. 6(6-1).  Then send next 6 instruction digits to Acc. 6(6-1).  Take
next order from FIRST ORDER POSITION of line now indicated in Acc. 6(3,2,1). 
This order consumes 4 order positions.
  (1)  1st position:  code symbol 95
  (2)  2nd position:  10(alpha) + (beta)
         (alpha) --> 6(6),  (beta) --> 6(5)
  (3)  3rd position:  10(gamma) + (delta)
         (gamma) --> 6(4),  (delta) --> 6(3)
  (4)  4th position:  10(epsilon) + (rho)
         (epsilon) --> 6(2),   (rho) --> 6(1).
------------
Same as x[l] (see common orders).
------------
Same as x[t] (see common orders).
------------
Same as x[1] (see common orders) BUT take next order from FIRST ORDER POSITION
of line specified at 6(3,2,1).
------------
Same as x[t] (see common orders).
------------
Send next 4 instruction digits to Acc. 15.  This order takes 3 order
positions.
  (1)  1st position:  code symbol 94
  (2)  2nd position:  10(alpha) + (beta)
         where (alpha) --> 15(4)
               (beta)  --> 15(3)
  (3)  3rd position:  10(gamma) + (delta)
         where (gamma) --> 15(2)
               (delta) --> 15(1)
------------
Send next 6 instruction digits to Acc. 15.  This order takes 4 instruction
positions.
  (1)  1st position:  code symbol 94
  (2)  2nd position:  10(alpha) + (beta)
         where (alpha) --> 15(6),  (beta) --> 15(5)
  (3)  3rd position:  10(gamma) + (delta)
         where (gamma) --> 15(4),  (delta) --> 15(3)
  (4)  4th position:  10(epsilon) + (zeta)
         where (epsilon) --> 15(2),  (zeta) --> 15(1)
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Order
------------------------------------------
Accs. 18 and 20 interchange contents
------------
Acc. 15(11,2,1) transmit-clear to Acc. 6(11,10,9).  Then Acc. 6(11,10,9)
transmit-hold to Acc. 1(11,2,1).  Then Acc. 1(11,2,1) transmit-clear to
15(11,2,1).
------------
Acc. 15(2,1) transmit-clear to Acc. 6(8,7).  Acc. 6(8,7) transmit-hold to
Acc. 1(2,1).  Then, Acc. 1(2,1) transmit-clear to Acc.15(2,1).
------------
Clear 6(3,2,1) and then 15(3,2,1) transmit-clear to 6(3,2,1).  Get next
instruction from FIRST ORDER POSITION of line now specified 6(3,2,1).
------------
Clear 6(6-1) and then 15(6-1) transmit-clear to 6(6-1).  Get next instruction
from FIRST ORDER POSITION of line now specified at 6(3,2,1).
------------------------------------------------------------------------------
Contents of Affected Accs.
Before
------------------------------------------
(15)a
(x)a
(15)b
------------
(13)a
(15)b
------------
(x)a
(15)b
------------
(13)a
(15)b
------------
(11)a
(12)b
(13)c
(15)d
------------
First digit place at left of b must be zero.
(5)a
(7)b
(13)0
(15)c
------------
(5)a
(13)0
(15)c
c is less than or equal to .24 99 9999 99
------------
(13)0
(15)a
------------
(13)0
(15)a
------------
(13)0
(PM counter of 15)
(counters 1-10)
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Contents of Affected Accs.
Before
------------------------------------------
(13)0
(15)a
------------
------------
(11)x
(15)y
Const. Trans
(A)a
(B)b
------------
(13)0
(15)x
------------
(8) places 3,2,1
    a
(11)x
(15)y
------------
Move and print
------------
------------
Acc. 6
11-7 x
6-4 a
3-1 b
Acc. 13 0
Acc. 15 a
------------
If j=0
(12)a
(13)0
(15)b

If j=9
(12)a
(13)0
(15)b

N.B. The sign of the no. stored in Acc. 15 before this order is given is
preserved with the nos. that result in accs. 12 and 15 from this order.
------------
Acc. 8
11-4 x
3-1 y
Acc. 13 0
------------
Acc. 6
11-4 x
3-1 y
Acc. 13 0
------------
Acc. 6
11-7 x
6-4 y
3-1 z
Acc. 13 0
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Contents of Affected Accs.
Before
------------------------------------------
(20)a
(15)b
------------
(20)a
(15)b
------------
(6)a
(15)b
------------
(6)a
(15)b
------------
(13)0
(15)a
------------
(13)0
(15)a
------------
(15)0
(18)a
(20)b
------------
Acc. 6
11-9 x
8-1 y
Acc. 13 0
Acc. 15 10-3 0
  11,2,1 a
------------
Acc. 6
11-9 x
8,7 y
6-1 z
Acc. 13 0
Acc. 15 11-3 0
1,2 a
------------
Acc. 6
11-4 x
3-1 y
Acc. 13 0
Acc. 15
3-1 b
------------
Acc. 6
11-7 x
6-4 y
3-1 z
Acc. 13 0
Acc. 15
6-4 a
3-1 b
------------------------------------------------------------------------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Contents of Affected Accs.
After
------------
(15)0
b
0
------------
a + b
0
------------
a
a + b
------------
0
a + b
------------
a
d
0
ad + c
------------
First digit place at left of b must be zero
rem.
b
0
c/b
------------
rem.
0
c
c is less than or equal to .24 99 9999 99
------------
0
-a
------------
0
+ or -  +
        a
------------
0
10**k . a if j=0  20
----------------
     (13)0

(15)10**-k . a if j=9
------------
------------
a
y + b
a
b
------------
(13)0
(15)x +
10(alpha) + (beta)
------------
a + 1
L(a)
R(a)
------------
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Contents of Affected Accs.
After
------------
------------
If a is greater than or equal to 0
Acc. 6
11-7 x
6-4 0
3-1 a
Acc. 13 0
Acc. 15 0

If a is less than 0
Acc. 6
11-7 x
6-4 a
3-1 b
------------
10**-(10-k) . b
0
10**k . b

10**(10-k) . b
0
10**-k . b
------------
N.B. The sign of the no. stored in Acc. 15 before this order is given is
preserved with the nos. that result in Accs. 12 and 15 from this order.
------------
Acc. 8
11-4 x + (alpha)
3-1 10**2 (beta) + 10(gamma) + (delta)
Acc. 13 0
------------
Acc. 6
11-4 x + (alpha)
3-1 10**2 (beta) + 10(gamma) + (delta)
Acc. 13 0
Next order is taken from F.T.
(beta) + 1 (beta = 0,1,2, for Table 1,2,3, resp.) 1st pos. of line
(10(gamma) + (delta))
------------
Acc. 6
11-7 x
6-4 10**2 (alpha) = 10(beta) + (gamma)
3-1 10**2 (delta) + 10(epsilon) + (rho)
Acc. 13 0
------------
b
0
------------
a
a + b
------------
b
0
------------
a
a + b
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Contents of Affected Accs.
After
------------------------------------------
(13) 0
(15) a + 10**3 (alpha)
+ 10**2 (beta)
+ 10(gamma) + (delta)
------------
0
a + 10**5 (alpha) + 10**4 (beta)
+ 10**3 (gamma) + 10**2 (delta)
+ 10 (epsilon) = (zeta)
------------
(15) 0
(18) b
(20) a
------------
x + a
y
0
0
x + 2
------------
x
y + a
z
0
0
y + a
------------
x
b
0
0
------------
x
a
b
0
0
0
------------------------------------------------------------------------------
Add. times
------------------------------------------
7
7
------------
7
------------
7
------------
7
------------
15
------------
approx. 75
------------
approx. 75
------------
7
------------
         ORDERS FOR 60 WORD VOCABULARY - November 13, 1947 (continued)


Add. times
------------------------------------------
7
------------
20
------------
------------
7
------------
14
------------
13
------------
60 cards per min.
------------
100 cards per min.
------------
14
------------
8
------------
20
------------
20
------------
20
------------
26
------------
7
------------
7
------------
9
------------
7
------------
20
------------
26
------------
9
------------
7
------------
7
------------
13
------------
13
------------------------------------------------------------------------------



UP | PREV | NEXT