Sistema binari

sistema de numeració en què els nombres es representen usant únicament les xifres zero i u

El sistema binari és un sistema de numeració en el qual tots els nombres es representen utilitzant com a base dues xifres: zero i un (0 i 1). En altres paraules, és un sistema de numeració de base 2, mentre que el sistema que utilitzem més habitualment és de base 10, o decimal.

Si el sistema decimal treballa amb deu xifres (0,1,2,3,4,5,6,7,8,9), el sistema octal o de base vuit treballaria amb vuit (0,1,2,3,4,5,6,7). El sistema binari, o de base dos, només n'utilitza dos (0 i 1).

Aquest sistema és un dels més coneguts ja que l'ordinador l'utilitza.

Història del codi binari

modifica

El sistema de numeració binari actual va ser ideat per Gottfried Leibniz al 1679,[1] apareix al seu article «Explication de l'Arithmétique Binaire» fet del 1703. Anteriorment, han anat aparegut diversos sistemes relacionats amb nombres binaris en cultures com l'egípcia, la xinesa o l'índia. Leibniz fou inspirat especialment pel xinès Yi Jing.

 
Valors aritmètics representats en les part de l'Ull d'Horus

Els mestres de l'antic Egipte utilitzaren dos tipologies de sistemes per dur a terme les seves fraccions, per una banda les fraccions egípcies (no relacionades amb el sistema de numeració binari) i les fraccions del Horus-Eye (anomenades així perquè molts historiadors de la matemàtica creuen que els símbols que s'utilitzen per aquest sistema podrien estar disposats per formar l'ull d'Horus, encara que això ha estat qüestionat). Les fraccions Horus-Eye formen un sistema de numeració binari per a quantitats fraccionàries de líquids o altres mesures, en la qual una fracció de hekat s'expressa com la suma de les fraccions binàries 1/2, 1/4, 1/8, 1 / 16, 1/32 i 1/64. Les formes primerenques d'aquest sistema es poden trobar en els documents de la V dinastia d'Egipte, aproximadament datada de l'any 2400 aC, i les seves dates completament ja desenvolupades en forma de jeroglífics a la IX dinastia d'Egipte, aproximadament datada del 1200 aC.[2]

El mètode utilitzat per a la multiplicació de l'antic Egipte, està estretament relacionat amb nombres binaris. En aquest mètode, la multiplicació d'un nombre per un segon nombre es porta a terme mitjançant una seqüència de successos en què un valor (inicialment el primer dels dos nombres) o bé es duplica o té el primer nombre afegit de nou en ell mateix; l'ordre en què aquests passos han de ser realitzats ve donat per la representació binària del segon nombre. Aquest mètode el trobem en ús en aspectes com per exemple, el papir matemàtic de Rhind, que data aproximadament de l'any 1650 aC.[3]

 
Bagua-name-earlier

El I Ching data del segle IX aC a la Xina.[4]  La nomenclatura binària que trobem en el I Ching fou utilitzada per interpretar la seva tècnica d'endevinació quaternària.[5]

Aquesta es basa en la dualitat taoista del yin i el yang.[6] Vuit trigrames (Bagua) i un conjunt de 64 hexagrames ("seixanta-quatre" gua),  que són anàlegs als binaris de tres bits i de sis bits els trobem ja en utilització durant la dinastia Zhou de l'antiga Xina.

L'erudit contemporani Shao Yong va reorganitzar els hexagrames en un format que s'assembla als nombres binaris actuals, tot i que no preveure la seva utilització matemàtica.[7]

L'Indi Pingala (Segle ll aC) desenvolupà un sistema binari per a descriure la prosòdia (mètrica poética).[8][9] Va usà nombres binaris en forma de síl·labes curtes i llargues (aquesta última de longitud igual a dues síl·labes curtes), el que és similar al codi Morse.[10][11] El clàssic Hindú de Pingala titulat Chandaḥśāstra descriu la formació d'una matriu mare per tal de donar un valor únic a cada mesurador. Les representacions binàries en el sistema de Pingala augmenten cap a la dreta, i no en direcció cap a l'esquerra com en els nombres binaris de la notació posicional actual d'occident.[10][12]

Altres cultures

modifica

Els habitant de l'illa de Mangareva a la Polinèsia Francesa ja usaven un sistema híbrid binari-decimal abans del 1450.[13] També, a l'Àfrica i la Xina, s'usaven els tambors de fenedura per representar sons binaris i poder codificar així missatges. Altres conjunts de combinacions binàries similars a la I Ching foren usades en els sistemes d'endevinació africans tradicionals com la Ifá, així com en la geomància occidental de l'edat mitjana. Els sistemes de base 2 utilitzats en la geomància s'han aplicat al llarg de tot el territori de l'Àfrica subsahariana.

