Alan Turing's Automatic Computing Engine the Master Codebreaker's Struggle to Build the Modern Computer

Total Page:16

File Type:pdf, Size:1020Kb

Alan Turing's Automatic Computing Engine the Master Codebreaker's Struggle to Build the Modern Computer Alan Turing's Automatic Computing Engine The Master Codebreaker's Struggle to Build the Modern Computer Edited by B. Jack Copeland OXFORD UNIVERSITY PRESS Contents List of Photographs xvi Contributors xvii Introduction 1 B. Jack Copeland Part I The National Physical Laboratory and the ACE Project 1. The National Physical Laboratory 15 Eileen Magnello 2. The creation of the NPL Mathematics Division 2 3 Mary Croarken 3. The origins and development of the ACE project 3 7 B. Jack Copeland 4. The Pilot ACE at the National Physical Laboratory 93 James H. Wilkinson Part II Turing and the History of Computing 5. Turing and the computer 107 B. Jack Copeland and Diane Proudfoot 6. The ACE and the shaping of British computing 149 Martin Campbell-Kelly 7. From Turing machine to 'electronic brain' 173 Teresa Numerico Contents Part III The ACE Computers 9. The Pilot ACE instruction format 209 Henry John Norton 10. Programming the Pilot ACE 215 /. G. Hayes 11. The Pilot ACE: from concept to reality 223 Robin A. Vowels 12. Applications of the Pilot ACE and the DEUCE 265 Tom Vickers 13. The ACE Test Assembly, the Pilot ACE, the Big ACE, andtheBendixGis 281 Harry D. Huskey 14. The DEUCE—a user's view 297 Robin A. Vowels 15. The ACE Simulator and the Cybernetic Model 331 Michael Woodger 16. The Pilot Model and the Big ACE on the web 335 Benjamin Wells Part IV Electronics 17. How valves work 341 David 0. Clayden 18. Recollections of early vacuum tube circuits 345 Maurice Wilkes 19. Circuit design of the Pilot ACE and the Big ACE 349 David 0. Clayden XIV Contents Part V Technical Reports and Lectures on the ACE 1945-47 20. Proposed electronic calculator (1945) 369 Alan M. Turing 21. Notes on memory (1945) 455 Alan M. Turing 22. The Turing-Wilkinson lecture series (1946-7) (edited with an introduction by B. Jack Copeland) 459 AlanM. Turing and James H. Wilkinson 2 3. The state of the art in electronic digital computing in Britain and the United States (1947) 529 Harry D. Huskey Index 541 xv.
Recommended publications
  • History of Computer Science from Wikipedia, the Free Encyclopedia
    History of computer science From Wikipedia, the free encyclopedia The history of computer science began long before the modern discipline of computer science that emerged in the 20th century, and hinted at in the centuries prior. The progression, from mechanical inventions and mathematical theories towards the modern concepts and machines, formed a major academic field and the basis of a massive worldwide industry.[1] Contents 1 Early history 1.1 Binary logic 1.2 Birth of computer 2 Emergence of a discipline 2.1 Charles Babbage and Ada Lovelace 2.2 Alan Turing and the Turing Machine 2.3 Shannon and information theory 2.4 Wiener and cybernetics 2.5 John von Neumann and the von Neumann architecture 3 See also 4 Notes 5 Sources 6 Further reading 7 External links Early history The earliest known as tool for use in computation was the abacus, developed in period 2700–2300 BCE in Sumer . The Sumerians' abacus consisted of a table of successive columns which delimited the successive orders of magnitude of their sexagesimal number system.[2] Its original style of usage was by lines drawn in sand with pebbles . Abaci of a more modern design are still used as calculation tools today.[3] The Antikythera mechanism is believed to be the earliest known mechanical analog computer.[4] It was designed to calculate astronomical positions. It was discovered in 1901 in the Antikythera wreck off the Greek island of Antikythera, between Kythera and Crete, and has been dated to c. 100 BCE. Technological artifacts of similar complexity did not reappear until the 14th century, when mechanical astronomical clocks appeared in Europe.[5] Mechanical analog computing devices appeared a thousand years later in the medieval Islamic world.
    [Show full text]
  • Alan Turingturing –– Computercomputer Designerdesigner
    AlanAlan TuringTuring –– ComputerComputer DesignerDesigner Brian E. Carpenter with input from Robert W. Doran The University of Auckland May 2012 Turing, the theoretician ● Turing is widely regarded as a pure mathematician. After all, he was a B-star Wrangler (in the same year as Maurice Wilkes) ● “It is possible to invent a single machine which can be used to compute any computable sequence. If this machine U is supplied with the tape on the beginning of which is written the string of quintuples separated by semicolons of some computing machine M, then U will compute the same sequence as M.” (1937) ● So how was he able to write Proposals for development in the Mathematics Division of an Automatic Computing Engine (ACE) by the end of 1945? 2 Let’s read that carefully ● “It is possible to inventinvent a single machinemachine which can be used to compute any computable sequence. If this machinemachine U is supplied with the tapetape on the beginning of which is writtenwritten the string of quintuples separated by semicolons of some computing machinemachine M, then U will compute the same sequence as M.” ● The founding statement of computability theory was written in entirely physical terms. 3 What would it take? ● A tape on which you can write, read and erase symbols. ● Poulsen demonstrated magnetic wire recording in 1898. ● A way of storing symbols and performing simple logic. ● Eccles & Jordan patented the multivibrator trigger circuit (flip- flop) in 1919. ● Rossi invented the coincidence circuit (AND gate) in 1930. ● Building U in 1937 would have been only slightly more bizarre than building a differential analyser with Meccano.
    [Show full text]
  • Alan Turing's Automatic Computing Engine
    5 Turing and the computer B. Jack Copeland and Diane Proudfoot The Turing machine In his first major publication, ‘On computable numbers, with an application to the Entscheidungsproblem’ (1936), Turing introduced his abstract Turing machines.1 (Turing referred to these simply as ‘computing machines’— the American logician Alonzo Church dubbed them ‘Turing machines’.2) ‘On Computable Numbers’ pioneered the idea essential to the modern computer—the concept of controlling a computing machine’s operations by means of a program of coded instructions stored in the machine’s memory. This work had a profound influence on the development in the 1940s of the electronic stored-program digital computer—an influence often neglected or denied by historians of the computer. A Turing machine is an abstract conceptual model. It consists of a scanner and a limitless memory-tape. The tape is divided into squares, each of which may be blank or may bear a single symbol (‘0’or‘1’, for example, or some other symbol taken from a finite alphabet). The scanner moves back and forth through the memory, examining one square at a time (the ‘scanned square’). It reads the symbols on the tape and writes further symbols. The tape is both the memory and the vehicle for input and output. The tape may also contain a program of instructions. (Although the tape itself is limitless—Turing’s aim was to show that there are tasks that Turing machines cannot perform, even given unlimited working memory and unlimited time—any input inscribed on the tape must consist of a finite number of symbols.) A Turing machine has a small repertoire of basic operations: move left one square, move right one square, print, and change state.
    [Show full text]
  • P the Pioneers and Their Computers
    The Videotape Sources: The Pioneers and their Computers • Lectures at The Compp,uter Museum, Marlboro, MA, September 1979-1983 • Goal: Capture data at the source • The first 4: Atanasoff (ABC), Zuse, Hopper (IBM/Harvard), Grosch (IBM), Stibitz (BTL) • Flowers (Colossus) • ENIAC: Eckert, Mauchley, Burks • Wilkes (EDSAC … LEO), Edwards (Manchester), Wilkinson (NPL ACE), Huskey (SWAC), Rajchman (IAS), Forrester (MIT) What did it feel like then? • What were th e comput ers? • Why did their inventors build them? • What materials (technology) did they build from? • What were their speed and memory size specs? • How did they work? • How were they used or programmed? • What were they used for? • What did each contribute to future computing? • What were the by-products? and alumni/ae? The “classic” five boxes of a stored ppgrogram dig ital comp uter Memory M Central Input Output Control I O CC Central Arithmetic CA How was programming done before programming languages and O/Ss? • ENIAC was programmed by routing control pulse cables f ormi ng th e “ program count er” • Clippinger and von Neumann made “function codes” for the tables of ENIAC • Kilburn at Manchester ran the first 17 word program • Wilkes, Wheeler, and Gill wrote the first book on programmiidbBbbIiSiing, reprinted by Babbage Institute Series • Parallel versus Serial • Pre-programming languages and operating systems • Big idea: compatibility for program investment – EDSAC was transferred to Leo – The IAS Computers built at Universities Time Line of First Computers Year 1935 1940 1945 1950 1955 ••••• BTL ---------o o o o Zuse ----------------o Atanasoff ------------------o IBM ASCC,SSEC ------------o-----------o >CPC ENIAC ?--------------o EDVAC s------------------o UNIVAC I IAS --?s------------o Colossus -------?---?----o Manchester ?--------o ?>Ferranti EDSAC ?-----------o ?>Leo ACE ?--------------o ?>DEUCE Whirl wi nd SEAC & SWAC ENIAC Project Time Line & Descendants IBM 701, Philco S2000, ERA..
    [Show full text]
  • Alan Turing 1 Alan Turing
    Alan Turing 1 Alan Turing Alan Turing Turing at the time of his election to Fellowship of the Royal Society. Born Alan Mathison Turing 23 June 1912 Maida Vale, London, England, United Kingdom Died 7 June 1954 (aged 41) Wilmslow, Cheshire, England, United Kingdom Residence United Kingdom Nationality British Fields Mathematics, Cryptanalysis, Computer science Institutions University of Cambridge Government Code and Cypher School National Physical Laboratory University of Manchester Alma mater King's College, Cambridge Princeton University Doctoral advisor Alonzo Church Doctoral students Robin Gandy Known for Halting problem Turing machine Cryptanalysis of the Enigma Automatic Computing Engine Turing Award Turing test Turing patterns Notable awards Officer of the Order of the British Empire Fellow of the Royal Society Alan Mathison Turing, OBE, FRS ( /ˈtjʊərɪŋ/ TEWR-ing; 23 June 1912 – 7 June 1954), was a British mathematician, logician, cryptanalyst, and computer scientist. He was highly influential in the development of computer science, giving a formalisation of the concepts of "algorithm" and "computation" with the Turing machine, which can be considered a model of a general purpose computer.[1][2][3] Turing is widely considered to be the father of computer science and artificial intelligence.[4] During World War II, Turing worked for the Government Code and Cypher School (GC&CS) at Bletchley Park, Britain's codebreaking centre. For a time he was head of Hut 8, the section responsible for German naval cryptanalysis. He devised a number of techniques for breaking German ciphers, including the method of the bombe, an electromechanical machine that could find settings for the Enigma machine.
    [Show full text]
  • Alan Turing's Other Universal Machine
    viewpoints VDOI:10.1145/2209249.2209277 Martin Campbell-Kelly Historical Reflections Alan Turing’s Other Universal Machine Reflections on the Turing ACE computer and its influence. LL COMPUTER SCIENTISTS know about the Univer- sal Turing Machine, the theoretical construct the British genius Alan Turing Adescribed in his famous 1936 paper on the Entscheidungsproblem (the halting problem). The Turing Machine is one of the foundation stones of theoreti- cal computer science. Much less well known is the practical stored program computer he proposed after the war in February 1946. The computer was called the ACE—Automatic Comput- ing Engine—a name intended to evoke the spirit of Charles Babbage, the pio- neer of computing machines in the previous century. Almost all post-war electronic com- puters were, and still are, based on the famous EDVAC Report written by John von Neumann in June 1945 on behalf The Pilot ACE, May 1950. Jim Wilkinson (center right) and Donald Davies (right). of the computer group at the Moore School of Electrical Engineering at the roles. Computers were in the air and of one, and over the next few months University of Pennsylvania. Von Neu- universities at Manchester, Cam- he evolved the design of the ACE. His mann was very familiar with Turing’s bridge, and elsewhere established report was formally presented to the 1936 Entscheidungsproblem paper. In electronic computer projects. Out- NPL’s executive committee in Febru- 1937, Turing was a research assistant side the academic sphere, in Lon- ary 1946. at the Institute for Advanced Study at don, the National Physical Laboratory Although the ACE drew heavily on Princeton University, where von Neu- (NPL—Britain’s equivalent of the Na- the EDVAC Report, it had many novel mann was a professor of mathematics.
    [Show full text]
  • David Link There Must Be an Angel on the Beginnings of the Arithmetics Of
    david link There Must Be an Angel On the Beginnings of the Arithmetics of Rays From August 1953 to May 1954 strange love-letters appeared on the notice board of Manchester University’s Computer Department:1 “darling sweetheart you are my avid fellow feeling. my affection curiously clings to your passionate wish. my liking yearns for your heart. you are my wistful sympathy: my tender liking. yours beautifully m.u.c.”2 The acronym “M.U.C.” stood for “Manchester University Computer”, the ear- liest electronic, programmable, and universal calculating machine; the fully functional prototype was completed in June 1948.3 One of the very first software developers, Christopher Strachey (1916–1975), had used the built-in random generator of the Ferranti Mark I, the first industrially produced computer of this kind, to generate texts that are intended to express and arouse emotions. The 1 T. William Olle, personal communication, 21 February 2006: “I do remember a copy of the Strachey love-letter being put on the notice board and that must have been after August 1953 and probably prior to May 1954 (the date of Alan Turing’s death).” 2 Christopher Strachey, The “thinking” machine. Encounter. Literature, Arts, Politics 13 (1954): 25–31, p. 26. 3 Frederic C. Williams and Tom Kilburn, Electronic digital computers. Nature 162 (1948): 487. By “computing” and “calculating” I mean here and in the following in general the processing of data. Var- ious machines are claimed to be the “first” computer, but all others lack one of the properties men- tioned. The “ABC”, developed by John V.
    [Show full text]
  • The Computer As Von Neumann Planned It MD Godfrey* DF Hendry
    The Computer as von Neumann Planned It M. D. Godfrey* D. F. Hendry** Address for correspondence: Michael D. Godfrey Durand Bldg. ISL Electrical Engineering Department Stanford University Stanford, CA, 94305 Published in: IEEE Annals of the History of Computing, Vol.14 No.3 * Information Systems Laboratory, Electrical Engineering Department, Stanford University, Stanford, CA. ** T-H Engineering, Inc., Altadena, CA. 1 2 The Computer as von Neumann Planned It M. D. Godfrey D. F. Hendry ABSTRACT We describe the computer which was defined in von Neumann’s unpublished paper First Draft of a Report on the EDVAC, Moore School of Electrical Engineering, University of Pennsylvania, June 30, 1945. Motivation for the architecture and design is discussed, and the machine is contrasted with the EDVAC which was actually constructed. Keywords: architecture, computer, EDVAC, stack, tagged-memory, von Neu- mann architecture. 1. Introduction John von Neumann made a key contribution to the understanding and development of computer architecture and design in his unpublished report titled First Draft Report on the EDVAC [1]. However, in reading work which refers to this report and to the EDVAC (the acronym is defined in [10] to be: Electronic Discrete VAriable Computer) computer which it described some perplexing observations emerge: 1. The constructed EDVAC is usually described as being based on the von Neumann report [1]. 2. The von Neumann report is often described as the collective work of the Moore School group, unfairly given the sole authorship of von Neumann (see, for exam- ple, page xv of [11]). This would suggest that many of the ideas in the report were shared by the Moore School design group and therefore would be expected to appear in the constructed machine.
    [Show full text]
  • Topics in Programming Languages, a Philosophical Analysis Through the Case of Prolog
    i Topics in Programming Languages, a Philosophical Analysis through the case of Prolog Luís Homem Universidad de Salamanca Facultad de Filosofia A thesis submitted for the degree of Doctor en Lógica y Filosofía de la Ciencia Salamanca 2018 ii This thesis is dedicated to family and friends iii Acknowledgements I am very grateful for having had the opportunity to attend classes with all the Epimenides Program Professors: Dr.o Alejandro Sobrino, Dr.o Alfredo Burrieza, Dr.o Ángel Nepomuceno, Dr.a Concepción Martínez, Dr.o Enrique Alonso, Dr.o Huberto Marraud, Dr.a María Manzano, Dr.o José Miguel Sagüillo, and Dr.o Juan Luis Barba. I would like to extend my sincere thanks and congratulations to the Academic Com- mission of the Program. A very special gratitude goes to Dr.a María Manzano-Arjona for her patience with the troubles of a candidate with- out a scholarship, or any funding for the work, and also to Dr.o Fer- nando Soler-Toscano, for his quick and sharp amendments, corrections and suggestions. Lastly, I cannot but offer my heartfelt thanks to all the members and collaborators of the Center for Philosophy of Sciences of the University of Lisbon (CFCUL), specially Dr.a Olga Pombo, who invited me to be an integrated member in 2011. iv Abstract Programming Languages seldom find proper anchorage in philosophy of logic, language and science. What is more, philosophy of language seems to be restricted to natural languages and linguistics, and even philosophy of logic is rarely framed into programming language topics. Natural languages history is intrinsically acoustics-to-visual, phonetics- to-writing, whereas computing programming languages, under man– machine interaction, aspire to visual-to-acoustics, writing-to-phonetics instead, namely through natural language processing.
    [Show full text]
  • Computer Science
    Computer science PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sat, 10 Dec 2011 02:24:16 UTC Contents Articles Main article 1 Computer science 1 Supporting article 12 History of computer science 12 References Article Sources and Contributors 18 Image Sources, Licenses and Contributors 19 Article Licenses License 20 1 Main article Computer science Computer science or computing science (abbreviated CS) is the study of the theoretical foundations of information and computation. It also includes practical techniques for their implementation and application in computer systems. Computer scientists invent algorithmic processes that create, describe, and transform information and formulate suitable abstractions to design and model complex systems.[1] [2] Computer science has many sub-fields; some, such as computational complexity theory, study the fundamental properties of computational problems, while others, such as computer graphics, emphasize the computation of specific results. Still others focus on the challenges in implementing computations. For example, programming language theory studies approaches to describe computations, while computer programming applies specific programming languages to solve specific computational problems, and human-computer interaction focuses on the challenges in making computers and computations useful, usable, and universally accessible to humans. The general public sometimes confuses computer scientists with other computer professionals
    [Show full text]
  • Count” on Your Computer?
    Can You “Count” on Your Computer? Professor Nick Higham School of Mathematics University of Manchester [email protected] http://www.ma.man.ac.uk/~higham/ – p. 1/33 – p. 2/33 Counting to Six I asked my computer to count to six: 1.00000000000000 2.00000000000011 2.99999997414701 1.00000000000000 NaN Inf Is this a FLOP? – p. 3/33 FLOPs FLOP = Floating point Operation. Example: (3 + 7)/2 12 costs 3 FLOPs. − National Physical Laboratory, 1946 Fox, Goodwin, Turing and Wilkinson with desk-top calculating machines. Worked on a maths problem for 2 weeks. Averaged 300 seconds for one FLOP. (0.003 FLOPs per sec.) Current technology, FLOPs per second 1950’s Pilot Ace 1 Up to date PC (Pentium 4) 4 Thousand Million Earth Simulator (NEC) 35 Million Million – p. 4/33 Pilot ACE (1950) – p. 5/33 Pilot ACE (1950) – p. 6/33 Earth Simulator – p. 7/33 Earth Simulator – p. 8/33 Floating Point Numbers Floating point number system F R: ⊂ e f = .d1d2 ...dt β , 0 di β 1, d1 =0. ± × ≤ ≤ − 6 mantissa β: base, t: precision| {z , }e exponent range s.t. emin e emax. ≤ ≤ Floating point numbers are not equally spaced. If β =2, t =3, emin = 1, and emax =3, the nonnegative floating point numbers− are . 0 0.51.0 2.0 3.0 4.0 5.0 6.0 7.0 – p. 9/33 Computers in Mathematics Two Kinds of Error: Bugs in Programs: unintentional. ◮ The first American Venus probe was lost due to a program fault caused by the substitution of DO 3 I = 1.3 for DO 3 I = 1,3 Limitations of the Computer: intentional.
    [Show full text]
  • Christopher Strachey
    Christopher Strachey Born November 16, 1916, Hampstead, London, UK- died May 18, 1975, Oxford, England; early English programmer who in 1959 proposed a form of time-sharing, illuminated the understanding of progamming languages, and developed denotational semantics. Education: Gresham's School, Norfolk, 1930-1935; lower second, natural sciences tripos, King's College, University of Cambridge, 1938. Professional Experience: physicist, Standard Telephones and Cables, 1938-1945; physics/mathematics master, St. Edmund's School, Canterbury, 1945-1949; master, Harrow School, 1949-1952; technical officer, National Research and Development Corp. (NRDC), 1952-1959; private consultant, 1959-1966; University Mathematical Laboratory, Cambridge, 1962-1966; Programming Research Group, Oxford University, 1966-1975. Honors and Awards: distinguished fellow, British Computer Society, 1972. Born in 1916 into one of England's more prominent families, Christopher Strachey was educated at Gresham's School, Norfolk, and at King's College, Cambridge. He spent the war years in radar research, after which he spent several years as a schoolmaster. His career in computing did not effectively begin until 1951 when he started to program the machines at the National Physical Laboratory and Manchester University, while still a master at Harrow School. In 1962 he also began work in the University Mathematical Laboratory, Cambridge, where, in the nominal position “part-time research assistant,” he worked on the CPL programming language. In 1965 he wound up his consultancy and resigned from Cambridge in order to form the Programming Research Group at Oxford University. Under his leadership the group quickly established an international reputation in the theory of programming. At Oxford, in collaboration with Dana Scott, he produced the work of which he was most proud, the foundation of denotational semantics; this work was just beginning to bear fruit when he died in 1975.
    [Show full text]