previous | contents | next

214 Part 3 The instruction-set processor level: variations in the processor

Section 1 Processors with greater than 1 address per instruction

of the result: for a positive or zero result it transfers control to the command (a ), for negative results to the command (b ).

The result of the operation of multiplication is dependent on the relationship to unity. Transfer is made to the command (a ) in the case where the result is greater than or equal to one, and to command (b ), if it is smaller than one.

For conditional transfer after the operation of comparison, transfer to the instruction (a ) is made in the case of equality of binary digits, and to (b ) when there is any inequivalence.

After the operation L (logical sequential multiplication) the conditional transfer command jumps to the instruction (a ) when the result is different from zero, and to instruction (b ) when it is equal to zero.

A forced comparison is given by

C a a 0000

The third address in this command is not used and in its place is put zero.

14. I-O a 0000 0000. This instruction is executed parallel with the code of the other operations, and guarantees bringing into working position in good time the zone of the external accumulator (magnetic tape unit) with the address a .

15. H 0000 0000 0000. This instruction executes an absolute halt.

Group transfer instructions

Special instructions for group transfer serve for the accomplishment of a transfer of numbers to and from the accumulators. In the second address in these instructions stands an integer, designating the quantity of numbers in the group which must be transferred. Group transfers always are produced in increasing sequence of addresses of cells in the storage.

16. T1 0000 n g . The instruction T1 guarantees transfer from a given input unit (with punched cards, perforated tape, etc.) into the storage. In the third address g of the instruction is indicated the initial address of the group of cells in the storage where numbers are to be written. With punched paper tape or punched cards the variables are written in sequence, beginning with the first line.

17. T2 0000 n g . The instruction T2 guarantees transfer of a group of n numbers from an input unit into the external accumulator in zone g .

20. T3 a n g . This instruction guarantees a line-by-line sequence of transfers of n numbers from zone a of the external accumulator into the cells of the storage beginning with the cell with address g .

21. T4 a n 0000. This instruction guarantees the transfer to the input-output unit (to punched paper tape or punched cards) of a group of n numbers from the storage, beginning with address a . The record on punched paper tape or punched cards as a rule will begin with the first line and therefore a positive indication of the addresses of the record is not required.

22. T5 a n g . Instruction T5 guarantees transfer of a group of n numbers from one place in the storage with initial address a into another place in the storage with initial address g .

23. T6 a n g . Instruction T6 guarantees transfer of a group of n numbers from the storage with initial address a into the external accumulator with address g .

24. T7 a n 0000. Instruction T7 serves for transfer of n numbers from the zone of the external accumulator with address a into the input-output unit.

Instructions T2 and T7 cannot be performed concurrently with other machine operations.

Standard subroutine instructions

Certain instructions in the Strela, although written as ordinary instructions, are actually "synthetic" instructions which call on a subroutine for computation of the function involved. The amount of machine time (number of basic instruction cycles) for an iterative process depends on the required precision of the computed function. The figures given below are based on approximately ten-digit decimal numbers with desired precision one in the tenth place.

25. D a b g . This standard subroutine serves for execution of the operation of division: The number (a ) is divided into the number (b ) and the quotient is sent to cell g .

The actual operation of division is executed in two steps: the initial obtaining of the value of the inverse of the divisor, by which the dividend is then multiplied. The computation of the inverse is given by the usual Newton formula, originally used with the EDSAC [Wilkes et al., 1952].

yn+1 = yn(2 - ynx)

For x = d. 2p, where 1/2 < d < 1, the first approximation is taken as 2-p. The standard subroutine takes 8 to 10 instructions and can be executed in 18-20 machine cycles (execution time for one typical command).

26. Ö a 0000 g . This instruction guarantees obtaining the value Ö x from the value x = (a ) and sending the result to cell g . Initially 1/ Ö x is computed by the iteration formula

yn+1 = 1/2yn(3 - xyn2)

previous | contents | next