Dlaczego nie komputery trójskładnikowe?

Autor: Roger Morrison
Data Utworzenia: 22 Wrzesień 2021
Data Aktualizacji: 6 Móc 2024
Anonim
Dlaczego nie komputery trójskładnikowe? - Technologia
Dlaczego nie komputery trójskładnikowe? - Technologia

Zawartość



Źródło: Linleo / Dreamstime.com

Na wynos:

Trójskładnikowe obliczenia opierają się raczej na trójstanowych „tritach” niż na bitach dwustanowych. Pomimo zalet tego systemu jest rzadko używany.

Fry: „Bender, co to jest?”

Bender: „Ach, co za okropny sen. Wszędzie jedności i zer… i myślałem, że widziałem dwa! ”

Fry: „To był tylko sen, Bender. Nie ma czegoś takiego jak dwa ”.

Każdy, kto zna się na informatyce cyfrowej, zna zera i jedynki - w tym postacie z kreskówki „Futurama”. Zera i jedynki są elementami składowymi języka binarnego. Ale nie wszystkie komputery są cyfrowe i nic nie mówi, że komputery cyfrowe muszą być binarne. Co jeśli użyjemy systemu base-3 zamiast base-2? Czy komputer może wyobrazić sobie trzecią cyfrę?

Jak zauważył eseista informatyki Brian Hayes: „Ludzie liczą po dziesiątki, a maszyny liczą po dwójkę”. Kilka odważnych dusz odważyło się rozważyć trójskładnikową alternatywę. Louis Howell zaproponował język programowania TriINTERCAL wykorzystujący system numeracji base-3 w 1991 roku. Rosyjscy innowatorzy zbudowali kilkadziesiąt maszyn base-3 ponad 50 lat temu. Ale z jakiegoś powodu system numeracji nie sprawdził się w szerszym świecie komputerów.


Spojrzenie na matematykę

Biorąc pod uwagę ograniczoną przestrzeń tutaj, zajmiemy się kilkoma matematycznymi pomysłami, aby dać nam trochę tła. Aby uzyskać bardziej dogłębne zrozumienie tego tematu, zapoznaj się z doskonałym artykułem Hayesa „Third Base” w numerze American Scientist z listopada / grudnia 2001 roku.

Teraz spójrzmy na warunki. Prawdopodobnie już zauważyłeś (jeśli jeszcze nie wiesz), że słowo „trójskładnik” ma związek z liczbą trzy. Zasadniczo coś trójskładnikowego składa się z trzech części lub podziałów. Trójskładnikowa forma w muzyce jest formą piosenki złożoną z trzech części. W matematyce trójka oznacza używanie trzech jako podstawy. Niektórzy ludzie wolą słowo trinary, być może dlatego, że rymuje się z binarnym.

Jeff Connelly opisuje jeszcze kilka terminów w swoim artykule z 2008 r. „Ternary Computing Testbed 3-Trit Computer Architecture”. „Trit” jest trójskładnikiem. Jeśli bit jest cyfrą binarną, która może mieć jedną z dwóch wartości, to trit jest cyfrą trójskładnikową, która może mieć dowolną z trzech wartości. Trit to jedna cyfra podstawowa - 3. „Tryte” miałoby 6 tritów. Connelly (i być może nikt inny) definiuje „trybble” jako pół trytu (lub jedną cyfrę base 27) i nazywa jedną cyfrę base 9 cyfrą „nit”. (Aby uzyskać więcej informacji na temat pomiaru danych, zobacz Zrozumienie bitów, bajtów i ich wielokrotności).


Bez błędów, bez stresu - Twój przewodnik krok po kroku do tworzenia oprogramowania zmieniającego życie bez niszczenia życia


Nie możesz poprawić swoich umiejętności programistycznych, gdy nikt nie dba o jakość oprogramowania.

