Calcolatore ternario: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m ha spostato Calcolatori ternari a Calcolatore ternario: singolare
fix note
Riga 3:
==Base di numerazione e Calcolatore digitale==
 
La numerazione binaria, o diadica, ha per base 2, cioè il più piccolo intero che può servire come base di numerazione. Già nel XVIII secolo, [[Gottfried Wilhelm Leibniz]] (Lipsia 1646, Hannover 1716 ) feceva vedere che le proprietà d’ogni [[sistema di numerazione]] divengono,in questa base, semplicissime. Scrisse a tal proposito l’opera fondamentale del 1679 “de progressione dyadica” e getto le basi per i procedimenti di calcolo elementari (addizione e moltiplicazione). Successivamente nel 1705 Leibniz pubblica nelle “memorie dell’accademia reale delle scienze” di Parigi un saggio che illustrava le ragioni per concepire una macchina calcolatrice binaria. Altri dopo il Leibniz si occuparono del problema , come ci riferisce il grande matematico [[Giuseppe Peano]]<ref name="peano"> G.Peano.:"la numerazione binaria applicata alla stenografia”, Opere scelte , vol III, pag. 352-359. A pag. 23 di tale lavoro, riscontriamo la seguente interessante osservazione storica :’’ Leibniz riscontrò in un libro cinese, detto <<libro delle variazioni>>, delle figure, in cui riconobbe i numeri scritti nel sistema binario. Queste figure, o kwa, spettano a Fu hi, fondatore della scrittura e civiltà cinese."</ref>, tra i quali annoveriamo: [[Lucas]](Opera del 1891) e [[Ampere]] (opera del 1837). Come è noto il [[sistema binario]] ha avuto una grande diffusione in seguito allo sviluppo del calcolatore digitale. Il fisico-matematico [[John von Neumann]] (Budapest 1903, Washington 1957) diede grande impulso alla costruzione del calcolatore digitale già a partire del 1945, con il progettare un calcolatore digitale, chiamato [[EDVAC]]. Si suppose che la maggior efficienza del sistema binario rispetto al sistema decimale potesse essere dimostrata teoricamente assumendo, in un modello semplice, che la complessità circuitale di un calcolatore fosse proporzionale al prodotto b x W, dove b è la base numerica scelta e W è la lunghezza in cifre del massimo numero che si deve elaborare. Seguendo le indicazioni contenute in <ref> Silvio Henin, “ Perchè I calcolatori sono binari’”, Mondo Digitale, n.2-Giugno 2007, e bibliografia ivi riportata.</ref>, ad esempio, scegliendo un decimale ad 8 cifre si ottiene b x W =80; ma per rappresentare lo stesso numero in binario abbiamo bisogno di 27 cifre e quindi si avrebbe b x W = 54. D’altro canto, però, in questo modello, nulla impedisce di calcolare la complessità circuitale (e quindi il suo costo), fissando l’ordine di grandezza del numero massimo che si vuole manipolare con il calcolatore. Ricordando la definizione di W, l’ordine di grandezza del numero massimo vale <math> b^W</math>. Riportando in grafico come varia il prodotto b x W in funzione di b (b#1), mantenendo costante <math> b^W</math>, si osserva un minimo per b compreso tra 2 e 3 ( più precisamente, b=e ; il [[numero di Nepero]] approssimato alla terza cifra decimale con 2,718…). Questo risultato, ottenuto nel modello semplificato, suggerisce di adottare il sistema binario in quanto scelta più economica del decimale; ma, nel confronto tra il sistema ternario e binario, il ternario sarebbe ancora più economico. In figura 1 viene illustrato tale calcolo, per differenti ordini di grandezza del numero massimo bW (grafico ottenuto con l’uso del Programma Mathematica, versione 5.1)
 
[[Immagine:Figura1 ternario.jpg|thumb|right|Figura1]]
 
Ma, è stato osservato che il modello sopra indicato nella pratica costruttiva è troppo semplificato[1]<ref name="peano" /> Si può ancora applicare lo schema per l’unità di calcolo([[CPU]]). Mentre altre parte del calcolatore come [[memorie di massa]](dischi e supporti magnetici) e unità di input-output non si prestano a tale semplificazione. Ciò significa che nella pratica la codifica dei valori numerici è meno compatta di quella usata nel modello semplificato. Un altro effetto importante da considerare per lo sviluppo di un calcolatore è rappresentato dalla diminuzione dei costi dovuto alla miniaturizzazione e affidabilità del [[hardware]] che si sono avuti negli ultimi vent’anni, grazie alla evoluzione della tecnologia dei [[semiconduttori]]. “Occorre infine considerare che, dal punto di vista degli algoritmi di calcolo, il sistema binario non sarebbe neppure il più efficiente. Per fare qualche esempio, i numeri negativi devono essere rappresentati con un bit dedicato al segno, ma questo comporta un’asimmetria nel ‘’range’’ dei numeri utilizzabili o produce due diversi valori per lo zero, problemi che richiedono alcuni accorgimenti per essere superati. Nel sistema binario, inoltre, la sottrazione deve essere trasformata in un’addizione con il complemento del sottraendo, obbligando ad uno o due passi in più rispetto all’addizione, a meno di non ricorrere ad un organo aggiuntivo dedicato a questa operazione. Problemi simili sono comunque comuni anche ad altre notazioni,compresa la decimale”<ref> Silvio Henin, “ Perchè I calcolatori sono binari’”[1]</ref><ref name="peano" />.
 
== Sistema ternario e calcolatori ==
Riga 19:
<math> 223_{10}= 1*3^5+0*3^4- 1*3^3+1*3^2-1*3^1+1*3^0=10\overline{1}1\overline{1}1 _{3b}</math>;
 
Il ternario bilanciato permette, dunque, di rappresentare i numeri negativi senza ricorrere al segno “meno” anteposto e per trasformare un numero nel suo opposto basta sostituire tutti gli 1 con –1 e viceversa, lasciando inalterati gli 0. Quindi sottrazione e addizione con lo stesso procedimento. Inoltre , la logica a tre valori permette di attribuire uno stato fisico a proposizioni che non possono essere definite né vere né false. Fu Thomas Fowler (Great Torrington1777, Devon, England – died March 31, 1843 ) a proporre nel 1830 il ternario bilanciato. Egli, praticamente autodidatta, scrisse il manualetto “Tables for Facilitating Arithmetical Calculations” in cui proponeva una notazione ternaria e le relative procedure di calcolo <ref> Glusker M., et al.: The Ternary Calculating Machine of Thomas Fowler. IEEE Annals of the History of Computing, Vol. 27, n. 3, 2005, p. 4-22. Vedi anche: http://www.mortati.com/glusker/ fowler/index.htm; citazione tratta da Silvio Henin </ref>[1]<ref name="peano" />. Fowler progettò “una calcolatrice meccanica che permettesse di eseguire la moltiplicazione di due numeri ternari. Il prototipo in legno, con la capacità di ben 55 cifre ternarie, fu dimostrato alla [[Royal Society]] di fronte ad importanti uomini di scienza dell’epoca, tra cui [[Charles Babbage]], l’astronomo [[George Airy]] e il matematico [[Augustus De Morgan]], che ne redasse l’unica descrizione oggi conosciuta. La macchina sfruttava un meccanismo a leve - non a ruote come le altre calcolatrici dell’epoca - ed era lunga quasi due metri; funzionava correttamente, ma il suo punto debole rimaneva la necessità di ricorrere alle tavole di conversione per trasformare i numeri decimali in ternari. Di questa limitazione Fowler era ben conscio e spese i suoi ultimi anni cercando una soluzione. La calcolatrice di Fowler fu completamente dimenticata, ma nel 2000, sulla base della descrizione di De Morgan e sull’unica rappresentazione grafica - una vetrata della chiesa di Torrington - ne è stata ricostruita una plausibile replica funzionante al North Devon College” [1]<ref name="peano" />. Anche lo stesso von Neumann nel suo “First draft”, si suggeriva: “si dovrebbero prendere in considerazione sistemi numerici diversi da quello binario, a cominciare forse da quello ternario” <ref>Aspray W.: John von Neumann and the Origins of Modern Computing. The MIT Press, 1990. Citazione tratta da Silvio Henin[2] pag. 54f</ref>. Pionieri dell’idea di calcolatori ternari furono [[Donald Knuth]] e Howard Aiken, il padre della serie di calcolatori di [[Harvard]][1]<ref name="peano" />,<ref>Knuth D.: The art of computer programming, Vol. II, Seminumerical algorithms. Addison-Wesley, 1969.</ref>, <ref>Cohen I.B., Welsh W.G. (a cura di): Makin’ Numbers. Howard Aiken and the Computer. The MIT Press, 1999, p. 131-132.</ref>.
Il primo calcolatore ternario moderno, battezzato SETUN, fu costruito nel 1956 a Mosca, da ricercatori del gruppo di Nikolai P. Brusentsov [1]<ref name="peano" />, <ref>Trogemann G., Nitussov A. Y., Ernst W. (a cura di): Computing in Russia. Vieweg Pub., 2001, p. 90-91.</ref> <ref>Brousentsov N. P., et al.: Development of ternary computers at Moscow State University. http://www.computer-museum.ru/english/setun.htm</ref>. La disponibilità di tecnologia dei russi li condusse ad impiegare circuiti logici magnetici, implementandovi una rappresentazione a tre valori e ottenendo una maggiore velocità ed un minor consumo di energia rispetto ad una macchina binaria. SETUN operava su numeri composti di 18 cifre ternarie. “In realtà il sistema ternario non fu sfruttato completamente perché per ogni TRIT si utilizzavano due nuclei magnetici a due stati, sprecando una combinazione; SETUN era quindi ternario per quanto riguarda le operazioni logico-algebriche, ma restava binario per gli aspetti fisico-circuitali. Il calcolatore sovietico fu prodotto in piccola serie in due successive versioni. SETUN rimase il primo ed ultimo calcolatore ternario”[1]<ref name="peano" />, <ref> In nota 5, a pag. 55 del saggio di Silvio Henin, “ Perchè I calcolatori sono binari’”, Mondo Digitale, n.2-Giugno 2007, e bibliografia ivi riportata.</ref>, <ref>leggiamo la nota storica: ‘’n proposta di costruire un computer ternario bilanciato apparve in “High-speed Computing Devices”, una rassegna delle tecnologie informatiche dell’epoca, pubblicato dalla marina degli Stati Uniti nel 1950. Negli stessi anni H.R.J. Grosch, ingegnere della Engineering Research Associates, propose l’architettura ternaria per il progetto dello Whirlwind del MIT, che poi fu realizzato in binario e che divenne il “cervello” del sistema SAGE per la vigilanza radar del Nord America. Nel 1973 G. Frieder realizzò un sofware di emulazione per il progetto di TERNAC, un computer ternario che non vide mai la luce. (Frieder G., et al. “A balanced- ternary computer” International Symposium on Multiple-valued Logic, 1973, p. 68-88.).</ref>.Molti studiosi, tra cui l’informatico [[Dmitry A. Pospelov]] espressero l’opinione che le barriere tecnologiche che si opponevano all’applicazione del sistema ternario nei calcolatori potevano essere superate in pochi decenni<ref>Aspray W.: John von Neumann and the Origins of Modern Computing. The MIT Press, 1990. Citazione tratta da Silvio Henin </ref>, [1]<ref name="peano" />.
 
In effetti la strada verso la costruzione di dispositivi operanti su logiche multi valori MVL(Multi-valued-logic), è stata alquanto complessa. Tuttavia, negli ultimi decenni si è notato uno sviluppo di circuiti MVL, non necessariamente ternari, ma anche a quattro, otto o sedici stati <ref> Perkowski M.: Multiple Value Logic. http://web.cecs.pdx.edu/~mperkows/ISMVL/=index.html.</ref>, <ref> Lablans P.: Multi-Valued Logic. http://www.multivaluelogic.com.</ref>. “Tali ricerche hanno, in certi casi, portato alla realizzazione di prototipi di laboratorio e di prodotti commerciali”[1]<ref name="peano" />. Tre sono i settori dell’informatica che sembrano più interessati all’uso pratico delle MVL: i sistemi di trasmissione di informazioni digitali, le memorie e i circuiti logico-aritmetici. Forse è ragionevole supporre che , “per motivi essenzialmente legati alla miniaturizzazione, ai consumi e alla dissipazione termica, si adotteranno logiche multivalore a quattro, otto o sedici stati” [1]<ref name="peano" />, con lo scopo di integrare il calcolo con sistema di numerazione binario, che inevitabilmente sopravvivrà molto a lungo, in alcune parti del calcolatore.
 
==Note==
Riga 43:
* [[George Airy]]
* [[Augustus De Morgan]]
 
{{Portale|Informatica}}
 
[[categoria:calcolatori]]