Professional Documents
Culture Documents
Tabla de contenidos
[ocultar] 1 Historia del sistema binario 2 Representacin 3 Operaciones con nmeros binarios o 3.1 Suma de nmeros Binarios o 3.2 Resta de nmeros binarios o 3.3 Producto de nmeros binarios o 3.4 Divisin de nmeros binarios 4 Conversin entre binario y decimal, binario y octal, y binario y hexadecimal o 4.1 Binario a decimal o 4.2 Decimal a binario o 4.3 Binario a octal o 4.4 Octal a binario o 4.5 Binario a hexadecimal o 4.6 Hexadecimal a binario 5 Tabla de conversin entre decimal, binario, hexadecimal, octal, BCD, Exceso 3 y Gray o Reflejado
Pgina del artculo Explication de l'Arithmtique Binaire de Leibniz El antiguo matemtico hind Pingala present la primera descripcin que se conoce de un sistema de numeracin binario en el siglo tercero antes de nuestra era, lo cual coincidi con su descubrimiento del concepto del nmero cero. Una serie completa de 8 trigramas y 64 hexagramas, anlogos a 3 bit y nmeros binarios de 6 bit, eran conocidos en la antigua china en el texto clsico del I Ching. Series similares de combinaciones binarias tambin han sido utilizados en sistemas de adivinacin tradicionales africanos como el If, as como en la geomancia medieval occidental. Un arreglo binario ordenado de los hexagramas del I Ching, representando la secuencia decimal de 0 a 63, y un mtodo para generar el mismo, fue desarrollado por el erudito y filsofo Chino Shao Yong en el siglo XI. Sin embargo, no hay ninguna prueba de que Shao entendi el cmputo binario. En 1605 Francis Bacon habl de un sistema por el cual las letras del alfabeto podran reducirse a secuencias de dgitos binarios, la cuales podran ser codificados como variaciones apenas visibles en la fuente de cualquier texto arbitrario. En gran medida para la teora general de codificacin de binario, l aadi que este mtodo podra ser usado con cualquier objeto en absoluto: "siempre que aquellos objetos sean capaces de solo una diferencia doble; como por campanas, por trompetas, por luces y antorchas, segn el informe de Mosquetes, y cualquier instrumento de naturaleza parecida." (Ver el cdigo de Bacon). El sistema binario moderno fue documentado en su totalidad por Leibniz, en el siglo diecisiete, en su artculo "Explication de l'Arithmtique Binaire". En l se mencionan los smbolos binarios usados por matemticos chinos. Leibniz us el 0 y el 1, al igual que el sistema de numeracin binario actual. En 1854, el matemtico britnico George Boole, public un artculo que marc un antes y un despus, detallando un sistema de lgica que terminara denominndose lgebra
de Boole. Dicho sistema jugara un papel fundamental en el desarrollo del sistema binario actual, particularmente en el desarrollo de circuitos electrnicos. En 1937, Claude Shannon realiz su tesis doctoral en el MIT, en la cual implementaba el lgebra de Boole y aritmtica binaria utilizando rels y conmutadores por primera vez en la historia. Titulada Un Anlisis Simblico de Circuitos Conmutadores y Rels, la tesis de Shannon bsicamente fund el diseo prctico de circuitos digitales. En noviembre de 1937, George Stibitz, trabajando por aquel entonces en los Laboratorios Bell, construy un ordenador basado en rels - al cual apod "Modelo K" (porque lo construy en una cocina, en ingls "kitchen")- que utilizaba la suma binaria para realizar los clculos. Los Laboratorios Bell autorizaron un completo programa de investigacin a finales de 1938, con Stibitz al mando. El 8 de enero de 1940 terminaron el diseo de una Calculadora de Nmeros Complejos, la cual era capaz de realizar clculos con nmeros complejos. En una demostracin en la conferencia de la Sociedad Americana de Matemticas, el 11 de septiembre de 1940, Stibitz logr enviar comandos de manera remota a la Calculadora de Nmeros Complejos a travs de la lnea telefnica mediante un teletipo. Fue la primera mquina computadora utilizada de manera remota a travs de la lnea de telfono. Algunos participantes de la conferencia que presenciaron la demostracin fueron John Von Neumann, John Mauchly y Norbert Wiener, el cual escribi acerca de dicho suceso en sus diferentes tipos de memorias en la cual alcanzo diferentes logros.
Representacin [editar]
Un nmero binario puede ser representado por cualquier secuencia de bits (dgitos binarios), que a su vez pueden ser representados por cualquier mecanismo capaz de estar en dos estados mutuamente exclusivos. Las secuencias siguientes de smbolos podran ser interpretadas todas como el mismo valor binario numrico:
1 | x y 0 o n 1 | x y 0 o n 0 o n 1 | x y 1 | x y 0 o n 1 | x y 0 o n
El valor numrico representado en cada caso depende del valor asignado a cada smbolo. En un ordenador, los valores numricos pueden ser representados por dos voltajes diferentes y tambin se pueden usar polaridades magnticas sobre un disco magntico. Un "positivo", "s", o "sobre el estado" no es necesariamente el equivalente al valor numrico de uno; esto depende de la arquitectura usada. De acuerdo con la representacin acostumbrada de cifras que usan nmeros rabes, los nmeros binarios comnmente son escritos usando los smbolos 0 y 1. Cuando son escritos, los nmeros binarios son a menudo subindicados, prefijados o sufijados para indicar su base, o la raz. Las notaciones siguientes son equivalentes:
100101 binario (declaracin explcita de formato) 100101b (un sufijo que indica formato binario) 100101B (un sufijo que indica formato binario)
bin 100101 (un prefijo que indica formato binario) 1001012 (un subndice que indica base 2 (binaria) notacin) %100101 (un prefijo que indica formato binario) 0b100101 (un prefijo que indica formato binario, comn en lenguajes de programacin)
Operamos como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10, entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se llama acarreo o arrastre). A continuacin se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).
La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posicin siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a decir en decimal, 2 1 = 1. Esa unidad prestada debe devolverse, sumndola, a la posicin siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 (2=345) 10001 -01010 Restamos 217 - 171 = 46 (3=690) 11011001 -10101011
00111
00101110
A pesar de lo sencillo que es el procedimiento, es fcil confundirse. Tenemos interiorizado el sistema decimal y hemos aprendido a restar mecnicamente, sin detenernos a pensar en el significado del arrastre. Para simplificar las restas y reducir la posibilidad de cometer errores hay varias soluciones:
Dividir los nmeros largos en grupos. En el siguiente ejemplo, vemos cmo se divide una resta larga en tres restas cortas:
100110011101 -010101110010 010000101011 1001 -0101 0100 1001 -0111 0010 1101 -0010 1011
Utilizando el complemento a dos. La resta de dos nmeros binarios puede obtenerse sumando al minuendo el complemento a dos del sustraendo. Veamos algunos ejemplos. Hagamos la siguiente resta, 91 - 46 = 45, en binario:
1011011 -0101110 0101101 C2 de 46 = 1010010 1011011 +1010010 10101101
En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el nmero resultante no puede ser ms largo que el minuendo, el bit sobrante se desprecia. Un ltimo ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el complemento a dos:
11011011 -00010111 11000100 C2 de 23 = 11101001 11011011 +11101001 111000100
Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal.
Utilizando el complemento a 1. La resta de dos nmeros binarios puede obtenerse sumando al minuendo el complemento a uno del sustraendo y a su vez sumarle el bit de overflow (bit que se desborda).
En sistemas electrnicos, donde se suelen utilizar nmeros mayores, no se utiliza este mtodo sino otro llamado algoritmo de Booth.
1*(2) elevado a (0)=1 0*(2) elevado a (1)=0 1*(2) elevado a (2)=4 0*(2) elevado a (3)=0 1*(2) elevado a (4)=16 1*(2) elevado a (5)=32 La suma es: 53 10010111 (binario) = 151 1*(2) elevado a (0)=1 1*(2) elevado a (1)=2 1*(2) elevado a (2)=4 0*(2) elevado a (3)=0 1*(2) elevado a (4)=16 0*(2) elevado a (5)=0 0*(2) elevado a (6)=0 1*(2) elevado a (7)=128 La suma es: 151 110111 (binario) = 55 1*(2) elevado a 1*(2) elevado a 1*(2) elevado a 0*(2) elevado a 1*(2) elevado a 1*(2) elevado a La suma es: 55 (0)=1 (1)=2 (2)=4 (3)=0 (4)=16 (5)=32
(decimal). Proceso:
(decimal). Proceso:
1100100
Otra forma de conversin consiste en un mtodo parecido a la factorizacin en nmeros primos. Es relativamente fcil dividir cualquier nmero entre 2. Este mtodo consiste tambin en divisiones sucesivas. Dependiendo de si el nmero es par o impar, colocaremos un cero o un uno en la columna de la derecha. Si es impar, le restaremos uno y seguiremos dividiendo por dos, hasta llegar a 1. Despus slo nos queda tomar el ltimo resultado de la columna izquierda (que siempre ser 1) y todos los de la columna
de la derecha y ordenar los dgitos de abajo a arriba. Y luego se hara un cuadro con las potencias con el resultado. Ejemplo:
100|0 50|0 25|1 12|0 6|0 3|1 1|1
--> 100
1100100
Y tambin tenemos otro mtodo el mtodo de distribucin en el que distribuimos el nmero decimal y podemos tener el resultado en binario, trabaja de la siguiente manera tenemos el nmero 151 lo que tenemos que hacer es distribuir este nmero buscando el nmero ms prximo; en este caso es 128 as que en la casilla donde hay capacidad de contener el nmero que tenemos lo vamos marcando. y en las casillas que no empleamos las marcaremos con un 0. Ejemplo:
2^0= 1|1 2^1= 2|1 2^2= 4|1 2^3= 8|0 2^4= 16|1 2^5= 32|0 2^6= 64|0 2^7= 128|1 2^8= 256|0
128+16+4+2+1=151
Y sucesivos.
Nmero en binario
111
Nmero en octal
Ejemplos:
111 = 7 110 = 6 Agrupe de izquierda a derecha: 67 11001111 (binario) = 317 (octal). Proceso: 111 = 7 001 = 1 11 entonces agregue un cero, con lo que se obtiene 011 = 3 Agrupe de izquierda a derecha: 317 1000011 (binario) = 103 (octal). Proceso: 011 = 3 000 = 0 1 entonces agregue 001 = 1 Agrupe de izquierda a derecha: 103.
247 (octal) = 010100111 (binario). El 2 en binario es 10, pero en binario de 3 bits es Oc(2) = B(010); el Oc(4) = B(100) y el Oc(7) = (111), luego el nmero en binario ser 010100111.
00 00
00 01
00 10
00 11
01 00
01 01
01 10
01 11
10 00
10 01
10 10
10 11
11 00
11 01
11 10
11 11
1010 = A 1011 = B 1 entonces agregue 0001 = 1 Agrupe de izquierda a derecha: 1BA 11011110101 (binario) = 6F5 (hexadecimal). 0101 = 5 1111 = F 110 entonces agregue 0110 = 6 Agrupe de izquierda a derercha: 6F5
Proceso:
Tabla de conversin entre decimal, binario, hexadecimal, octal, BCD, Exceso 3 y Gray o Reflejado [editar]
Decimal 0 1 2 3 4 5 6 Binario 0000 0001 0010 0011 0100 0101 0110 Hexadecimal 0 1 2 3 4 5 6 Octal 0 1 2 3 4 5 6 BCD 0000 0001 0010 0011 0100 0101 0110 Exceso 3 0011 0100 0101 0110 0111 1000 1001 Gray o Reflejado 0000 0001 0011 0010 0110 0111 0101
7 8 9 10 11 12 13 14 15
7 8 9 A B C D E F
7 10 11 12 13 14 15 16 17
0hex 1hex 2hex 3hex 4hex 5hex 6hex 7hex 8hex 9hex Ahex Bhex Chex Dhex Ehex Fhex
= = = = = = = = = = = = = = = =
0dec 1dec 2dec 3dec 4dec 5dec 6dec 7dec 8dec 9dec 10dec 11dec 12dec 13dec 14dec 15dec
= = = = = = = = = = = = = = = =
0oct 1oct 2oct 3oct 4oct 5oct 6oct 7oct 10oct 11oct 12oct 13oct 14oct 15oct 16oct 17oct
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1