EDSAC

EDSAC
전자 지연 스토리지 자동 계산기(EDSAC)
EDSAC (19).jpg
1948년 6월 EDSAC I
개발자케임브리지 대학 수학 연구소Maurice Wilkes와 그의 팀은
제조원케임브리지 대학교
시대1
발매일1949년 5월 6일; 73년 전 (1949-05-06)
수명1949–1958
단종네.
출하된 유닛1
운영 체제없음.
CPU디레이티드 열전자 밸브
기억512 17비트 워드, 1952년에 1,024 17비트 워드로 업그레이드(온도에 의한 수은 지연선)
표시텔레프린터
입력오공 천공 테이프
11kW
뒤로
호환성.
없음.
후계자EDSAC 2 및 LEO I
관련 기사EDVAC

EDSAC(Electronic Delay Storage Automatic Calculator)는 영국의 초기 [1]컴퓨터입니다.John von Neumann의 EDVAC에 관한 보고서의 초안 초안에서 영감을 얻어, 이 기계는 영국 캠브리지 대학 수학 연구소있는 Maurice Wilkes와 그의 에 의해 만들어졌습니다.EDSAC은 정규 [2]서비스를 시작한 두 번째 전자 디지털 저장 프로그램 컴퓨터입니다.

이후 J. Lyons & Co.의 지원을 받아 상업적으로 응용된 컴퓨터를 개발하고 EDSAC 설계에 기반한 LIO I의 개발에 성공했습니다.EDSAC에 대한 작업은 [3]1947년에 시작되었고, 1949년 5월 6일 첫 프로그램을 실행하였고, 이때 제곱수[4] [5][6]소수 목록을 계산하였다.EDSAC는 1965년까지 사용되었던 EDSAC 2로 대체되어 1958년 [7]7월 11일에 마침내 폐쇄되었다.

기술 개요

물리 컴포넌트