Wszystko to może stać się nieco przytłaczające dla laików matematycznych (takich jak ja), dlatego przyjrzymy się innej koncepcji, która pomoże nam zrozumieć liczby. Obliczenia trójskładnikowe dotyczą trzech dyskretnych stanów, ale same cyfry trójskładnikowe można zdefiniować na różne sposoby, zgodnie z Connelly:

  • Niezrównoważony układ trójstronny - {0, 1, 2}
  • Ułamkowy niezbalansowany trójkowy - {0, 1/2, 1}
  • Zrównoważony układ trójrzędny - {-1, 0, 1}
  • Logika nieznanego stanu - {F,?, T}
  • Trinary Coded Binary - {T, F, T}

Komputery trójskładnikowe w historii

Nie ma tu wiele do omówienia, ponieważ, jak to ujął Connelly, „technologia trójliniowa jest stosunkowo niezbadanym obszarem w dziedzinie architektury komputerowej”. Chociaż może istnieć ukryty skarb badań uniwersyteckich na ten temat, niewiele komputerów z bazą 3 do produkcji. Na konferencji Hackaday w 2016 r. Jessica Tank wygłosiła wykład na temat trójskładnikowego komputera, nad którym pracuje od kilku lat. Nie wiadomo, czy jej wysiłki wzrosną z niejasności.

Ale znajdziemy trochę więcej, jeśli spojrzymy wstecz na Rosję w połowie 20th stulecie. Komputer nazywał się SETUN, a inżynierem był Nikołaj Pietrowicz Brusentsov (1925–2014). Współpracując z wybitnym sowieckim matematykiem Siergiejem Lwowicem Sobolewem, Brusentsov stworzył zespół badawczy na Moskiewskim Uniwersytecie Państwowym i zaprojektował trójskładnikową architekturę komputerową, która zaowocowałaby zbudowaniem 50 maszyn. Jak stwierdził badacz Earl T. Campbell na swojej stronie internetowej, SETUN „zawsze był projektem uniwersyteckim, nie do końca popieranym przez rząd radziecki i podejrzanym przez kierownictwo fabryki”.

Sprawa dla trójskładnika

SETUN zastosował zrównoważoną logikę trójskładnikową, {-1, 0, 1}, jak wspomniano powyżej. Jest to powszechne podejście do trójki, a także w pracach Jeffa Connelly'ego i Jessiki Tank. „Być może najładniejszym systemem liczbowym jest zrównoważona notacja trójskładnikowa”, pisze Donald Knuth we fragmencie swojej książki „The Art of Computer Programming”.

Brian Hayes jest także wielkim fanem trójki. „Tutaj chcę zaoferować trzy okrzyki dla bazy 3, trójskładnikowego systemu. … Są wyborem Złotowłosa wśród systemów numeracji: gdy podstawa 2 jest za mała, a podstawa 10 jest za duża, podstawa 3 jest w sam raz. ”

Jednym z argumentów Hayesa za zaletami podstawy-3 jest to, że jest to najbliższy system numeracji do podstawy-e, „podstawa logarytmów naturalnych, o wartości liczbowej około 2,718”. Eseistą Hayes wyjaśnia matematyczną sprawność jak base-e (jeśli byłoby to praktyczne) byłby najbardziej ekonomicznym systemem numeracji. Jest wszechobecny w przyrodzie. I wyraźnie pamiętam te słowa pana Robertsona, mojego nauczyciela chemii w liceum: „Bóg liczy e”.

Większa wydajność trójki w porównaniu do binarnej może być zilustrowana przez użycie komputera SETUN. Hayes pisze: „Setun działał na liczbach składających się z 18 cyfr potrójnych lub tritów, co daje maszynie zakres liczbowy 387,420,489. Komputer binarny potrzebowałby 29 bitów, aby osiągnąć tę pojemność… ”

Dlaczego więc nie trójskładnikowy?

