De ce nu calculatoarele ternare?

Autor: Roger Morrison
Data Creației: 22 Septembrie 2021
Data Actualizării: 10 Mai 2024
Anonim
Cheloo - Unde se termină visele (Videoclip Oficial)
Video: Cheloo - Unde se termină visele (Videoclip Oficial)

Conţinut



Sursa: Linleo / Dreamstime.com

La pachet:

Calculul ternar se bazează pe „trituri” cu trei state, mai degrabă decât pe biți de două state. În ciuda avantajelor acestui sistem, acesta este foarte rar utilizat.

Fry: „Bender, ce este?”

Bender: „Ahhh, ce vis îngrozitor. Cei din jur și zerourile peste tot ... și m-am gândit că am văzut doi! "

Fry: „A fost doar un vis, Bender. Nu există două lucruri. ”

Oricine este familiarizat cu calcularea digitală știe despre zerouri și altele, inclusiv personaje din desenul animat „Futurama”. Zero și altele sunt blocurile de construcție ale limbajului binar. Dar nu toate calculatoarele sunt digitale și nimic nu spune că calculatoarele digitale trebuie să fie binare. Ce se întâmplă dacă am folosi un sistem baz-3 în loc de baza 2? Un computer ar putea concepe o a treia cifră?

După cum a menționat eseistul informatician Brian Hayes, „Oamenii contează cu zeci și mașinile contează cu două”. Câteva suflete curajoase au îndrăznit să ia în considerare o alternativă ternară. Louis Howell a propus limbajul de programare TriINTERCAL folosind sistemul de numerotare baz-3 în 1991. Iar inovatorii ruși au construit câteva zeci de mașini de bază 3 în urmă cu 50 de ani. Dar, din anumite motive, sistemul de numerotare nu a mai prins în lumea informatică mai largă.


O privire la matematica

Având în vedere spațiul limitat aici, vom atinge doar câteva idei matematice pentru a ne oferi un fundal. Pentru o mai bună înțelegere a subiectului, uitați-vă la articolul excelent al lui Hayes „A treia bază” din numărul de noiembrie 2001 al lui American Scientist.

Acum să ne uităm la termeni. Probabil ați ales acum (dacă nu știați deja) că cuvântul „ternar” are legătură cu numărul trei. În general, ceva care este ternar este compus din trei părți sau diviziuni. O formă ternară în muzică este o formă de cântec formată din trei secțiuni. În matematică, ternarul înseamnă utilizarea a trei ca bază. Unii preferă cuvântul trinar, poate pentru că rima cu binar.

Jeff Connelly acoperă câțiva termeni în lucrarea sa din 2008 „Ternary Computing Testbed 3-Trit Computer Architecture”. Un „trit” este echivalentul ternar al unui bit. Dacă un bit este o cifră binară care poate avea una dintre cele două valori, atunci un trit este o cifră ternară care poate avea oricare dintre cele trei valori. Un trit este o cifră de bază 3. Un „tryte” ar fi 6 trits. Connelly (și poate nimeni altcineva) definește un „tribble” ca o jumătate de trit (sau o cifră de bază 27) și el numește o cifră de bază de 9 un „nit” (pentru mai multe despre măsurarea datelor, consultați Înțelegerea biților, bytes și multiplii lor.)


Fără bug-uri, fără stres - Ghidul dvs. pas cu pas pentru crearea de programe care schimbă viața fără a vă distruge viața


Nu îți poți îmbunătăți abilitățile de programare atunci când nimeni nu îi pasă de calitatea software-ului.

Totul poate deveni un pic copleșitor pentru profanii matematici (ca mine), așa că ne vom uita doar la un alt concept care să ne ajute să înțelegem numerele. Calculul ternar tratează trei stări discrete, dar cifrele ternare în sine pot fi definite în moduri diferite, conform Connelly:

  • Trinitar neechilibrat - {0, 1, 2}
  • Fracțional dezechilibrat trinar - {0, 1/2, 1}
  • Trinitar echilibrat - {-1, 0, 1}
  • Logica de stat necunoscut - {F,?, T}
  • Binar codat trinar - {T, F, T}

Calculatoare ternare în istorie

Nu este prea mult de acoperit aici, deoarece, așa cum a spus Connelly, „Tehnologia trinary este un teritoriu relativ neexplorat în domeniul arhitecturii computerizate.” Deși poate exista o comoară ascunsă a cercetării universitare pe această temă, nu multe computere de bază 3 au făcut-o în producție. În cadrul Superconferinței Hackaday din 2016, Jessica Tank a ținut o discuție pe computerul ternar la care lucrează în ultimii ani. Rămâne de văzut dacă eforturile ei vor crește din obscuritate.

Dar vom găsi ceva mai mult dacă ne uităm înapoi la Rusia la mijlocul anilor 20lea secol. Computerul se numea SETUN, iar inginerul era Nikolay Petrovich Brusentsov (1925-2014). Lucrând cu notabilul matematician sovietic Serghei Lvovici Sobolev, Brusentsov a creat o echipă de cercetare la Universitatea de Stat din Moscova și a proiectat o arhitectură ternară a computerului care ar avea ca rezultat construcția a 50 de mașini. După cum afirmă cercetătorul Earl T. Campbell pe site-ul său web, SETUN „a fost întotdeauna un proiect universitar, nu a fost avizat pe deplin de guvernul sovietic și privit cu suspiciune de conducerea fabricii.”