Predecessors occidentals a Leibniz

modifica

Al 1605 Francis Bacon va parlar d'un sistema pel qual les lletres es podien transformar en seqüències de dígits binaris, les quals podien ser codificades com a variacions amb prou feines visibles en la font de qualsevol text arbitrari.[14]

Leibniz i el I Ching

modifica
 
Gottfried Leibniz

L'article que elaborà Leibniz al 1703, té com a títol " Explanation of Binary Arithmetic, which uses only the characters 1 and 0, with some remarks on its usefulness, and on the light it throws on the ancient Chinese figures of Fu Xi ". El sistema de Leibniz utilitza 0 i 1, de la mateixa manera que el sistema de numeració binari actual. Un exemple de sistema de numeració binària de Leibniz és la següent:[15]

  • 0 0 0 1 valor numèric 20
  • 0 0 1 0 valor numèric 2¹
  • 0 1 0 0 valor numèric 2²
  • 1 0 0 0 valor numèric 23

Leibniz va interpretar els hexagrames del I Ching com a evidència de càlcul binari.[16] Leibniz era conscient del I Ching, i va observar amb fascinació com els seus hexagrames corresponen als nombres binaris del 0 fins al 111111 i va arribar a la conclusió que aquesta assignació era evidència d'un dels èxits més importants de la Xina de la branca de les matemàtiques que ell més admirava.[17] Leibniz es va introduir primer en el I Ching a través d'un contacte seu, el jesuïta francès Joachim Bouvet, que va visitar la Xina al 1685 com a missioner. Leibniz va veure els hexagrames del I Ching com una afirmació de la universalitat metafísica de les seves pròpies creences religioses com a cristià. Els nombres binaris foren una peça clau en la teologia de Leibniz. Es creu que els nombres binaris eren simbòlics a la idea cristiana de la creatio ex nihilo (creació del no res).[18]

"Un concepte que no és fàcil per impartir als pagans, és la creació ex nihilo a través de l'omnipotència de Déu. Ara es pot dir que res en el món es pot presentar i demostrar de millor manera que el poder de l'origen dels nombres, tal com es presenta aquí a través de la presentació senzilla i sense ornaments d'Un i Zero o Res"

- Carta de Leibniz per al Duc de Brunswick adjunta amb els hexagrames del I Ching

Desenvolupaments posteriors

modifica

L'any 1854, el matemàtic britànic George Boole publicà un article de referència que detallava un sistema algebraic de la lógica, que més tard seria conegut com l'àlgebra de Boole. El seu càlcul lògic consistia en convertir-se en un paper decisiu en el disseny de circuits electrònics digitals.[19]

Al 1937, Claude Shannon va elaborar la seva tesi doctoral al Massachusetts Institute of Technology (MIT) aquesta, implementava l'àlgebra de Boole i l'aritmètica binària però utilitzava relés electrònics i interruptors per primer cop en la història. Fou titulada com A Symbolic Analysis of Relay and Switching Circuits.[20]

 
George Boole

El novembre de 1937, George Stibitz, que llavors treballava als Laboratoris Bell, va crear un ordinador basat en relés anomenat el «Model K», que va calcular en usar la suma binària. Bell Laboratoris van autoritzar un programa d'investigació complet a la fi de l'any 1938 amb Stibitz al timó. El Complex Number Calculator, acabat un 8 de gener del 1940, fou capaç de calcular nombres complexos. En una demostració a la conferència de la Societat Americana de Matemàtiques en el Dartmouth College durant l'11 de setembre de 1940, Stibitz va ser capaç d'enviar ordres remotes de la calculadora de nombres complexos a través de línies telefòniques per un teletip. Va ser la primera màquina de computació que va ser usada de forma remota a través d'una línia telefònica. Alguns dels participants de la conferència que van ser testimonis de la demostració foren John von Neumann, John Mauchly i Norbert Wiener, que acabaren escrivint sobre Stibitz a les seves respectives memòries.[21][22][23]

L'ordinador Z1, que va ser dissenyat i construït per Konrad Zuse entre 1935 i 1938, utilitza la lògica booleana i nombres binaris de punt flotant.[24]

Operacions amb binaris

modifica

Binaris a decimals

modifica

Donat un nombre N, binari, per a expressar-lo en decimal, s'ha d'escriure cada xifra que el compon (bit), multiplicada per la base del sistema (base = 2), elevada a la posició que ocupa.