Teraz wracamy do pierwotnego pytania do artykułu. Jeśli obliczenia trójskładnikowe są o wiele bardziej wydajne, dlaczego wszyscy nie korzystamy z nich? Jedna odpowiedź jest taka, że ​​rzeczy po prostu tak się nie wydarzyły. Zaszliśmy tak daleko w dziedzinie binarnego przetwarzania cyfrowego, że cofnięcie się byłoby dość trudne.Podobnie jak robot Bender nie ma pojęcia, jak liczyć ponad zero i jeden, tak dzisiejsze komputery działają w systemie logicznym innym niż to, co mógłby wykorzystać każdy potencjalny komputer trójskładnikowy. Oczywiście Bender można by w jakiś sposób zrozumieć trójskładnikowy - ale prawdopodobnie byłby to bardziej symulacja niż przeprojektowanie.

Zdaniem Hayesa sama SETUN nie zdawała sobie sprawy z większej wydajności trójskładnika. Mówi, że ponieważ każdy tryt był przechowywany w parze rdzeni magnetycznych, „trójskładnikowa przewaga została zmarnowana”. Wydaje się, że wdrożenie jest równie ważne jak teoria.

Wydaje się, że dłuższy cytat z Hayesa:

Dlaczego baza 3 nie dała się złapać? Łatwo zgadnąć, że niezawodne urządzenia trójstanowe po prostu nie istniały lub były zbyt trudne do opracowania. Po ustanowieniu technologii binarnej ogromna inwestycja w metody wytwarzania układów binarnych pokonałaby jakąkolwiek niewielką teoretyczną przewagę innych baz.

System numeracji przyszłości

Rozmawialiśmy o bitach i tritach, ale czy słyszałeś o kubitach? To proponowana jednostka miary dla obliczeń kwantowych. Matematyka jest tu trochę rozmyta. Bit kwantowy, czyli kubit, jest najmniejszą jednostką informacji kwantowej. Kubit może istnieć w wielu stanach jednocześnie. Więc chociaż może reprezentować więcej niż tylko dwa stany binarne, to nie jest tak samo jak trójka. (Aby dowiedzieć się więcej na temat obliczeń kwantowych, zobacz Dlaczego obliczenia kwantowe mogą być następnym zakrętem na autostradzie Big Data).

I myślałeś, że binarne i trójskładnikowe są trudne! Fizyka kwantowa nie jest intuicyjnie oczywista. Austriacki fizyk Erwin Schrödinger zaproponował eksperyment myślowy, znany jako kot Schrödingera. Zostaniesz poproszony o przypuszczenie przez chwilę scenariusza, w którym kot jest jednocześnie żywy i martwy.

To tam niektórzy ludzie wysiadają z autobusu. Śmiesznie jest proponować, że kot może być zarówno żywy, jak i martwy, ale taka jest istota superpozycji kwantowej. Sedno mechaniki kwantowej polega na tym, że obiekty mają cechy zarówno fal, jak i cząstek. Informatycy pracują nad wykorzystaniem tych właściwości.

Superpozycja kubitów otwiera nowy świat możliwości. Komputery kwantowe powinny być wykładniczo szybsze niż komputery binarne lub trójskładnikowe. Równoległość wielu stanów kubitowych może sprawić, że komputer kwantowy będzie miliony razy szybszy niż dzisiejszy komputer.

Wniosek

Do dnia, w którym rewolucja obliczeń kwantowych zmieni wszystko, status quo obliczeń binarnych pozostanie. Kiedy Jessica Tank została zapytana, jakie przypadki użycia mogą wystąpić w przypadku trójskładnikowego przetwarzania danych, publiczność jęknęła, słysząc odniesienie do „Internetu rzeczy”. I to może być sedno sprawy. O ile społeczność komputerowa nie zgodzi się na bardzo dobry powód, by zdenerwować wózek z jabłkami i poprosi swoje komputery, by policzyły w trójkach zamiast dwójki, roboty takie jak Bender będą nadal myśleć i marzyć w systemie binarnym. Tymczasem era obliczeń kwantowych jest tuż za horyzontem.