홈으로 돌아가기

Programma 101: 메모리와 프로그래밍 언어

Olivetti Programma 101 — 1965년 프로그래머블 계산기, 240바이트 자기변형선 메모리와 레지스터 기반 언어 탑재. 전체/분할 모드, 점프 및 분기 지원. 기술 전문가를 위한 아키텍처 분석.

P101: 최초의 개인용 컴퓨터 상세 분석
Advertisement 728x90

올리베티 프로그램 101: 최초의 개인용 컴퓨터의 아키텍처와 프로그래밍

**올리베티 프로그램 101(P101)은 1965년 출시된 최초의 프로그래밍 가능한 계산기 중 하나로, 개인용 컴퓨터 지위를 주장합니다. 36kg의 무게를 가진 이 장치는 이산 트랜지스터 논리, 240바이트의 자기변형 메모리, 레지스터 기반 프로그래밍 언어를 구현했습니다. HP 9100A가 등장하기 전까지 1972년까지 3,200~3,500달러 가격으로 판매되어 대중 시장 제품이 되었습니다.

디자인과 인체공학

P101은 타자기와 비슷한 컴팩트한 크기와 마리오 벨리니의 미래지향적 디자인으로 돋보였습니다. 개발은 1962년 피에르 조르조 페로토 팀이 주도하여 단순성, 인체공학, 미학 원칙을 기반으로 했습니다. 키보드는 37개의 버튼, 소수점 설정 휠(0~15자리), 프로그램 기록, 인쇄, 잠금 해제의 세 가지 잠금 키를 포함했습니다.

출력은 표준 종이 테이프에 드럼 프린터(30자/초)로 처리되었습니다. 22자리 숫자와 부호, 소수점, 제어 기호를 인쇄했습니다. 표시등: 준비 시 파란색, 실행 시 깜빡임, 오류 시 빨간색(오버플로, 0으로 나누기).

Google AdInline article slot

메모리 아키텍처

자기변형 지연선(6.5m 와이어) 기반 메모리는 240바이트를 제공했습니다. 각 24비트의 10개 레지스터는 고정 역할을 가졌습니다:

  • M (중간): 입력 및 중간 캐리.
  • A (누산기): 반올림된 연산 결과.
  • R (결과): 전체 결과 또는 나머지.
  • B, C: 데이터 저장, 반 레지스터로 분할 가능.
  • D, E, F: 데이터 또는 명령어, 반 레지스터로 분할 가능.
  • p1, p2: 명령어 전용.

레지스터 B~F는 전체 모드(22자리 + 부호/소수점 또는 24개 명령어)와 분할 모드(반 레지스터당 11자리/12개 명령어, F/ = f로 표시)를 지원했습니다. 최소 프로그램 크기는 48개 명령어(p1+p2), 최대 120개(D+E+F+p1+p2)였습니다.

기계 논리는 모드를 추적했습니다: 분할 레지스터에 11자리 이상 전송하거나 전체 레지스터를 분할할 때 오류가 발생했습니다.

Google AdInline article slot

프로그래밍 언어

언어는 수학적, 데이터 교환, 유틸리티 연산, 점프를 포함한 단순화된 어셈블러였습니다. "등호" 버튼은 없었습니다.

수학적 연산

| 버튼 | 설명 |

|--------|-------------|

Google AdInline article slot

| + - × | A ±× M → A (반올림), R (전체) |

| : | A / M → A (반올림), R (나머지) |

| √ | A = √M, M = 2√M |

| 레지스터 + - × : √ | 레지스터를 M에 복사, 연산 적용 |

| A ↕ | |A| → A |

데이터 교환

  • 레지스터 ↑ (A,R 제외): M → 레지스터.
  • 레지스터 ↓: 레지스터 → A.
  • 레지스터 ↕: 교환 A ↔ 레지스터 (R ↕ = R ↓).
  • / ↕: A의 소수 부분 → M.
  • R S: 교환 R ↔ D.

유틸리티

  • S: 일시 정지/계속, M에 입력.
  • 레지스터 ◊: 레지스터 인쇄.
  • 레지스터 * (M,R 제외): 0으로 설정.

분할 모드는 /가 있는 명령어로 활성화, 전체 모드는 지우기로 활성화(B * (B 지우기)).

점프 시스템

32개 명령어: 16개 무조건(CV D R → A B E F), 16개 조건부(/ 전송 전, A > 0이면 점프). 기호 V, W, Y, Z는 전송-대상 쌍을 인코딩합니다.

핵심 요약

  • P101은 컴팩트한 책상 장치로 개인용 컴퓨터를 도입했습니다.
  • 240바이트 자기변형 메모리와 유연한 레지스터(전체/분할).
  • 알고리즘을 위한 점프와 분기를 포함한 언어.
  • 인체공학: 프린터, 표시등, 간단한 키보드.
  • 영향: HP가 특허 라이선스 비용을 지불했습니다.

— Editorial Team

Advertisement 728x90

다음 읽기