Exemple: 1101₂ = 1 * 23 + 1 * 2² + 0 * 2¹ + 1 * 20 = 1310

Decimals a Binaris

modifica

Donat un nombre decimal, per a expressar-lo en binari, s'ha de dividir entre la potència de dos més pròxima per baix.

Exemple:

2510 =11001₂
25 : 24 = 25 : 16 = 1 residu 9
9 : 23 = 9 : 8 = 1 residu 1
1 : 2² = 1 : 4 = 0 residu 1
1 : 2¹ = 1 : 2 = 0 residu 1
en sobra 1

Suma de nombres binaris

modifica

Recordem les següents sumes bàsiques:

0+0= 0 
0+1= 1 
1+1=10

Així, si volem sumar 100110101 més 11010101, tenim:

 100110101 
 11010101 
 ---------- 
 1000001010

Operem com en decimal: comencem a sumar des de la dreta, en el nostre exemple, 1+1=10, aleshores escrivim 0 i "en portem" 1. Es suma aquest 1 a la següent columna: 1+0+0=1, i seguim fins a acabar totes les columnes (exactament com en el càlcul decimal).

Multiplicació

modifica

Per multiplicar dos nombres en representació binària ho farem de forma similar a com ho fem en representació decimal, tenint en compte que només hi ha dos dígits i que els seus productes són com segueixen:

0×0=0 
0×1=0 
1×0=0 
1×1=1 

D'acord amb això, per multiplicar dos nombres A i B considerem productes parcials: per cada dígit de B prenem el seu producte amb A i l'escrivim en una nova línia desplaçat cap a l'esquerra de manera que el darrer dígit (el més a la dreta) coincideixi amb aquell que estam considerant de B. La suma de tots aquests productes parcials dona el resultat final.

Per exemple, per multiplicar els nombres binaris 1100 i 1101 ho farem com segueix. En aquesta multiplicació anomenam A al primer nombre (1100, que correspon a 12 en decimal) i B al segon (1101, que correspon a 13 en decimal):

1 1 0 0 (A)
× 1 1 0 1 (B)
---------
1 1 0 0 ← Correspon a l'1 en el nombre B
+ 0 0 0 0 ← Correspon al 0 en el nombre B
+ 1 1 0 0 
+ 1 1 0 0 
-----------------
= 1 0 0 1 1 1 0 0

Això és, 1*27+1*24+1*23+1*2² = 128+16+8+4=156.

Vegeu també l'Algorisme de multiplicació de Booth.

Divisió

modifica

La divisió en binari és similar a la decimal, l'única diferència és que a l'hora de fer les restes, dins de la divisió, aquestes han de ser realitzades en binari. Per exemple, dividirem 100010010 (274) entre 1101 (13):

100010010 |1101
———————
- 0000 010101
———————
10001
- 1101
———————
01000
- 0000
———————
10000
- 1101
———————
00111
- 0000
———————
01110
- 1101
———————
00001

Codis binaris

modifica

Binari Natural

modifica

S'expressa un valor emprant tants bits com sigui necessaris de dreta a esquerra. És a dir, per representar el nombre decimal 30 empraríem el 11110, on per a convertir-ho a decimal seria 24·1 + 23·1 + 2²·1 + 2¹·1 + 20·0 = 16 + 8 + 4 + 2 = 30.

Binari BCD Natural

modifica

Amb aquest codi expressem cada un dels dígits decimals en binari per separat. Per tant necessitem representar del 0 al 9, i per a fer-ho necessitem 4 bits, car 23 només ens deixa representar 8 valors, de 0 a 7. Així doncs el 10 seria el 0001 0000.

Complement a 2 (CA2)

modifica

Aquest codi és per a representar dígits amb signe, amb l'avantatge de què es guanya la representació d'un nombre més negatiu. Per a escriure'l la part positiva va precedida d'un 0 i té igual representació que en binari natural. En canvi els nombres negatius es representen fent l'invers del valor en positiu i sumant-hi un 1.

0 1 1 1 - 7
0 1 1 0 - 6
0 1 0 1 - 5
0 1 0 0 - 4
0 0 1 1 - 3
0 0 1 0 - 2
0 0 0 1 - 1
0 0 0 0 - 0
1 1 1 1 - -1
1 1 1 0 - -2
1 1 0 1 - -3
1 1 0 0 - -4
1 0 1 1 - -5
1 0 1 0 - -6
1 0 0 1 - -7
1 0 0 0 - -8

Mòdul i Signe

modifica

