Hvorfor ikke ternære computere?

Forfatter: Roger Morrison
Oprettelsesdato: 22 September 2021
Opdateringsdato: 10 Kan 2024
Anonim
Hvorfor ikke ternære computere? - Teknologi
Hvorfor ikke ternære computere? - Teknologi

Indhold



Kilde: Linleo / Dreamstime.com

Tag væk:

Ternær computing er afhængig af "trits" i tre tilstande snarere end to-state bit. På trods af dette systems fordele bruges det sjældent.

Fry: "Bender, hvad er det?"

Bender: ”Ahhh, hvad en frygtelig drøm. Ones og nuller overalt ... og jeg troede, jeg så en to! ”

Fry: ”Det var bare en drøm, Bender. Der er ikke sådan noget som to. ”

Enhver, der er bekendt med digital computing, kender nuller og enlige - inklusive tegn i tegneserien "Futurama". Nul og dem er byggestenene i det binære sprog. Men ikke alle computere er digitale, og intet siger, at digitale computere skal være binære. Hvad hvis vi brugte et base-3-system i stedet for base-2? Kunne en computer forestille sig et tredje ciffer?

Som datalogisk essayist Brian Hayes bemærkede, ”Folk tæller med titusinder og maskiner tæller med to.” Et par modige sjæle har vovet at overveje et ternært alternativ. Louis Howell foreslog programmeringssprog TriINTERCAL ved hjælp af base-3 nummereringssystemet i 1991. Og russiske innovatører byggede et par dusin base-3 maskiner for over 50 år siden. Men af ​​en eller anden grund fandt nummereringssystemet sig ikke ind i den bredere computerverden.


Et kig på matematikken

I betragtning af den begrænsede plads her, berører vi bare et par matematiske ideer for at give os lidt baggrund. For en mere dybtgående forståelse af emnet, se på Hayes 'fremragende artikel “Tredje base” i nov / dec 2001-udgaven af ​​American Scientist.

Lad os nu se på betingelserne. Du har sandsynligvis hentet nu (hvis du ikke allerede vidste) at ordet "ternary" har at gøre med nummer tre. Generelt er noget, der er ternært, sammensat af tre dele eller opdelinger. En ternær form i musik er en sangform bestående af tre sektioner. I matematik betyder ternær at bruge tre som base. Nogle mennesker foretrækker ordet trinær, måske fordi det rimer med binært.

Jeff Connelly dækker et par flere udtryk i sit papir fra 2008 “Ternary Computing Testbed 3-Trit Computer Architecture.” En “trit” er den ternære ækvivalent til en smule. Hvis en bit er et binært ciffer, der kan have en af ​​to værdier, er en trit et ternært ciffer, der kan have en hvilken som helst af tre værdier. En trit er et basis-3-cifret. En "tryte" ville være 6 trits. Connelly (og måske ingen anden) definerer en "tribble" som en halv trit (eller et base-27-cifret), og han kalder et base-9-cifret et "nit." (For mere information om datamåling, se Forstå bits, byte og deres multipla.)


Ingen fejl, ingen stress - Din trinvis vejledning til oprettelse af livsændrende software uden at ødelægge dit liv


Du kan ikke forbedre dine programmeringsevner, når ingen er interesseret i softwarekvalitet.

Det kan alle blive lidt overvældende for matematiske lægfolk (som mig selv), så vi ser bare på et andet koncept for at hjælpe os med at få fat i tallene. Ternær computing omhandler tre diskrete tilstande, men selve ternære cifre kan defineres på forskellige måder ifølge Connelly:

  • Ubalanceret Trinary - {0, 1, 2}
  • Fraktioneret ubalanceret trin - {0, 1/2, 1}
  • Balanced Trinary - {-1, 0, 1}
  • Ukendt tilstandslogik - {F,?, T}
  • Trinær kodet binær - {T, F, T}

Ternære computere i historie

Der er ikke meget at dække her, for som Connelly udtrykte det, "Trinsteknologi er relativt uudforsket territorium inden for computerarkitekturområdet." Selvom der måske er en skjult skat af universitetsforskning om emnet, er det ikke mange base-3 computere, der har gjort det i produktion. Ved Hackaday Superconference 2016 holdt Jessica Tank et foredrag på den ternære computer, som hun har arbejdet med i de sidste par år. Hvorvidt hendes indsats vil stige fra uklarhed, ses stadig.

Men vi finder lidt mere, hvis vi ser tilbage til Rusland i midten af ​​20th århundrede. Computeren blev kaldt SETUN, og ingeniøren var Nikolay Petrovich Brusentsov (1925–2014). I samarbejde med den bemærkelsesværdige sovjetiske matematiker Sergei Lvovich Sobolev skabte Brusentsov et forskerteam ved Moskvas statsuniversitet og designet en ternær computerarkitektur, der ville resultere i konstruktion af 50 maskiner. Som forsker Earl T. Campbell udtaler på sin hjemmeside, var SETUN "altid et universitetsprojekt, ikke fuldt ud godkendt af den sovjetiske regering og betragtet mistænkeligt af fabriksledelse."