모니터링에 사용되는 9인치 튜브
William Renwick (5홀 테이프 리더 및 Creed 텔레프린터

EDSAC가 가동되자마자 대학의 연구 요구에 부응하기 시작했습니다.메모리에는 수은 지연선을 사용하고 논리에는 진공관을 감쇠시켰다.전력 소비량은 [8][9]11kW였습니다.사이클 시간은 모든 일반 명령의 경우 1.5ms, 곱셈의 경우 6ms였습니다.입력은 5홀 펀치 테이프를 통해, 출력은 텔레프린터를 통해 이루어졌습니다.

처음에는 레지스터가 어큐뮬레이터 및 승수 레지스터로 제한되었습니다.1953년, David Wheeler는 일리노이 대학에서 체류하고 돌아와 원래의 EDSAC 하드웨어의 확장으로 인덱스 레지스터를 설계했습니다.

마그네틱 테이프 드라이브는 1952년에 추가되었지만 실제로 [10]사용할 수 있을 만큼 잘 작동하지는 않았습니다.

1952년까지 사용 가능한 메인 메모리(명령어와 데이터)는 512개의 18비트 워드뿐이었고 백업 [11]저장소는 없었습니다.지연선(또는 "탱크")은 각각 512개의 단어를 제공하는 두 개의 배터리로 배열되었습니다.두 번째 배터리는 [10]1952년에 가동되었습니다.

1,024자로 구성된 전체 지연 행 저장소는 1955년 [12]또는 1956년 초까지 사용할 수 없었으며, 이때까지 프로그램은 약 800단어로 제한되었습니다.

존 린들리(외교생 1958-1959)는 "50년대 후반에 사용 가능한 거칠고 신뢰할 수 없는 집에서 만든 펀칭, 인쇄 및 검증 장비로 올바른 종이 테이프 한 장을 제작하는 데 엄청난 어려움을 겪었습니다."[13]라고 언급했습니다.

메모리와 순서

건설 중인 EDSAC의 수은 지연선을 검사하는 모리스 윌크스
모리스 윌키스와 빌 렌윅이 EDSAC를 완성한 앞에서

EDSAC의 메인 메모리는 1024개의 로케이션으로 구성되었지만 처음에는 512개의 로케이션만 설치되었습니다.각 비트는 18비트를 포함하지만 타이밍 문제로 인해 최상위 비트는 항상 사용할 수 없었기 때문에 17비트만 사용되었습니다.명령은 5비트 명령 코드, 1개의 스페어 비트, 10비트 오퍼랜드(일반적으로 메모리 주소) 및 1개의 길이 비트로 구성되며, 명령어가 17비트 또는 35비트 오퍼랜드(연속 2개의 워드, 리틀 엔디안)를 사용하는지 여부를 제어합니다.모든 명령 코드는 하나의 니모닉 문자로 표현되도록 설계되었으며, 예를 들어 추가 명령에서는 문자 A에 대한 EDSAC 문자 코드를 사용했습니다.

내부적으로 EDSAC는 2의 보완 이진수를 사용했습니다.숫자는 17비트(1워드) 또는 35비트(2워드) 중 하나였습니다.비정상적으로, 곱셈기는 숫자를 -1 µ x < 1 범위의 고정 소수점 분수로 처리하도록 설계되었다. 즉, 이진점은 부호의 바로 오른쪽에 있었다.어큐뮬레이터는 부호를 포함한 71비트를 수용할 수 있어 정밀도를 잃지 않고 긴(35비트) 숫자 2개를 곱할 수 있습니다.

사용 가능한 순서는 다음과 같습니다.

  • 더하다
  • 빼다
  • 곱셈 및 덧셈
  • AND-and-add ('콜레이트'라고 불립니다)
  • 왼쪽으로 이동
  • 산술 시프트 우측
  • 승수 레지스터 로드
  • 축전지 저장(및 옵션 클리어)
  • 조건부 고토
  • 입력 테이프 읽기
  • 인쇄 문자
  • 원형 축전지
  • No-op
  • 이제 그만

분할 명령(다양한 분할 서브루틴이 제공됨)도 없었고 숫자를 어큐뮬레이터에 직접 로드할 방법도 없었습니다(이를 위해서는 "sTore and zero accumulator" 명령 뒤에 "Add" 명령이 필요했습니다).무조건 점프 지시도 없었고, 절차 호출 지시도 없었다 – 아직 발명되지 않았다.

Maurice Wilkes는 1953년에 발표된 논문에서 EDSAC의 상대 주소 지정 모드에 대해 논의했다.그는 서브루틴 [14]사용을 용이하게 하기 위한 제안을 하고 있었다.

시스템 소프트웨어

초기 주문은 일련의 유니셀렉터 스위치로 유선 연결되었으며 시작 시 메모리 부족 단자에 로드되었습니다.1949년 5월까지, 첫 번째 주문은 위에서 설명한 니모닉 설계를 이용하여 31개의 단어로 된 원시 재배치 조립자를 제공했습니다.이는 세계 최초의 어셈블러이며, 거의 틀림없이 글로벌 소프트웨어 산업의 시작이었습니다.이용 가능한 EDSAC[where?] 시뮬레이션과 초기 주문 및 첫 [citation needed]번째 프로그램에 대한 완전한 설명이 있습니다.

EDSAC에 의해 수행된 첫 번째 계산은 1949년 [15]5월 6일에 실행된 정사각형 숫자 프로그램이었다.이 프로그램은 이 [16][15]기계를 연구하기 위해 캐나다에서 온 베아트리스 월슬리에 의해 작성되었다.

이 기계는 대학의 다른 구성원에 의해 실제 문제를 해결하기 위해 사용되었고, 현재 운영 체제에 포함된 많은 초기 기술들이 개발되었습니다.

사용자들은 프로그램을 (어셈블러에서) 종이 테이프에 쳐서 준비했다.그들은 곧 종이 테이프를 불빛에 대고 코드를 다시 읽을 수 있게 되었다.프로그램이 준비되었을 때, 그것은 종이 테이프 리더기 근처에 걸려있는 긴 줄에 걸려 있었다.낮에 현장에 있던 기계 오퍼레이터가 라인에서 다음 테이프를 선택하여 EDSAC에 로드했습니다.물론 이것은 오늘날 작업 대기열로 잘 알려져 있습니다.인쇄한 경우에는 테이프와 인쇄물이 사용자에게 반환되고, 그렇지 않으면 어느 메모리 위치에서 정지했는지 사용자에게 알립니다.디버거는 시간이 좀 걸렸지만 CRT 화면에 특정 메모리의 내용을 표시하도록 설정할 수 있습니다.예를 들어, 번호가 컨버전스 중인지 여부를 확인하기 위해 사용되었습니다.확성기가 축전지의 신호 비트에 연결되었습니다. 숙련된 사용자는 프로그램, 특히 루프에 "걸려 있는" 프로그램의 건강한 소리와 건강하지 않은 소리를 알고 있었습니다.

업무시간 이후에는 특정 '공인 사용자'가 스스로 기계를 작동시킬 수 있도록 허용되었으며, 이 작업은 밸브가 터질 때까지 심야까지 계속되었습니다(보통 이러한 사용자 [17]중 한 명에 따르면).이것은 Fred Hoyle이 그소설 The Black Cloud에서 암시한 것이다.

프로그래밍 기술

EDSAC 모니터링[18] 데스크

초기 프로그래머들은 오늘날에는 특히 자체 수정 코드를 사용하는 것에 대해 눈살을 찌푸리게 하는 기술을 사용해야 했습니다.이후까지 인덱스 레지스터가 없었기 때문에 어레이에 액세스하는 유일한 방법은 특정 명령이 참조하는 메모리 위치를 변경하는 것이었습니다.

프로젝트에서 세계 최초로 컴퓨터 사이언스 박사학위를 취득한 데이비드 휠러는 서브루틴 개념을 발명한 공로를 인정받고 있다.사용자는 어큐뮬레이터(휠러 점프)에 리턴 주소(즉, 점프 자체의 위치+1)를 사용하여 서브루틴의 시작 부분으로 점프하여 루틴을 호출하는 프로그램을 작성했습니다.관례상 서브루틴은 이를 예상하고 첫 번째로 종료 점프 명령을 해당 리턴 주소로 수정했습니다.사용자가 점프할 위치를 계산하기 위해 각 서브루틴의 길이를 알고 있는 한 여러 서브루틴과 네스트된 서브루틴을 호출할 수 있습니다.재귀 콜은 금지되어 있습니다.그런 다음 사용자는 자신의 프로그램이 종료된 후 마스터 테이프에서 자신의 테이프에 서브루틴 코드를 복사했습니다.(그러나 튜링은 1945년 NPL ACE를 위한 설계 제안에 대한 논문에서 서브루틴에 대해 논의하였고, 재귀가 가능했을 리턴 어드레스 스택의 개념을 발명하기까지 했다.)[19]

인덱스 레지스터의 부족은 서브루틴의 작성자에게 서브루틴이 메모리에서 로드되는 위치를 미리 알 수 없다는 점에서 문제를 야기했다.따라서 그들은 데이터 저장에 사용되는 코드의 어떤 영역(이른바 "의사 순서")도 다룰 수 없었다.이 문제는 펀치 테이프에서 메모리에 서브루틴을 로드하는 초기 입력 루틴을 사용함으로써 해결되었습니다.서브루틴을 로드할 때 시작 위치를 기록하고 필요에 따라 내부 메모리 참조를 증가시킵니다.따라서 Wilkes는 "기계 외부의 명령을 나타내기 위해 사용되는 코드는 내부에서 사용되는 코드와 다르며, 그 차이는 프로그래머와 기계의 제어 회로의 다른 요구 사항에 의해 좌우된다"[20]고 썼다.

EDSAC의 프로그래머들은 제한된 가용 메모리를 최대한 활용하기 위해 특별한 기술을 사용했습니다.예를 들어, 서브루틴을 펀치 테이프에서 메모리로 로드하는 시점에서 특정 상수를 계산해야 하는 경우가 있습니다.이 상수는 이후 재계산이 필요하지 않습니다.이 상황에서는 상수가 "간접"으로 계산됩니다.상수를 계산하는 데 필요한 코드는 완전한 서브루틴과 함께 제공됩니다.첫 번째 입력 루틴이 계산 코드를 로드한 후 이 코드로 제어를 이양합니다.상수가 계산되어 메모리에 기록되면 제어는 초기 입력 루틴으로 돌아가 서브루틴의 나머지 부분을 메모리에 계속 쓰지만 먼저 상수를 계산한 코드를 덮어쓰도록 시작점을 조정합니다.이것에 의해, 메모리의 최종 설치 공간을 특정의 [21]환경에 맞추어 커스터마이즈 했을 때보다 크게 하지 않고, 범용 서브루틴을 꽤 복잡하게 조정할 수 있었습니다.

응용 프로그램 소프트웨어

서브루틴 개념은 상당한 서브루틴 라이브러리의 가용성으로 이어졌다.1951년까지 다음 범주의 87개의 서브루틴을 일반적으로 사용할 수 있었다: 부동 소수점 산술; 복소수 연산; 검사; 나눗셈; 지수; 함수 관련 루틴; 미분 방정식; 특수 함수; 멱급수; 로그; 기타; 인쇄 및 레이아웃; 읽기(입력);n번째 루트, 삼각 함수, 카운트 연산(루프까지 반복 시뮬레이션, 루프 동안 반복 및 루프의 경우), 벡터매트릭스.

EDSAC의 응용 프로그램

EDSAC는 수학 연구소의 [22]계산 지원 서비스의 일부를 구성하기 위해 특별히 설계되었습니다.계산을 위해 컴퓨터를 사용하여 발표된 최초의 과학 논문은 로널드 피셔가 쓴 이었다.윌키스와 윌러는 유전자 주파수와 관련된 미분 [23]방정식을 풀기 위해 EDSAC를 사용했다.1951년, 밀러와 휠러는 이 기계를 사용하여 79자리 소수[24](당시 알려진 가장 큰 소수)를 발견했다.

3개의 노벨상 수상자인 John Kendrew와 Max Perutz (Chemistry, 1962), Andrew Huxley (Medicine, 1963), Martin Ryle (Physics, 1974)는 EDSAC의 혁신적인 컴퓨팅 파워의 혜택을 받았습니다.수상 소감에서는, 각각 EDSAC가 연구에 완수해 온 역할을 인정했습니다.

1960년대 초 피터 스위너튼-다이어는 EDSAC 컴퓨터를 사용하여 순위가 알려진 타원 곡선의 많은 소수 p에 대한 점 모듈로 p(N으로 표시p)를 계산했다.이러한 수치 결과를 바탕으로, Birch & Swinnerton-Dyer(1965)순위 r의 곡선 E에 대해 2022년 현재 수학에서 가장 해결되지 않은 문제 중 하나로 여겨지는 점근 법칙인 Birch와 Swinnerton-Dyer 추측을 준수한다고 추측했다p.

"두뇌"[컴퓨터]는 언젠가 우리 수준으로 내려와 소득세와 장부 계산을 도와줄 것이다.하지만 이것은 추측일 뿐 아직까지는 그럴 기미가 보이지 않는다.

--

게임.

1952년 Sandy Douglas는 EDSAC용 0점크로스(tic-tac-toe) 버전인 OXO를 개발하여 VCR97 6인치 음극선 튜브에 그래픽 출력을 제공합니다.이것은 아마도 세계 최초[26][27]비디오 게임이었을 것이다.

또 다른 비디오 게임은 스탠리 길(Stanley Gill)에 의해 만들어졌으며 두 개의 관문 중 하나를 [28]열 수 있는 선에 점(양이라고 함)이 접근하는 것을 포함했다.스탠리 길 게임은 EDSAC의 종이테이프 [28]리더의 광선을 통해 제어되었다.(예를 들어 플레이어가 손을 넣는 등) 방해하면 위쪽 [28]관문이 열립니다.빔을 파손되지 않은 상태로 두면 하부 게이트가 [28]열립니다.

추가 개발

EDSAC의 후계자인 EDSAC 2는 1958년에 취역했다.

1961년 과학자와 엔지니어를 위한 ALGOL과 유사한 고급 프로그래밍 언어인 Autocode의 EDSAC 2 버전이 David Hartley에 의해 개발되었습니다.

1960년대 중반, EDSAC 2의 후속 기종이 계획되었지만, 대신 맨체스터 대학, 페란티 대학, 플레시 대학의 아틀라스 컴퓨터에서 개발된 프로토타입 아틀라스 2인 타이탄으로 이전되었다.

EDSAC 복제 프로젝트

2018년 10월 EDSAC 레플리카

2011년 1월 13일 컴퓨터보존협회는 모리스 [29]윌크스 밑에서 연구한 앤드류 허버트가 감독하는 블렛클리 파크의 국립컴퓨팅박물관(TNMoC)에 EDSAC의 작업용 복제품을 구축할 계획이라고 발표했습니다.복제품의 첫 번째 부분은 2014년 [30][31]11월에 켜졌다.현재 진행 중인 프로젝트는 박물관 방문객들에게 개방되어 있다.2016년, 두 명의 EDSAC 운영자인 Margaret Mars와 Joyce Wheeler가 [32]이 프로젝트를 돕기 위해 박물관을 방문했습니다.2016년 11월 현재, 복제품의 완전 완료 및 운용 상태는 2017년 [33]가을로 추정되고 있다.그러나 프로젝트 지연으로 인해 개장이 연기되었다.2021년 초 현재 몇 가지 명령(주문)이 작동하고 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Wilkes, W. V.; Renwick, W. (1950). "The EDSAC (Electronic delay storage automatic calculator)". Math. Comp. 4 (30): 61–65. doi:10.1090/s0025-5718-1950-0037589-7.
  2. ^ 1948년 맨체스터 베이비 컴퓨터는 저장 프로그램 컴퓨터로서 EDSAC를 앞섰지만, 일반적인 사용을 위한 기계가 아닌 윌리엄스 튜브의 테스트 베드로 주로 만들어졌다.「컴퓨터 연구소의 간단한 비공식 이력」을 참조해 주세요.그러나 아기는 1949년 4월 다른 대학 부서와 페란티에서 일반적으로 사용할 수 있는 실용적인 후속 모델인 1949년 맨체스터 마크 1로 개발되었고, EDSAC는 1949년 5월에 처음 실행되었고, 그 동안에도 여전히 개발 중에 있습니다."50th Anniversary of the Manchester Baby computer". Archived from the original on 9 February 2014. Retrieved 5 January 2014.
  3. ^ Wilkes, M. V. (1997). "Arithmetic on the EDSAC". Annals of the History of Comp. 19 (1): 13–15. doi:10.1109/85.560726.
  4. ^ "Pioneer computer to be rebuilt". Cam. 62: 5. 2011. 정확히 말하면, EDSAC의 첫 번째 프로그램은 0부터 99까지의 정수제곱 리스트를 인쇄했습니다.
  5. ^ Jones, Cliff B.; Lloyd, John L. (24 January 2012). Dependable and Historic Computing: Essays Dedicated to Brian Randell on the Occasion of his 75th Birthday. Springer. p. 29. ISBN 9783642245411.
  6. ^ . Other early computational problems run on EDSAC; some specifications of the computer. "9. The EDSAC, Cambridge University, England". Digital Computer Newsletter. 2 (1): 3. 1 January 1950. Archived from the original on 11 March 2021.{{cite journal}}: CS1 유지보수: 기타 (링크)
  7. ^ 를 클릭합니다EDSAC 99: 15–16 April 1999 (PDF), University of Cambridge Computer Laboratory, 6 May 1999, pp. 68, 69, retrieved 29 June 2013.
  8. ^ EDSAC 시뮬레이터컴퓨터 파일.
  9. ^ 일부 EDSAC 통계 정보케임브리지 대학교
  10. ^ a b 일부 EDSAC 통계 정보
  11. ^ EDSAC 1 이후
  12. ^ EDSAC 1 이후
  13. ^ EDSAC 1 이후
  14. ^ 케임브리지 철학회 제49권 제1부 84-89페이지
  15. ^ a b "EDSAC performed its first calculations". Computing History. Retrieved 23 November 2018.
  16. ^ Raymond, Katrine (25 October 2017). "Beatrice Worsley". The Canadian Encyclopedia. Archived from the original on 13 January 2018. Retrieved 23 November 2018.
  17. ^ 2009년 5월 6일 창립 60주년 기념 캠브리지 컴퓨터 랩 세미나에서 Southampton 대학의 명예교수 David Barron 교수.
  18. ^ 세 가지 디스플레이(카운터, 메모리 및 시퀀스 제어)에 대한 설명:"Two new EDSAC videos: EDSAC's VDU screens". The National Museum of Computing. 11 December 2015.
  19. ^ 튜링 1945, 코프랜드(2005), 페이지 383.
  20. ^ Wilkes, M. V. (1956). Automatic digital computers. London: Methuen. pp. 93–95.
  21. ^ Wilkes, M. V. (1956). Automatic digital computers. London: Methuen. pp. 108–109.
  22. ^ Goddard, Jonathan (3 May 2019), 70 years since the first computer designed for practical everyday use, Department of Computer Science and Technology, University of Cambridge
  23. ^ 선택과 확산에 의해 결정되는 클라인의 유전자 주파수, R.A.피셔, 바이오메트릭스, 제6권, 제4호(1950년 12월), 페이지 353–361.
  24. ^ Caldwell 연간 알려진 최대 소수점.한 참고문헌은 Miller, J. C. P. "Larger Prime Numbers"(1951) Nature 168(4280):838을 제시하지만, 요약본은 그것을 언급하지 않는다.
  25. ^ "Archived copy" (PDF). Archived from the original (PDF) on 22 December 2015. Retrieved 18 November 2016.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  26. ^ Cohen, D. S. (20 September 2014). "OXO aka Noughts and Crosses – The First Video Game". About.com. IAC. Archived from the original on 22 December 2015. Retrieved 18 December 2015.
  27. ^ Wolf, Mark J. P. (16 August 2012). Encyclopedia of Video Games: The Culture, Technology, and Art of Gaming. Greenwood Publishing Group. pp. 3–7. ISBN 978-0-313-37936-9.
  28. ^ a b c d Smith, Alvy Ray (9 June 2015). "The Dawn of Digital Light". IEEE Annals of the History of Computing. 38 (4): 74–91. doi:10.1109/MAHC.2015.51. S2CID 10257358.
  29. ^ Ward, Mark (13 January 2011). "Pioneering Edsac computer to be built at Bletchley Park". BBC News. Retrieved 13 January 2011.
  30. ^ 박물관이 역사적인 컴퓨터를 켠다.
  31. ^ Hartley, David; Herbert, Andrew (2013). EDSAC Replica Project. Making the History of Computing Relevant. IFIP Advances in Information and Communication Technology. Vol. 416. 9 Current Status, pp. 307–308. doi:10.1007/978-3-642-41650-7_27. ISBN 978-3-642-41649-1.
  32. ^ "Inside the project to rebuild the EDSAC, one of the world's first general purpose computers". zdnet.com. Retrieved 24 May 2020.
  33. ^ Palmer, Danny (24 November 2016). "Inside the project to rebuild the EDSAC, one of the world's first general purpose computers". ZDNet. Retrieved 1 December 2016.

추가 정보

외부 링크