36비트 컴퓨팅

36비트 컴퓨터는 1950년대부터 1970년대 초까지 초기 메인프레임 시대에 인기를 끌었다.

섬네일|300px|프라이든 기계식 계산기. 36비트의 전자 컴퓨터 워드 길이는 부분적으로 이 계산기의 정밀도에 맞춰 선택되었다.

1960년대부터, 특히 1970년대에는 7비트 ASCII와 8비트 확장 이진화 십진법 교환 부호의 도입으로 8비트 바이트를 사용하는 기계로의 전환이 이루어졌고, 이들 기계는 워드 크기가 8의 배수였다. 특히 32비트 IBM 시스템/360 메인프레임과 디지털 이큅먼트 VAX 및 데이터 제너럴 MV 시리즈 슈퍼미니컴퓨터가 그러했다. 1970년대 중반까지 이러한 전환은 대부분 완료되었고, 마이크로프로세서는 10년에 걸쳐 8비트에서 16비트, 32비트로 빠르게 발전했다. 이 기간 동안 36비트 기계의 수는 급격히 감소했으며, 주로 레거시 프로그램 실행을 위한 하위 호환성 목적으로 제공되었다.

역사
컴퓨터가 도입되기 전, 정밀 과학 및 공학 계산의 최첨단 기술은 프라이든, 마천트, 먼로 등에서 제조한 10자리 전기식 기계식 계산기였다. 이 계산기에는 각 숫자에 대한 키 열이 있었고, 조작자들은 숫자를 입력할 때 모든 손가락을 사용하도록 훈련받았으므로, 일부 특수 계산기는 더 많은 열을 가졌지만 10자리가 실용적인 한계였다. 새로운 경쟁자인 컴퓨터는 그 정확도를 맞춰야 했다. 이 시대에 판매된 십진수 컴퓨터인 IBM 650과 IBM 7070은 초기 컴퓨터 중 하나인 에니악과 마찬가지로 10자리 워드 길이를 가졌다.

따라서 동일한 시장을 목표로 한 초기 이진 컴퓨터는 종종 36비트 워드 길이를 사용했다. 이는 10진수 자릿수 정확도로 양수 및 음의 정수를 표현하기에 충분히 길었다(35비트가 최소였을 것이다). 또한 6비트 문자 코드로 인코딩된 6개의 영숫자를 저장할 수 있었다. 36비트 워드를 가진 컴퓨터로는 MIT 링컨 연구소 TX-2, IBM 701/704/709/7090/7094, UNIVAC 1103/1103A/1105 및 1100/2200 시리즈, 제너럴 일렉트릭 GE-600/허니웰 6000, 디지털 이큅먼트 코퍼레이션 PDP-6/PDP-10 (DEC시스템-10/DEC시스템-20에 사용됨), 그리고 심볼릭스 3600 시리즈가 있었다.

PDP-1/PDP-9/PDP-15와 같은 더 작은 기계는 18비트 워드를 사용했으므로, 이중 워드는 36비트였다.

이들 컴퓨터는 12비트에서 18비트 길이의 주소를 가졌다. 주소는 36비트 워드를 참조했으므로, 컴퓨터는 4,096에서 262,144 워드(24,576에서 1,572,864개의 6비트 문자)까지만 주소 지정할 수 있었다. 오래된 36비트 컴퓨터 역시 비슷한 양의 물리적 메모리로 제한되었다. 살아남은 아키텍처는 시간이 지남에 따라 메모리 세그먼트 또는 다른 메커니즘을 사용하여 더 큰 가상 주소 공간을 지원하도록 진화했다.

일반적인 문자 패킹은 다음과 같았다.
 6개의 6비트 IBM BCD 또는 필데이터 문자 (초기 사용에서 매우 흔함)
 6개의 6비트 ASCII 문자, 대문자 악센트 없는 글자, 숫자, 공백 및 대부분의 ASCII 문장 부호 문자를 지원. PDP-6 및 PDP-10에서 sixbit이라는 이름으로 사용되었다.
 32비트에 패킹된 6개의 DEC 라딕스-50 문자, 그리고 4개의 여유 비트
 5개의 7비트 문자와 1개의 사용되지 않는 비트 (일반적인 PDP-6/10 규칙, five-seven ASCII라고 불림)
 4개의 8비트 문자 (7비트 ASCII + 1개의 여유 비트 또는 8비트 확장 이진화 십진법 교환 부호), 그리고 4개의 여유 비트
 4개의 9비트 문자Marshall Cline.
"Would you please go over the rules about bytes, chars, and characters one more time?": "A file transfer protocol" (멀틱스 규칙).

문자는 기계어 시프트 및 마스크 연산을 사용하거나 6비트, 9비트 또는 가변 길이 문자를 지원하는 특수 목적 하드웨어를 사용하여 워드에서 추출되었다. 유니박 1100/2200은 명령어의 부분 워드 지정자인 "J" 필드를 사용하여 문자에 접근했다. GE-600은 특수 간접 워드를 사용하여 6비트 및 9비트 문자에 접근했다. PDP-6/10은 임의 길이 바이트 필드에 접근하는 특수 명령어를 가졌다.

표준 C 프로그래밍 언어는  char 데이터 유형의 크기가 최소 8비트여야 하며, 비트 필드를 제외한 모든 데이터 유형의 크기가 문자 크기의 배수여야 한다고 요구한다. 따라서 36비트 기계의 표준 C 구현은 일반적으로 9비트 char를 사용하지만, 12비트, 18비트 또는 36비트도 표준 요구 사항을 충족할 수 있다.Marshall Cline.
"C++ FAQ: the rules about bytes, chars, and characters".

IBM이 32비트 풀 워드를 가진 IBM 시스템/360을 도입할 무렵, 과학 계산은 대부분 부동소수점으로 전환되었고, 이중 정밀도 형식은 10자리 이상의 정확도를 제공했다. 360은 또한 상업 응용 프로그램을 위한 가변 길이 십진수 산술 명령을 포함하여 워드 길이가 2의 거듭제곱인 관행이 빠르게 보편화되었지만, 적어도 한 종류의 36비트 컴퓨터 시스템은 2019년 현재까지도 판매되고 있으며, 이는 유니시스 클리어패스 도라도 시리즈로, UNIVAC 1100/2200 시리즈 메인프레임의 연속이다.

컴퓨서브는 1960년대 후반 36비트 PDP-10 컴퓨터를 사용하여 시작되었다. 이 서비스는 PDP-10 및 DEC시스템-10 호환 하드웨어를 계속 사용했으며 2000년대 후반에 서비스가 중단되었다.

 전자 제품에서의 기타 사용 
래티스 세미컨덕터의 LatticeECP3 FPGA에는 두 개의 36비트 숫자의 곱셈을 지원하도록 구성할 수 있는 곱셈기 슬라이스가 포함되어 있다. 알테라 스트라틱스 FPGA의 DSP 블록은 36비트 덧셈 및 곱셈을 수행할 수 있다.

 같이 보기 
 물리 주소 확장 (PAE)
 PSE-36 (36비트 페이지 크기 확장)
 UTF-9 and UTF-18

 각주 

분류:데이터 단위