Cazul pentru Ternary

SETUN a folosit logica ternară echilibrată, {-1, 0, 1} așa cum s-a menționat mai sus. Aceasta este abordarea comună a ternarului și se regăsește și în opera lui Jeff Connelly și Jessica Tank. „Poate că cel mai frumos sistem de numere dintre toate este notația ternară echilibrată”, scrie Donald Knuth într-un extras din cartea sa „The Art of Programming Computer”.

Brian Hayes este, de asemenea, un mare fan al ternarului. „Aici vreau să ofer trei urale pentru baza 3, sistemul ternar. ... Sunt alegerea Goldilocks printre sistemele de numerotare: când baza 2 este prea mică și baza 10 este prea mare, baza 3 este corectă. "

Unul dintre argumentele lui Hayes pentru virtutile bazei 3 este că acesta este cel mai apropiat sistem de numerotare la baza e, „baza logaritmelor naturale, cu o valoare numerică de aproximativ 2.718”. Cu pricepere matematică, eseistul Hayes explică cât de bază e (dacă ar fi practic) ar fi cel mai economic sistem de numerotare. Este omniprezent în natură. Și îmi amintesc clar aceste cuvinte de la domnul Robertson, profesorul meu de chimie al liceului: „Dumnezeu contează prin e.”

Eficiența mai mare a ternarului în comparație cu binarul poate fi ilustrată prin utilizarea computerului SETUN. Hayes scrie: „Setun funcționează pe numere compuse din 18 cifre ternare sau trituri, oferind mașinii un interval numeric de 387.420.489. Un computer binar ar avea nevoie de 29 de biți pentru a atinge această capacitate… ”

Deci de ce nu Ternary?

Acum revenim la întrebarea inițială a articolului. Dacă calcularea ternară este cu atât mai eficientă, de ce nu le folosim cu toții? Un răspuns este că lucrurile nu s-au întâmplat așa. Am ajuns până acum în calculul digital binar, încât ar fi destul de greu să ne întoarcem.La fel cum robotul Bender nu are idee cum să numere peste zero și unul, calculatoarele de astăzi funcționează pe un sistem logic diferit de ceea ce ar putea folosi orice computer ternar potențial. Desigur, Bender ar putea fi făcut cumva pentru a înțelege ternarul - dar probabil ar fi mai degrabă o simulare decât o reproiectare.

Și SETUN în sine nu a realizat eficiența mai mare a ternarului, potrivit lui Hayes. El spune că, deoarece fiecare trit a fost stocat într-o pereche de nuclee magnetice, „avantajul ternar a fost risipit.” Se pare că implementarea este la fel de importantă ca teoria.

Un citat extins de la Hayes pare potrivit aici:

De ce baza 3 nu a reușit să se prindă? O presupunere ușoară este că dispozitivele fiabile cu trei state pur și simplu nu existau sau erau prea greu de dezvoltat. Și odată creată tehnologia binară, investiția extraordinară în metode pentru fabricarea cipurilor binare ar fi copleșit orice mic avantaj teoretic al altor baze.

Sistemul de numerotare a viitorului

Am vorbit despre bucăți și trituri, dar ați auzit de smântâni? Aceasta este unitatea de măsură propusă pentru calculul cuantic. Matematica devine un pic cam furișoară aici. Un bit cuantic, sau qubit, este cea mai mică unitate de informații cuantice. Un qubit poate exista în mai multe stări simultan. Deci, deși poate reprezenta mai mult decât cele două stări ale binarului, nu este la fel ca ternarul. (Pentru a afla mai multe despre calculul cuantic, consultați De ce calcularea cuantică poate fi următoarea pornire pe autostrada Big Data.)

Și credeți că binarul și ternarul sunt greu! Fizica cuantică nu este intuitivă evident. Fizicianul austriac Erwin Schrödinger a oferit un experiment de gândire, cunoscut sub numele de pisica lui Schrödinger. Vi se cere să presupuneți pentru un minut un scenariu în care pisica este în viață și moartă simultan.

Acesta este locul unde unii oameni coboară din autobuz. Este ridicol să propunem că o pisică ar putea fi atât vie cât și moartă, dar aceasta este esența suprapunerii cuantice. Punctul crucial al mecanicii cuantice este că obiectele au caracteristici atât ale undelor, cât și ale particulelor. Informaticienii lucrează pentru a profita de aceste proprietăți.

Suprapunerea de qubits deschide o nouă lume de posibilități. Calculatoarele cuantice sunt de așteptat să fie exponențial mai rapide decât computerele binare sau ternare. Paralelismul mai multor state qubit ar putea face un computer cuantic de milioane de ori mai rapid decât computerul de astăzi.

Concluzie

Până în ziua în care revoluția calculării cuantice va schimba totul, va rămâne status quo-ul de calcul binar. Când Jessica Tank a fost întrebat ce cazuri de utilizare ar putea apărea pentru calculul ternar, publicul a gemut când a auzit o trimitere la „internetul lucrurilor”. Și acesta poate fi punctul cel mai important. Cu excepția cazului în care comunitatea de calcul este de acord cu un motiv foarte bun pentru a supăra coșul de mere și le va cere calculatoarelor să numere în trei în loc de două, roboți precum Bender vor continua să gândească și să viseze în mod binar. Între timp, vârsta calculării cuantice este dincolo de orizont.