El bit de més pes representa el signe, 0 per a positius i 1 per a negatius, el seu valor és expressat en binari natural per la resta de bits.

Codi Gray

modifica

Aquest codi té la particularitat de ser adjacent, per això s'empra a les taules de veritat. Per a escriure'l es fa mirall de la part de dalt i posem un 0 a la part superior i un 1 a la part inferior, com a bit de més pes.

0 - 0
1 - 1

0 0 - 0
0 1 - 1
1 1 - 2
1 0 - 3

0 0 0 - 0
0 0 1 - 1
0 1 1 - 2
0 1 0 - 3
1 1 0 - 4
1 1 1 - 5
1 0 1 - 6
1 0 0 - 7

Referències

modifica
  1. Couturat, Louis. La Logique de Leibniz (en francès). París: Felix Alcan, 1901, p. 473-478. 
  2. «Numerical Notation: A Comparative History».
  3. Rudman, Peter Strom. How Mathematics Happened: The First 50,000 Years (en anglès). Prometheus Books, 2007. ISBN 9781615921768. 
  4. Hacker, Edward A.; Moore, Steve; Patsco, Lorraine. I Ching: An Annotated Bibliography (en anglès). Psychology Press, 2002. ISBN 9780415939690. 
  5. Teaching the I Ching. [[Special:BookSources/ISBN 0-19-976681-9.|ISBN ISBN 0-19-976681-9.]]. 
  6. Shectman, Jonathan. Groundbreaking Scientific Experiments, Inventions, and Discoveries of the 18th Century (en anglès). Greenwood Press, 2003. ISBN 9780313320156. 
  7. Li, Wenzhao; Poser, Hans. Das Neueste über China: G.W. Leibnizens Novissima Sinica von 1697 : Internationales Symposium, Berlin 4. bis 7. Oktober 1997 (en alemany). Franz Steiner Verlag, 2000. ISBN 9783515074483. 
  8. Microcontroller programming: the microchip PIC. [[Special:BookSources/ISBN 0-8493-7189-9.|ISBN ISBN 0-8493-7189-9.]]. 
  9. Heritage of Thales. ISBN ISBN 0-387-94544-X. 
  10. 10,0 10,1 «Binary numbers». home.ica.net. [Consulta: 19 novembre 2016].
  11. «Math for Poets and Drummers». Arxivat de l'original el 2019-01-22.
  12. Stakhov, Alexey. The Mathematics of Harmony: From Euclid to Contemporary Mathematics and Computer Science (en anglès). World Scientific, 2009. ISBN 9789812775832. 
  13. Bender, Andrea; Beller, Sieghard «Mangarevan invention of binary steps for easier calculation» (en anglès). Proceedings of the National Academy of Sciences, 111, 4, 28-01-2014, pàg. 1322–1327. DOI: 10.1073/pnas.1309160110. ISSN: 0027-8424. PMC: 3910603. PMID: 24344278.
  14. «Advancement of Learning (1640): Book 6, Chapter 1; excerpts». home.hiwaay.net. [Consulta: 19 novembre 2016].
  15. Explication de l'Arithmétique Binaire, Die Mathematische Schriften. 
  16. Dascal, Marcelo. Leibniz: What Kind of Rationalist? (en anglès). Springer Science & Business Media, 2008-08-09. ISBN 9781402086687. 
  17. Leibniz: A Biography. [[Special:BookSources/ISBN 0-85274-470-6|ISBN ISBN 0-85274-470-6]]. 
  18. Coudert, A. P.; Popkin, R. H.; Weiner, G. M.. Leibniz, Mysticism and Religion (en anglès). Springer Science & Business Media, 1998-10-31. ISBN 9780792352235. 
  19. Boole, George. An Investigation of the Laws of Thought On which are founded the mathematical theories of logic and probabilities (en anglès), 2005-02-16. 
  20. «A symbolic analysis of relay and switching circuits».
  21. «George Stibitz : Bio». stibitz.denison.edu. [Consulta: 19 novembre 2016].
  22. «"Pioneers – The people and ideas that made a difference – George Stibitz (1904–1995)"».
  23. «George Stibitz». ei.cs.vt.edu. [Consulta: 19 novembre 2016].
  24. «Konrad Zuse’s Legacy: The Architecture of the Z1 and Z3».

Bibliografia

modifica
  • Sanchez, Julio; Canton, Maria P. (2007), Microcontroller programming : the microchip PIC, Boca Raton, FL: CRC Press, p. 37, ISBN 0849371899

Vegeu també

modifica

Enllaços externs

modifica