Sagen for ternary

SETUN anvendte afbalanceret ternær logik, {-1, 0, 1} som nævnt ovenfor. Det er den fælles tilgang til ternary, og det findes også i Jeff Connelly og Jessica Tank's arbejde. "Det smukkeste talesystem af alle er måske den afbalancerede ternære notation," skriver Donald Knuth i et uddrag fra sin bog "The Art of Computer Programming."

Brian Hayes er også en stor fan af ternary. ”Her vil jeg tilbyde tre jubel til base 3, det ternære system. … De er Goldilocks-valget blandt nummereringssystemer: Når base 2 er for lille og base 10 er for stor, er base 3 helt rigtig. ”

Et af Hayes 'argumenter for base-3's dyder er, at det er det tætteste nummereringssystem til base-e, "basen for de naturlige logaritmer, med en numerisk værdi på ca. 2.718." Med matematisk dygtighed forklarer essayisten Hayes hvordan base-e (hvis det var praktisk) ville være det mest økonomiske nummereringssystem. Det er allestedsnærværende i naturen. Og jeg kan tydeligvis huske disse ord fra Mr. Robertson, min gymnasiekemilærer: "Gud tæller ved e."

Den større effektivitet af ternær sammenligning med binær kan illustreres ved brug af SETUN-computeren. Hayes skriver: ”Setun opererede på tal sammensat af 18 ternære cifre eller trits, hvilket giver maskinen et numerisk interval på 387.420.489. En binær computer har brug for 29 bit for at nå denne kapacitet…. ”

Så hvorfor ikke ternary?

Nu vender vi tilbage til det originale spørgsmål om artiklen. Hvis ternary computing er så meget mere effektiv, hvorfor bruger vi da ikke alle dem? Et svar er, at ting bare ikke skete på den måde. Vi er kommet så langt inden for binær digital computing, at det ville være ret svært at vende tilbage.Ligesom roboten Bender ikke har nogen idé om, hvordan man tæller ud over nul og en, fungerer dagens computere på et logiksystem, der er anderledes end hvad enhver potentiel ternær computer ville bruge. Naturligvis kunne Bender på en eller anden måde fås til at forstå ternær - men det ville sandsynligvis være mere som en simulering end en redesign.

Og SETUN i sig selv vidste ikke Hayes større effektivitet. Han siger, at fordi hver trit blev opbevaret i et par magnetiske kerner, “blev den ternære fordel ødelagt.” Det ser ud til, at implementeringen er lige så vigtig som teorien.

Et udvidet citat fra Hayes synes passende her:

Hvorfor har base 3 ikke fanget? Et let gæt er, at pålidelige enheder med tre tilstande bare ikke eksisterede eller var for svære at udvikle. Og når binær teknologi blev etableret, ville den enorme investering i metoder til fremstilling af binære chips have overvældet enhver lille teoretisk fordel ved andre baser.

Fremtidens nummereringssystem

Vi har talt om bits og trits, men har du hørt om qubits? Det er den foreslåede måleenhed til kvanteberegning. Regnestykket bliver lidt uklar her. En kvantebit eller kvbit er den mindste enhed af kvanteinformation. En kvbit kan eksistere i flere tilstande på én gang. Så selvom det kan repræsentere mere end blot de to binære tilstande, er det ikke helt det samme som ternær. (Se Hvorfor Quantum Computing kan være den næste tur på Big Data Highway for at lære mere om kvanteberegning).

Og du syntes binært og ternært var svært! Kvantefysik er ikke intuitivt indlysende. Den østrigske fysiker Erwin Schrödinger tilbød et tankeeksperiment, berømt kendt som Schrödingers kat. Du bliver bedt om at antage et scenario, hvor katten både er i live og død samtidig.

Det er her nogle mennesker går af bussen. Det er latterligt at foreslå, at en kat kan være både levende og død, men det er essensen af ​​kvanteoverlagring. Kernen i kvantemekanik er, at genstande har karakteristika for både bølger og partikler. Computer forskere arbejder på at drage fordel af disse egenskaber.

Superpositionen af ​​qubits åbner en ny verden af ​​muligheder. Kvantecomputere forventes at være eksponentielt hurtigere end binære eller ternære computere. Paralleliteten i flere qubit-stater kunne gøre en kvantecomputer millioner gange hurtigere end dagens pc.

Konklusion

Indtil den dag, hvor quantum computing-revolutionen ændrer alt, vil status quo for binær computing forblive. Da Jessica Tank blev spurgt om, hvilke anvendelsestilfælde der måtte opstå til ternær computing, stønede publikum efter at have hørt en henvisning til ”tingenes internet.” Og det kan være kernen i sagen. Medmindre computergruppen er enige om en meget god grund til at forstyrre æblevognen og beder deres computere om at tælle i trekanter i stedet for to, vil robotter som Bender fortsætte med at tænke og drømme binært. I mellemtiden er kvanteberegningens alder lige uden for horisonten.