IBM 709
IBM 709는 IBM이 1957년 1월에 발표[1]하여 1958년 8월에 처음 설치된[2][3][4] 컴퓨터 시스템이다. 709는 이전 모델인 IBM 704의 개선된 버전으로, IBM 700/7000 시리즈 과학용 컴퓨터 중 세 번째 모델이었다. 개선 사항으로는 중첩된 입출력, 간접 주소 지정, 그리고 십진법 연산, 선행 0 억제 및 기타 여러 작업을 지원하는 세 가지 "변환" 명령어가 포함되었다. 709는 32,768 워드의 36비트 자기코어 메모리를 가지고 있었고, 초당 42,000개의 덧셈 또는 뺄셈 명령을 실행할 수 있었다. 두 개의 36비트 정수를 초당 5000개의 비율로 곱할 수 있었다.[5]
선택적 하드웨어 에뮬레이터는 IBM 709에서 기존 IBM 704 프로그램을 실행했다. 이것은 상업적으로 이용 가능한 최초의 에뮬레이터였다. 레지스터와 대부분의 704 명령어는 709 하드웨어에서 에뮬레이션되었다. 부동 소수점 트랩 및 입출력 루틴과 같은 복잡한 704 명령어는 709 소프트웨어에서 에뮬레이션되었다.
포트란 어셈블리 프로그램은 709를 위해 도입되었다.
이것은 큰 시스템이었다. 고객 설치에는 작동에 100~250kW의 전력이 필요했고, 냉각에도 거의 같은 양의 전력이 소모되었다. (주변 장비를 제외하고) 약 2,110 파운드 (960 kg)의 무게가 나갔다.[6] 709는 진공관을 사용하여 제작되었다.
IBM은 709가 발표된 지 불과 1년 후인 1958년에 IBM 7090이라는 트랜지스터화된 709 버전을 발표하여 709의 제품 수명을 단축시켰다.
레지스터
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IBM 709는 38비트 누산기, 36비트 곱셈기/몫 레지스터, 그리고 내용이 베이스 주소에 더해지는 대신 빼지는 세 개의 15비트 색인 레지스터를 가지고 있다. 세 개의 색인 레지스터 모두 명령어에 참여할 수 있다. 명령어의 3비트 태그 필드는 어떤 레지스터가 연산에 참여하는지를 지정하는 비트 맵이지만, 둘 이상의 색인 레지스터가 지정되면 그 내용은 덧셈이 아닌 논리합 연산으로 결합된다.[7]p. 12
명령어 및 데이터 형식
A, B, C, D, E의 다섯 가지 명령어 형식이 있다.[7] 대부분의 명령어는 B형이다.[8]
A형 명령어는 순서대로 3비트 접두사(명령어 코드), 15비트 감분 필드, 3비트 태그 필드, 15비트 주소 필드로 구성된다. 이들은 태그 필드에 지정된 감분 레지스터의 값에 기반한 조건부 점프 연산이다. 일부는 감분 필드를 색인 레지스터의 내용에서 빼기도 한다. 구현상 명령어 코드의 두 번째와 세 번째 비트가 0이 아니어야 하며, 총 여섯 가지 가능한 A형 명령어가 있다. 그 중 하나(STR, 명령어 코드 이진수 101)는 IBM 709까지 구현되지 않았다.
B형 명령어는 순서대로 12비트 명령어 코드(A형 명령어와 구별하기 위해 두 번째와 세 번째 비트는 0으로 설정), 2비트 플래그 필드, 네 개의 사용되지 않는 비트, 3비트 태그 필드, 15비트 주소 필드로 구성된다.
C, D, E형은 특수 명령어에 사용된다.
- 고정 소수점 숫자는 이진 부호/크기 형식으로 저장된다.
- 단정밀도 부동소수점 숫자는 부호, 8비트 초과-128 지수 및 27비트 가수( "숨겨진 비트"는 없음)를 갖는다.
- 영숫자 문자는 6비트 이진화 십진법이며, 한 워드에 여섯 개씩 묶여 있다.
명령어 세트는 데이터 형식을 A형 명령어와 동일한 필드(접두사, 감분, 태그 및 주소)로 암묵적으로 세분화한다. 데이터 워드의 나머지 부분을 변경하지 않고 이 필드 각각을 수정하는 명령어가 존재한다.
I/O 채널
이전 704에 비해 709의 주요 개선점은 더 많은 자기코어 메모리와 독립적인 I/O 채널의 첫 사용이었다. 704의 I/O가 중앙 처리 장치의 프로그래밍된 기능, 즉 "복사" 명령어를 사용하여 I/O 레지스터로 또는 I/O 레지스터에서 한 번에 하나의 데이터 워드가 전송되는 반면, 709는 IBM-766 데이터 동기화 장치를 사용하며, 이는 두 개의 독립적으로 "프로그래밍된" I/O 채널을 제공한다. 최대 세 개의 데이터 동기화 장치를 709에 연결할 수 있으며, 각 장치는 최대 20개의 IBM 729 테이프 드라이브와 IBM 716 영숫자 라인 프린터, IBM 711 카드 리더 및 721 카드 펀치를 제어할 수 있다. 이는 709에서 I/O 장치의 수를 6배로 늘리고, 프로그램 실행이 병렬로 계속되는 동안 여러 장치에서 I/O가 진행될 수 있도록 한다. 각각 8,192 워드의 메모리를 가진 최대 두 개의 IBM 733 자기 드럼 장치를 데이터 동기화 장치와 독립적으로 연결할 수 있었다. 709는 처음에 카드, 테이프 또는 드럼에서 프로그램을 로드(부팅)할 수 있었다.[7]:113
709에 사용된 IBM 738 자기 코어 저장 장치 또한 하이브리드 기술의 이정표였다. 코어 어레이 드라이버는 모두 진공관을 사용했지만, 읽기 감지 증폭기는 컴퓨팅에서 트랜지스터를 매우 초기에 사용한 사례였다.
같이 보기
- 진공관 컴퓨터 목록
- IBM 740 CRT 레코더
- SHARE 운영 체제 (SOS)
- SQUOZE
각주
- ↑ Fisher, Franklin M.; McKie, James W.; Mancke, Richard B. (October 1983). 《IBM and the U.S. data processing industry: an economic history》 (영어). Praeger. 37쪽. ISBN 9780030630590.
- ↑ Schulz, Peter R. (1970). 《The Composition of the Computer Market: Past, Present, Future : a Report》 (영어). Stanford-Sloan Program, Graduate School of Business, Stanford University. 8쪽.
- ↑ Chapin, Ned (1963). 《An introduction to automatic computers》 (영어). Van Nostrand. 192쪽.
- ↑ “WDPC Negotiations”. September 16, 1958: The IBM 709 computer arrives (26 tons of iron). 《personal.anderson.ucla.edu》. 2006년 9월 12일에 원본 문서에서 보존된 문서. 2018년 1월 21일에 확인함.
Use of the big computer, second of its type to come off the assembly line, is being given to the WDPC (...)
- ↑ IBM 709 at Columbia University history page
- ↑ IBM 709 Data Processing System BRL report, (details of each installation) with photos
- ↑ 가 나 다 IBM 709 Reference Manual, Form A22-6501-0, 1958
- ↑ John Savard. “From the IBM 704 to the IBM 7094”. 2009년 11월 15일에 확인함.
더 읽어보기
- Sherman, Philip M. (1963). Bell Telephone Laboratories, Murray Hill, New Jersey, USA에서 작성. 《Programming and Coding the IBM 709-7090-7094 Computers》 (PDF) 1판. New York / London / Sydney: John Wiley & Sons, Inc. 2020년 6월 18일에 원본 문서 (PDF)에서 보존된 문서. 2020년 6월 18일에 확인함.
외부 링크
- 709 데이터 처리 시스템 – IBM 역사
- IBM 709 데이터 처리 시스템 – BRL 보고서 (각 설치 세부 정보) 및 사진
- 컬럼비아 대학교 IBM 709 페이지 – 사진 포함
- CS1 - 영어 인용 (en)
- 위키데이터 속성 P18을 사용하는 문서
- 위키데이터 속성 P41을 사용하는 문서
- 위키데이터 속성 P94를 사용하는 문서
- 위키데이터 속성 P117을 사용하는 문서
- 위키데이터 속성 P154를 사용하는 문서
- 위키데이터 속성 P213을 사용하는 문서
- 위키데이터 속성 P227을 사용하는 문서
- 위키데이터 속성 P242를 사용하는 문서
- 위키데이터 속성 P244를 사용하는 문서
- 위키데이터 속성 P245를 사용하는 문서
- 위키데이터 속성 P268을 사용하는 문서
- 위키데이터 속성 P269를 사용하는 문서
- 위키데이터 속성 P271을 사용하는 문서
- 위키데이터 속성 P347을 사용하는 문서
- 위키데이터 속성 P349를 사용하는 문서
- 위키데이터 속성 P350을 사용하는 문서
- 위키데이터 속성 P373을 사용하는 문서
- 위키데이터 속성 P380을 사용하는 문서
- 위키데이터 속성 P396을 사용하는 문서
- 위키데이터 속성 P409를 사용하는 문서
- 위키데이터 속성 P428을 사용하는 문서
- 위키데이터 속성 P434를 사용하는 문서
- 위키데이터 속성 P435를 사용하는 문서
- 위키데이터 속성 P436을 사용하는 문서
- 위키데이터 속성 P454를 사용하는 문서
- 위키데이터 속성 P496을 사용하는 문서
- 위키데이터 속성 P549를 사용하는 문서
- 위키데이터 속성 P650을 사용하는 문서
- 위키데이터 속성 P651을 사용하는 문서
- 위키데이터 속성 P691을 사용하는 문서
- 위키데이터 속성 P716을 사용하는 문서
- 위키데이터 속성 P781을 사용하는 문서
- 위키데이터 속성 P791을 사용하는 문서
- 위키데이터 속성 P864를 사용하는 문서
- 위키데이터 속성 P865를 사용하는 문서
- 위키데이터 속성 P886을 사용하는 문서
- 위키데이터 속성 P902를 사용하는 문서
- 위키데이터 속성 P906을 사용하는 문서
- 위키데이터 속성 P947을 사용하는 문서
- 위키데이터 속성 P950을 사용하는 문서
- 위키데이터 속성 P966을 사용하는 문서
- 위키데이터 속성 P982를 사용하는 문서
- 위키데이터 속성 P1003을 사용하는 문서
- 위키데이터 속성 P1004를 사용하는 문서
- 위키데이터 속성 P1005를 사용하는 문서
- 위키데이터 속성 P1006을 사용하는 문서
- 위키데이터 속성 P1015를 사용하는 문서
- 위키데이터 속성 P1045를 사용하는 문서
- 위키데이터 속성 P1048을 사용하는 문서
- 위키데이터 속성 P1053을 사용하는 문서
- 위키데이터 속성 P1146을 사용하는 문서
- 위키데이터 속성 P1153을 사용하는 문서
- 위키데이터 속성 P1157을 사용하는 문서
- 위키데이터 속성 P1186을 사용하는 문서
- 위키데이터 속성 P1225를 사용하는 문서
- 위키데이터 속성 P1248을 사용하는 문서
- 위키데이터 속성 P1273을 사용하는 문서
- 위키데이터 속성 P1315를 사용하는 문서
- 위키데이터 속성 P1323을 사용하는 문서
- 위키데이터 속성 P1330을 사용하는 문서
- 위키데이터 속성 P1362를 사용하는 문서
- 위키데이터 속성 P1368을 사용하는 문서
- 위키데이터 속성 P1375를 사용하는 문서
- 위키데이터 속성 P1407을 사용하는 문서
- 위키데이터 속성 P1556을 사용하는 문서
- 위키데이터 속성 P1584를 사용하는 문서
- 위키데이터 속성 P1695를 사용하는 문서
- 위키데이터 속성 P1707을 사용하는 문서
- 위키데이터 속성 P1736을 사용하는 문서
- 위키데이터 속성 P1886을 사용하는 문서
- 위키데이터 속성 P1890을 사용하는 문서
- 위키데이터 속성 P1907을 사용하는 문서
- 위키데이터 속성 P1908을 사용하는 문서
- 위키데이터 속성 P1960을 사용하는 문서
- 위키데이터 속성 P1986을 사용하는 문서
- 위키데이터 속성 P2041을 사용하는 문서
- 위키데이터 속성 P2163을 사용하는 문서
- 위키데이터 속성 P2174를 사용하는 문서
- 위키데이터 속성 P2268을 사용하는 문서
- 위키데이터 속성 P2349를 사용하는 문서
- 위키데이터 속성 P2418을 사용하는 문서
- 위키데이터 속성 P2456을 사용하는 문서
- 위키데이터 속성 P2484를 사용하는 문서
- 위키데이터 속성 P2558을 사용하는 문서
- 위키데이터 속성 P2750을 사용하는 문서
- 위키데이터 속성 P2980을 사용하는 문서
- 위키데이터 속성 P3223을 사용하는 문서
- 위키데이터 속성 P3233을 사용하는 문서
- 위키데이터 속성 P3348을 사용하는 문서
- 위키데이터 속성 P3372를 사용하는 문서
- 위키데이터 속성 P3407을 사용하는 문서
- 위키데이터 속성 P3430을 사용하는 문서
- 위키데이터 속성 P3544를 사용하는 문서
- 위키데이터 속성 P3562를 사용하는 문서
- 위키데이터 속성 P3563을 사용하는 문서
- 위키데이터 속성 P3601을 사용하는 문서
- 위키데이터 속성 P3723을 사용하는 문서
- 위키데이터 속성 P3788을 사용하는 문서
- 위키데이터 속성 P3829를 사용하는 문서
- 위키데이터 속성 P3863을 사용하는 문서
- 위키데이터 속성 P3920을 사용하는 문서
- 위키데이터 속성 P3993을 사용하는 문서
- 위키데이터 속성 P4038을 사용하는 문서
- 위키데이터 속성 P4055를 사용하는 문서
- 위키데이터 속성 P4114를 사용하는 문서
- 위키데이터 속성 P4143을 사용하는 문서
- 위키데이터 속성 P4186을 사용하는 문서
- 위키데이터 속성 P4423을 사용하는 문서
- 위키데이터 속성 P4457을 사용하는 문서
- 위키데이터 속성 P4534를 사용하는 문서
- 위키데이터 속성 P4535를 사용하는 문서
- 위키데이터 속성 P4581을 사용하는 문서
- 위키데이터 속성 P4613을 사용하는 문서
- 위키데이터 속성 P4955를 사용하는 문서
- 위키데이터 속성 P5034를 사용하는 문서
- 위키데이터 속성 P5226을 사용하는 문서
- 위키데이터 속성 P5288을 사용하는 문서
- 위키데이터 속성 P5302를 사용하는 문서
- 위키데이터 속성 P5321을 사용하는 문서
- 위키데이터 속성 P5368을 사용하는 문서
- 위키데이터 속성 P5504를 사용하는 문서
- 위키데이터 속성 P5587을 사용하는 문서
- 위키데이터 속성 P5736을 사용하는 문서
- 위키데이터 속성 P5818을 사용하는 문서
- 위키데이터 속성 P6213을 사용하는 문서
- 위키데이터 속성 P6734를 사용하는 문서
- 위키데이터 속성 P6792를 사용하는 문서
- 위키데이터 속성 P6804를 사용하는 문서
- 위키데이터 속성 P6829를 사용하는 문서
- 위키데이터 속성 P7293을 사용하는 문서
- 위키데이터 속성 P7303을 사용하는 문서
- 위키데이터 속성 P7314를 사용하는 문서
- 위키데이터 속성 P7902를 사용하는 문서
- 위키데이터 속성 P8034를 사용하는 문서
- 위키데이터 속성 P8189를 사용하는 문서
- 위키데이터 속성 P8381을 사용하는 문서
- 위키데이터 속성 P8671을 사용하는 문서
- 위키데이터 속성 P8980을 사용하는 문서
- 위키데이터 속성 P9070을 사용하는 문서
- 위키데이터 속성 P9692를 사용하는 문서
- 위키데이터 속성 P9725를 사용하는 문서
- 위키데이터 속성 P9984를 사용하는 문서
- 위키데이터 속성 P10020을 사용하는 문서
- 위키데이터 속성 P10299를 사용하는 문서
- 위키데이터 속성 P10608을 사용하는 문서
- 위키데이터 속성 P10832를 사용하는 문서
- 위키데이터 속성 P11249를 사용하는 문서
- 위키데이터 속성 P11646을 사용하는 문서
- 위키데이터 속성 P11729를 사용하는 문서
- 위키데이터 속성 P12204를 사용하는 문서
- 위키데이터 속성 P12362를 사용하는 문서
- 위키데이터 속성 P12754를 사용하는 문서
- 위키데이터 속성 P13049를 사용하는 문서
- IBM 진공관 컴퓨터
- 36비트 컴퓨터