ABC 
An ABC Operator's Manual: 4. Flowchart of Operation




The four stages of operation are now elaborated, further distinguishing the activities performed by the human operator from those performed by the machine. As an operator, one need only pay attention to the green boxes.
However, for the sake of exposition and contrast, the automatic actions of the machine are detailed in the blue boxes.
The nomenclature used in the flowchart is detailed at the bottom of the page.
The unloading of cards from the readers and punch is considered to be implicit and is not belabored in the flowchart.
The smaller diagrams inset in the text show the portion of the process being performed from figure 2.1 of the Stages of Operation chapter.
The automatic operation program for the ABC simulator presents another view of the operating sequence.

Stage 1: Initial Problem Preparation

The prescaled coefficients are punched onto base10 cards.
For each initial equation, one to six base10 cards are read onto the CA and a base2 card is punched.
The bank switches of the ABC are used to direct the coefficients on a base10 card to a particular bank of locations on the CA.
The conversion from base10 to base2 is performed by the machine during the reading of the card.


Stage 2: Forward Elimination

Starting with the N base2 cards from stage 1, paircombinations are performed. A columnbycolumn sequence is shown here as indicated in the inset diagram. The operator sets the ZERO DETECT and SIGN CHANGE plugs to select the coefficient to eliminate (e) as the process progresses.
The operator must set the ADD/SUB mode before each paircombination in accordance with the signs of the coefficient being eliminated. The mode state can itself be used as a memory assistance to the operator between the reading of the two cards involved. After the first card for a paircombination has been read, the ADD/SUB button is used to set the mode based on observation of the POSITIVE/NEGATIVE lamps. After the second card is read the mode is flipped if the NEGATIVE lamp is lit.


Stage 3: Backward Elimination

Again, N base2 cards flow from the preceding stage into this stage and more paircombinations are performed. Shown here is a rowbyrow sequence. The results of a paircombination can be transferred immediately from the CA to the KA for use in the following paircombination.
This reduces the number of cards that must be punched and read but comes at the expense of having to move the SIGNCHANGE and ZERODETECT plugs between every paircombination.
An alternative method for setting the ADD/SUB mode is also shown here. The operator notes the signs of the coefficient involved and sets the mode to SUB if the signs are the same, or ADD if they are different.


The final N cards each represent an equation in one variable and so have two coefficients of pertinence on them, and which require conversion to decimal form.
The positions of these two coefficients are the number of the row it is in, and N+1 (the constant term).
The ZERO DETECT and SIGN CHANGE plugs are set to select the coefficient for conversion.
The ADD/SUB mode must again be manually set before beginning a conversion.
The sign of each coefficient must be noted from observation of the POSITIVE/NEGATIVE lamps to derive the sign of the result. This observation must be made after inserting the plugs and waiting for a complete revolution of the drums, but before pressing the READ 10 button (the lamp indications will change during the conversion).
Each coefficient is converted to decimal by the ABC and displayed on the base10 display. The values can be immediately entered on a desk calculator for division to obtain the corresponding variable value.


Other efficiency improvements to this ordering are possible.
Most notably, the conversions of stage 4 could be integrated into stage 3.
After punching the card in each row during stage 3, the conversions to base10 for that equation could be performed, thus avoiding having to reread the equation onto the CA later.
The punching of the last card in row 1 could also be avoided.
It should be noted though, that attempts to use an equation on the KA multiple times will fail as the KA values are altered during a paircombination.
Flowchart Nomenclature 
CA  counter abacus (all 30 coefficients) 
CA[B..]  the bank of 5 coefficients on CA selected by the BANK switches. B=1 to 6 
CA[S]  the coefficient on CA selected by the SIGN CHANGE plugs. S=1 to 30 
CA[Z]  the coefficient on CA selected by the ZERO DETECT plugs. S=1 to 30 
KA  keyboard abacus 
B2R  base2 card reader 
B10R  base10 card reader 
B10R[d..]  digit d of the 5 numbers from the base10 card reader. d=1 to 15, right to left 
B10D  base10 display 
B10D[d]  digit d of base10 display. d=1 to 15, right to left 
B10[r,b]  a base10 card. r=1 to N, b=1 to 6 
B2[r]  a base2 card. r=1 to N 
dSGN(CA[S])  sense whether the sign of CA[S] changed during preceding arithmetic operation 
DEC(B10D[d])  decrement a digit in the base10 display, with borrow limited to one higher digit 
INC(B10D[d])  increment a digit in the base10 display, no carry 
+   a twostate variable directing whether addition or subtraction will be performed 

When a symbol is used without indices, a vector operation is implied.
The '+ ' variable is considered to have two types of values, TRUE is equivalent to addition, FALSE to subtraction.