Patent GB-946918-A (GB)
Title: Improvements in or relating to electronic calculating apparatus
Inventor: WENSLEY JOHN HENRY
IPC: G06F9/48
Filed: 1959-06-08
Abstract: 946,918. Programming arrangements for computers. INTERNATIONAL COMPUTERS & TABULATORS Ltd. June 3,1960 [June 8,1959], No. 19489/59. Heading G4A. Instructions from a main store 28 are loaded into a program control unit 71 when a loading instruction is received in operation register 34 forming part of a circulating loop of three sixdecimal-digit stores 36, 35, 34; and "add 1" network 41 modifies the loading instruction in each cycle to bring out instructions normally from sequential addresses in 28. The word length of 12 decimal digits allows two single-length instructions to be transferred as a result of a loading instruction, from an address designated by the DEF digits to register 3 (which is split into halves 3a and 3b) via transfer circuit 27. From 3a and 3b the instructions are shifted into 34 and 35 by shift pulses on line 4, gates 44, 47, 49 and 50 being opened by a decoder 56 controlled by the ABC digits of the loading instruction while the other gates are held closed; at the same time the loading instruction is transferred to 36 with its core store address increased by one. The first of the loaded instructions is now carried out; this may or may not call for a transfer from the core store to register 3 but in general will pass the contents of one or more registers 1-3 to an addersubtractor 13 and return the result to a register. The control signals for the gates and unit 13 are supplied by unit 56 in response to digits A-C. The second single-length instruction is now shifted from 35 into 34 (the modified loading instruction moving to 35) and obeyed, and the cycle is completed by the transfer of the loading instruction to 34 to call for the next instruction pair. Entry to subroutine. This is effected by making the second instruction of a pair a loading instruction so that the modified loading instruction of the main program is in 35 when loading is called for, and is transferred to 3 a  as the first instruction pair is of the subroutine is shifted into 34 and 35. By making the first of this pair an instruction to write the contents of 3 into a location immediately following the subroutine the main program will be re-entered automatically. Double-length instructions are needed, for example, for transfers between core store 28 and a magnetic drum store 54. Register 35 controls a drum addressing unit 80 (operative only when the function digits AB call for a drum transfer via line 81) and a block of words (the number specified by digit J in 35) is transferred via register 3, shift pulses from the drum clock track being used (via gate 68) instead of shift pulses from 59. For each word transfer 18 shift pulses cause a complete cycle in unit 71, network 41 being used to count up the,addresses in 28 and 54 each time, but being inhibited from increasing the loading instruction address, after the first cycle. A counter set by the J digit is counted down one at each word transfer. Start; input and output. An "instruction set up" unit 69 may be used to enter the program by manually entering a loading instruction into 34. It may also be used for entering input or output subroutines called for by peripheral units over lines 75, by use of registers in 69 each associated with a peripheral unit and containing an appropriate subroutine loading instruction.