Langbahn Team – Weltmeisterschaft

Architektura 36-bitowa

Architektura 36-bitowaarchitektura komputera, w której słowa, adresy i inne dane mieszczą się w najwyżej 36 bitach pamięci.

Wiele wczesnych komputerów kierowanych na rynek naukowy było przystosowanych do obliczeń o 36-bitowej dokładności. Taka długość słowa była akurat odpowiednia, by reprezentować dane liczbowe w dokładności odpowiadającej 10 cyfrom dziesiętnym (ścisłe minimum to 35). Możliwe było również używanie sześciu znaków alfanumerycznych dzięki 6-bitowemu kodowaniu.

Przed wprowadzeniem komputerów taka 10-cyfrowa dokładność była szczytem możliwości technicznych jeśli chodzi o obliczenia naukowe i inżynierskie: tyle oferowały mechaniczne i elektromechaniczne kalkulatory oferowane przez takie firmy jak Friden, Marchant i Monroe. Kalkulatory te miały rzędy przycisków odpowiadających poszczególnym cyfrom, a ich operatorzy byli wyszkoleni w używaniu wszystkich palców przy wprowadzaniu danych. Cała 10 cyfrowa liczba była wprowadzana przez jednoczesne (równoległe) wciśnięcie wszystkich przycisków, więc konstruowanie kalkulatora bardziej dokładnego było niecelowe[1].

Komputery dwójkowe, jako nowy rywal owych kalkulatorów, musiały im dorównać dokładnością. Dziesiętne komputery sprzedawane, takie jak IBM 650 i 7070 w tej epoce również miały dokładność 10 cyfr. Podobnie ENIAC, jeden z pierwszych komputerów, używał liczb 10-cyfrowych.

Wśród komputerów 36-bitowych wymienić można:

Mniejsze komputery takie jak PDP-1, 9 i 15 używały słowa 18-bitowego, tak, aby dwukrotność długości słowa dawała 36 bitów.

Opisane tu komputery typowo korzystały z 18-bitowej przestrzeni adresowej, ale z dokładnością do słów nie (co w dzisiejszych komputerach jest normą) bajtów. Efektywnie umożliwiało to zaadresowanie do 218 słów 36-bitowych, co odpowiada liczbie 9 437 184 bitów (około 1 MB). Wiele z tych maszyn było też fizycznie ograniczonych do tej wielkości pamięci. Te architektury, które przetrwały, wypracowały sposób obsługi większych pamięci dzięki technikom takim jak segmentacja.

Typowe formaty zapisu danych znakowych w jednym 36-bitowym słowie obejmowały:

  • 6 znaków formatu Fielddata lub IBM-owego BCD
  • 5 znaków 7-bitowych i jeden bit nieużywany (konwencja PDP 6/10)
  • 4 znaki 8-bitowe (ASCII lub EBCDIC) i 4 bity wolne
  • 4 znaki 9-bitowe (konwencja Multicsa)[2]

Znaki te odczytywane były z 36-bitowych ciągów przy użyciu standardowych technik mask bitowych i operacji przesuwania bitów, albo przy użyciu specjalizowanych funkcjonalności sprzętowych. UNIVAC 1100/2200 używał w tym celu wskaźnika części słowa lub rejestru „J”. GE-600 dysponował możliwością wyłuskiwania znaków 6- lub 9- bitowych. PDP 6/10 miał specjalne instrukcje do obsługi pól bitowych dowolnej długości (od 1 bitu do 36 włącznie). Język C wymaga możliwości adresowania całej pamięci z dokładnością do bajtu, więc implementacje tego języka na opisanych komputerach zakładają bajt 9-bitowy.

Z chwilą wprowadzenia przez IBM Systemu/360 w obliczeniach naukowych spopularyzowana została notacja zmiennoprzecinkowa i mechaniczne kalkulatory przestały się liczyć jako konkurencja dla komputerów. 360 wprowadziło także obliczenia dziesiętne zmiennej dokładności dla aplikacji biznesowych. W wyniku tego używanie długości słowa będącej potęgą dwójki szybko się upowszechniło i stało się standardem.

Zobacz też

Przypisy

  1. Kalkulator mechaniczny w wirtualnym muzeum kalkulatorów. [dostęp 2010-08-17]. (ang.).
  2. DPS / level 68 & DPS 8M Multics processor manual. Honeywell Information Systems, Inc., s. 233–242.

Linki zewnętrzne

  • Eric Smith: 36bit.org. 1999. [dostęp 2009-06-17]. (ang.).