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 base-10 cards.
For each initial equation, one to six base-10 cards are read onto the CA and a base-2 card is punched.
The bank switches of the ABC are used to direct the coefficients on a base-10 card to a particular bank of locations on the CA.
The conversion from base-10 to base-2 is performed by the machine during the reading of the card.
|
 |
Stage 2: Forward Elimination
|
Starting with the N base-2 cards from stage 1, pair-combinations are performed. A column-by-column 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 pair-combination 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 pair-combination 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 base-2 cards flow from the preceding stage into this stage and more pair-combinations are performed. Shown here is a row-by-row sequence. The results of a pair-combination can be transferred immediately from the CA to the KA for use in the following pair-combination.
This reduces the number of cards that must be punched and read but comes at the expense of having to move the SIGN-CHANGE and ZERO-DETECT plugs between every pair-combination.
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 base-10 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 base-10 for that equation could be performed, thus avoiding having to re-read 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 pair-combination.
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 | base-2 card reader |
B10R | base-10 card reader |
B10R[d..] | digit d of the 5 numbers from the base-10 card reader. d=1 to 15, right to left |
B10D | base-10 display |
B10D[d] | digit d of base-10 display. d=1 to 15, right to left |
B10[r,b] | a base-10 card. r=1 to N, b=1 to 6 |
B2[r] | a base-2 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 base-10 display, with borrow limited to one higher digit |
INC(B10D[d]) | increment a digit in the base-10 display, no carry |
+ - | a two-state 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.