Sistema binari

De Viquipèdia
(S'ha redirigit des de: Codi binari)
Dreceres ràpides: navegació, cerca

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.

Els ordinadors treballen internament amb dos nivells de voltatge, pel que el seu sistema de numeració natural és el sistema binari (encès, apagat).

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).

Història del codi binari[modifica | modifica el codi]

El sistema de numeració binari actual fou ideat per Gottfried Leibniz al 1679, apareix en el seu article Explication de l'Arithmétique Binaire datat 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 I Ching

Egipte[modifica | modifica el codi]

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 A.C., i les seves dates completament ja desenvolupades en forma de jeroglífics a la IX dinastia d'Egipte, aproximadament datada del 1200 A.C.[1]

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 A.C.[2]

Xina[modifica | modifica el codi]

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

Aquesta es basa en la dualitat taoista del yin i el yang.[5] 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.[6]

Índia[modifica | modifica el codi]

L’Indi Pingala (Segle ll A.C.) desenvolupà un sistema binari per a descriure la prosòdia (mètrica poética).[7][8] 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.[9][10] 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.[9][11]

Altres cultures[modifica | modifica el codi]

Gottfried Leibniz

Els habitant de l'illa de Mangareva a la Polinèsia Francesa ja usaben un sistema híbrid binari-decimal abans del 1450.[12] 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 | modifica el codi]

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.[13]

Leibniz i el I Ching[modifica | modifica el codi]

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:[14]

  • 0 0 0 1   valor numèric 20
  • 0 0 1 0   valor numèric 21
  • 0 1 0 0   valor numèric 22
  • 1 0 0 0   valor numèric 23

Leibniz va interpretar els hexagrames del I Ching com a evidència de càlcul binari.[15] 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.[16] 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).[17]

"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 | modifica el codi]

A 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.[18]

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

George Boole

Al novembre de 1937, George Stibitz, que llavors treballava en els Laboratoris Bell, va crear un ordinador basat en relés anomenat el "Model K", que va calcular usant la suma binària. Bell Labs va autoritzar un programa d'investigació complet a finals de 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 varen ser testimonis de la demostració foren John von Neumann, John Mauchly i Norbert Wiener, que acabaren escrivint sobre Stibitz en les seves respectives memòries.[20][21][22]

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.[23]

Operacions amb binaris[modifica | modifica el codi]

Binaris a decimals[modifica | modifica el codi]

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: 11012 = 1 * 23 + 1 * 22 + 0 * 21 + 1 * 20 = 1310

Decimals a Binaris[modifica | modifica el codi]

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 =110012
25 : 24 = 25 : 16 = 1 residu 9
9 : 23 = 9 : 8 = 1 residu 1
1 : 22 = 1 : 4 = 0 residu 1
1 : 21 = 1 : 2 = 0 residu 1
en sobra 1

Suma de nombres binaris[modifica | modifica el codi]

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 | modifica el codi]

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 dóna 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*22 = 128+16+8+4=156.

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

Divisió[modifica | modifica el codi]

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 | modifica el codi]

Binari Natural[modifica | modifica el codi]

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 + 22·1 + 21·1 + 20·0 = 16 + 8 + 4 + 2 = 30.

Binari BCD Natural[modifica | modifica el codi]

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 | modifica el codi]

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 | modifica el codi]

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 | modifica el codi]

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

Vegeu també[modifica | modifica el codi]

Referències[modifica | modifica el codi]

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

Enllaços externs[modifica | modifica el codi]

A Wikimedia Commons hi ha contingut multimèdia relatiu a: Sistema binari Modifica l'enllaç a Wikidata