词条 | EDSAC |
释义 |
| name = Electronic delay storage automatic calculator | title = | aka = EDSAC | logo = | image = EDSAC (19).jpg | caption = EDSAC | developer = | manufacturer = | family = | type = | generation = | releasedate = | lifespan = | price = | discontinued = | unitssold = | unitsshipped = | media = | os = | power = | soc = | cpu = | memory = | storage = | memory card = | display = | graphics = | sound = | input = | controllers = | camera = | touchpad = | connectivity = | currentfw = | platform = | service = | dimensions = | weight = | topgame = | compatibility= | predecessor = | successor = | related = | website = }} The Electronic delay storage automatic calculator (EDSAC) was an early British computer.[1] Inspired by John von Neumann's seminal First Draft of a Report on the EDVAC, the machine was constructed by Maurice Wilkes and his team at the University of Cambridge Mathematical Laboratory in England. EDSAC was the second electronic digital stored-program computer to go into regular service.[2] Later the project was supported by J. Lyons & Co. Ltd., a British firm, who were rewarded with the first commercially applied computer, LEO I, based on the EDSAC design. Work on EDSAC started during 1947,[3] and it ran its first programs on 6 May 1949, when it calculated a table of square numbers[4] and a list of prime numbers.[5][6] EDSAC 1 was finally shut down on 11 July 1958, having been superseded by EDSAC 2, which remained in use until 1965.[7] Technical overview{{refimprove section|date=May 2013}}Physical componentsAs soon as EDSAC was operational, it began serving the University's research needs. It used mercury delay lines for memory, and derated vacuum tubes for logic. Power consumption was 11 kW of electricity.[8][9] Cycle time was 1.5 ms for all ordinary instructions, 6 ms for multiplication. Input was via five-hole punched tape and output was via a teleprinter. Initially registers were limited to an accumulator and a multiplier register. In 1953, David Wheeler, returning from a stay at the University of Illinois, designed an index register as an extension to the original EDSAC hardware. A magnetic tape drive was added in 1952 but never worked sufficiently well to be of real use.[10] Until 1952, the available main memory (instructions and data) was only 512 18-bit words, and there was no backing store.[11] The delay lines (or "tanks") were arranged in two batteries providing 512 words each. The second battery came into operation in 1952.[10] The full 1024-word delay line store was not available until 1955 or early 1956,[12] limiting programs to about 800 words until then. John Lindley (diploma student 1958–1959) mentioned "the incredible difficulty we had ever to produce a single correct piece of paper tape with the crude and unreliable home-made punching, printing and verifying gear available in the late 50s".[13] Memory and instructionsThe EDSAC's main memory consisted of 1024 locations, though only 512 locations were initially installed. Each contained 18 bits, but the topmost bit was always unavailable due to timing problems, so only 17 bits were used. An instruction consisted of a five-bit instruction code, one spare bit, a ten bit operand (usually a memory address), and a length bit to control whether the instruction used a 17-bit or a 35-bit operand (two consecutive words, little-endian). All instruction codes were by design represented by one mnemonic letter, so that the Add instruction, for example, used the EDSAC character code for the letter A. Internally, the EDSAC used two's complement, binary numbers. Numbers were either 17 bits (one word) or 35 bits (two words) long. Unusually, the multiplier was designed to treat numbers as fixed-point fractions in the range −1 ≤ x < 1, i.e. the binary point was immediately to the right of the sign. The accumulator could hold 71 bits, including the sign, allowing two long (35-bit) numbers to be multiplied without losing any precision. The instructions available were:
There was no division instruction (but various division subroutines were supplied) and no way to directly load a number into the accumulator (a "sTore and zero accumulator" instruction followed by an "Add" instruction were necessary for this). There was no unconditional jump instruction, nor was there a procedure call instruction - it had not yet been invented. Maurice Wilkes discussed relative addressing modes for the EDSAC in a paper published in 1953. He was making the proposals to facilitate the use of subroutines.[14]System softwareThe initial orders were hard-wired on a set of uniselector switches and loaded into the low words of memory at startup. By May 1949, the initial orders provided a primitive relocating assembler taking advantage of the mnemonic design described above, all in 31 words. This was the world's first assembler, and arguably the start of the global software industry. There is a simulation of EDSAC available and a full description of the initial orders and first programs. The first calculation done by EDSAC was a square number program run on 6 May 1949.[15] The program was written by Beatrice Worsley who had come from Canada to study the machine.[16][15] The machine was used by other members of the University to solve real problems, and many early techniques were developed that are now included in operating systems. Users prepared their programs by punching them (in assembler) onto a paper tape. They soon became good at being able to hold the paper tape up to the light and read back the codes. When a program was ready it was hung on a length of line strung up near the paper tape reader. The machine operators, who were present during the day, selected the next tape from the line and loaded it into EDSAC. This is of course well known today as job queues. If it printed something then the tape and the printout were returned to the user, otherwise they were informed at which memory location it had stopped. Debuggers were some time away, but a CRT screen could be set to display the contents of a particular piece of memory. This was used to see if a number was converging, for example. A loudspeaker was connected to the accumulator's sign bit; experienced users knew healthy and unhealthy sounds of programs, particularly programs 'hung' in a loop. After office hours certain "Authorised Users" were allowed to run the machine for themselves, which went on late into the night until a valve blew – which usually happened according to one such user.[17] Programming techniqueThe early programmers had to make use of techniques frowned upon today—especially altering the code. As there was no index register until much later, the only way of accessing an array was to alter which memory location a particular instruction was referencing. David Wheeler, who earned the world's first Computer Science PhD working on the project, is credited with inventing the concept of a subroutine. Users wrote programs that called a routine by jumping to the start of the subroutine with the return address (i.e. the location-plus-one of the jump itself) in the accumulator (a Wheeler jump). By convention the subroutine expected this and the first thing it did was to modify its concluding jump instruction to that return address. Multiple and nested subroutines could be called so long as the user knew the length of each one in order to calculate the location to jump to; recursive calls were forbidden. The user then copied the code for the subroutine from a master tape onto their own tape following the end of their own program. Application softwareThe subroutine concept led to the availability of a substantial subroutine library. By 1951, 87 subroutines in the following categories were available for general use: floating point arithmetic; arithmetic operations on complex numbers; checking; division; exponentiation; routines relating to functions; differential equations; special functions; power series; logarithms; miscellaneous; print and layout; quadrature; read (input); nth root; trigonometric functions; counting operations (simulating repeat until loops, while loops and for loops); vectors; and matrices. Applications of EDSAC
Further developmentsEDSAC's successor, EDSAC 2, was commissioned in 1958. In 1961, an EDSAC 2 version of Autocode, an ALGOL-like high-level programming language for scientists and engineers, was developed by David Hartley. In the mid-1960s, a successor to the EDSAC 2 was planned, but the move was instead made to the Titan, a prototype Atlas 2 developed from the Atlas Computer of the University of Manchester, Ferranti, and Plessey. EDSAC Replica ProjectOn 13 January 2011, the Computer Conservation Society announced that it planned to build a working replica of EDSAC, at the National Museum of Computing (TNMoC) in Bletchley Park supervised by Andrew Herbert, who studied under Maurice Wilkes.[24] The first parts of the recreation were switched on in November 2014.[25][26] The ongoing project is open to visitors of the museum. As of November 2016, commissioning of the fully completed and operational state of the replica was estimated to be the autumn of 2017.[27] However, project delays have postponed its opening (as of May 2018) to summer of 2018.[28] See also
References1. ^{{cite journal|author=Wilkes, W. V.|authorlink=Maurice Wilkes|author2=Renwick, W.|title=The EDSAC (Electronic delay storage automatic calculator)|journal=Math. Comp.|year=1950|volume=4|issue=30|pages=61–65|url=http://www.ams.org/journals/mcom/1950-04-030/S0025-5718-1950-0037589-7/|doi=10.1090/s0025-5718-1950-0037589-7}} 2. ^The Manchester Baby predated EDSAC as a stored-program computer, but was built as a test bed for the Williams tube and not as a machine for practical use. http://www.cl.cam.ac.uk/conference/EDSAC99/history.html. However, the Manchester Mark 1 of 1949 (not to be confused with the 1948 prototype, the Baby) was available for general use by other university departments and Ferranti in April 1949 {{cite web |url=http://www.computer50.org/mark1/MM1.html |title=50th Anniversary of the Manchester Baby computer |accessdate=2014-01-05 |deadurl=yes |archiveurl=https://web.archive.org/web/20140209155638/http://www.computer50.org/mark1/MM1.html |archivedate=9 February 2014 |df=dmy-all }} despite being still under development. 3. ^ {{webarchive|url=https://web.archive.org/web/20141207025641/http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=560726&url=http%3A%2F%2Fieeexplore.ieee.org%2Fstamp%2Fstamp.jsp%3Ftp%3D%26arnumber%3D560726|date=7 December 2014}} 4. ^{{cite journal|title=Pioneer computer to be rebuilt|journal=Cam|volume=62|date= 2011|page=5}} To be precise, EDSAC's first program printed a list of the squares of the integers from 0 to 99 inclusive. 5. ^{{Cite book|url=https://books.google.com/?id=AoWrCAAAQBAJ&lpg=PA28&dq=EDSAC%201948&pg=PA29#v=onepage&q=EDSAC%201949&f=false|title=Dependable and Historic Computing: Essays Dedicated to Brian Randell on the Occasion of his 75th Birthday|last=Jones|first=Cliff B.|last2=Lloyd|first2=John L.|date=2012-01-24|publisher=Springer|isbn=9783642245411|location=|pages=29|language=en}} 6. ^{{Cite journal|last=|first=|date=1950-01-01|others=Other early computational problems run on EDSAC; some specifications of the computer|title=9. The EDSAC, Cambridge University, England|url=http://www.dtic.mil/docs/citations/AD0694596|journal=Digital Computer Newsletter|language=en|volume=2|issue=1|pages=3|via=}} 7. ^{{citation |url=http://www.cl.cam.ac.uk/events/EDSAC99/booklet.pdf |title=EDSAC 99: 15–16 April 1999 |publisher=University of Cambridge Computer Laboratory |date=6 May 1999 |accessdate=2013-06-29 |pages=68, 69}} 8. ^[https://www.youtube.com/watch?v=lXJ-tYqPARg EDSAC Simulator - Computerphile] 9. ^[https://www.cl.cam.ac.uk/events/EDSAC99/statistics.html University of Cambridge - Some EDSAC statistics] 10. ^1 Some EDSAC statistics 11. ^EDSAC 1 and after 12. ^EDSAC 1 and after 13. ^EDSAC 1 and after 14. ^Proceedings of the Cambridge Philosphical Society, Vol 49, Pt 1, pgs 84-9 15. ^1 {{Cite web|url=http://www.computinghistory.org.uk/det/5484/EDSAC-performed-its-first-calculations/|title=EDSAC performed its first calculations|last=|first=|date=|website=Computing History|archive-url=|archive-date=|dead-url=|access-date=2018-11-23}} 16. ^{{Cite web|url=https://www.thecanadianencyclopedia.ca/en/article/beatrice-worsley|title=Beatrice Worsley|last=Raymond|first=Katrine|date=25 October 2017|website=The Canadian Encyclopedia|language=en|archive-url=https://web.archive.org/web/20180113171457/http://www.thecanadianencyclopedia.ca/en/article/beatrice-worsley/|archive-date=13 January 2018|dead-url=|access-date=2018-11-23}} 17. ^Professor David Barron, Emeritus Professor of the University of Southampton at a Cambridge Computer Lab seminar to mark the 60th anniversary 6 May 2009. 18. ^Description of three displays (counter, memory and sequence control)*{{cite news |title=Two new EDSAC videos: EDSAC's VDU screens |url=http://www.tnmoc.org/news/edsac/two-new-edsac-videos |work=The National Museum of Computing |date=11 December 2015 |language=en}} 19. ^[https://www.jstor.org/stable/3001780 Gene Frequencies in a Cline Determined by Selection and Diffusion], R. A. Fisher, Biometrics, Vol. 6, No. 4 (Dec. 1950), pp. 353–361 20. ^Caldwell – largest known primes by year One reference gives Miller, J. C. P. "Larger Prime Numbers" (1951) Nature 168(4280):838, but the abstract does not mention it. 21. ^{{cite book |title=Encyclopedia of Video Games: The Culture, Technology, and Art of Gaming |last=Wolf |first=Mark J. P. |date=2012-08-16 |publisher=Greenwood Publishing Group |isbn=978-0-313-37936-9 |pages=3–7}} 22. ^{{cite web |url=http://classicgames.about.com/od/computergames/p/OXOProfile.htm |title=OXO aka Noughts and Crosses - The First Video Game |last=Cohen |first=D. S. |work=About.com |publisher=IAC |date=2014-09-20 |accessdate=2015-12-18 |archiveurl=https://web.archive.org/web/20151222084801/http://classicgames.about.com/od/computergames/p/OXOProfile.htm |archivedate=2015-12-22 |deadurl=no}} 23. ^ 24. ^{{cite web |url=https://www.bbc.co.uk/news/technology-12181153 |title=Pioneering Edsac computer to be built at Bletchley Park |publisher=BBC News |date=13 January 2011 |first= Mark |last=Ward |accessdate=2011-01-13}} 25. ^[https://www.bbc.co.uk/news/technology-30131447 Museum switches on historic computer ] 26. ^{{cite book |last1=Hartley |first1=David |last2=Herbert |first2=Andrew |title=EDSAC Replica Project |journal=Making the History of Computing Relevant |volume=416 |date=2013 |doi=10.1007/978-3-642-41650-7_27 |at=9 Current Status, pp. 307-308 |language=en|series=IFIP Advances in Information and Communication Technology |isbn=978-3-642-41649-1 }} 27. ^{{cite web|url=http://www.zdnet.com/article/inside-the-project-to-rebuild-the-edsac-one-of-the-worlds-first-general-purpose-computers/ |title=Inside the project to rebuild the EDSAC, one of the world's first general purpose computers |date=24 November 2016 |first=Danny |last=Palmer |accessdate=2016-12-01}} 28. ^{{Cite web | url=http://www.tnmoc.org/special-projects/edsac | title=EDSAC}} Further reading
External links{{commons category|EDSAC}}
9 : 1940s computers|Early British computers|1949 in computer science|Computer-related introductions in 1949|One-of-a-kind computers|Vacuum tube computers|University of Cambridge Computer Laboratory|History of Cambridge|History of electronic engineering |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。