Sistema binario
Keywords: Sistema binario, 1956, Astronomía, Bit, Byte, Cero, Cifra, Complemento a dos, Criterios de divisibilidad
- En astronomía sistema estelar compuesto por dos estrellas. Ver Estrellas binarias
Sistema de numeración en el que todas las cantidades se representan utilizando como base el número dos, con lo que disponemos de las cifras: cero y uno ('0' y '1').
Los ordenadores trabajan internamente con dos niveles de voltaje, por lo que su sistema de numeración natural es el sistema binario (encendido '1', apagado '0').
| Tabla de contenidos |
Operaciones con binarios
Binarios a decimales
Dado un número N, binario, para expresarlo en decimal, se debe escribir cada numero que lo compone (bit), multiplicado por la base del sistema (base = 2), elevado a la posición que ocupa. Ejemplo:
10012 = 910<=>1 × 23 + 0 × 22 + 0 × 21 + 1 × 20
Bit: Acrónimo de Binary Digit (dígito binario).
Un bit es la unidad mínima de información empleada en informática y ofimática. Representa un uno o un cero (abierto o cerrado, blanco o negro, cualquier sistema de codificación sirve).
A través de secuencias de bits, se puede codificar cualquier valor discreto como, por ejemplo: numeros, palabras y imagenes.
Cuatro bits forman un dígito hexadecimal.
Ocho bits conforman un octeto.
En inglés es común llamar byte al octeto, si bien originalmente "byte" se refería a cualquier secuencia de una cantidad fija de bits. El nombre, introducido en 1956 en la compañía IBM, es una desfiguración de la palabra bite (en inglés, literalmente, "mordisco"). Jocosamente, el byte de cuatro dígitos es llamado nibble ("bocadito" en inglés).
Ver también
Tipos de datos cubit | Byte | Kilobyte | Megabyte | Gigabyte | Terabyte | Petabyte | Exabyte | Zettabyte | Yottabyte
Decimales a binarios
Se divide el número decimal entre 2 cuyo resultado entero se vuelve a dividir entre 2 y así sucesivamente. Una vez llegados al 1 indivisible se cuentan el último cociente, es decir el uno final (todo número binario excepto el 0 empieza por uno), seguido de los residuos de las divisiones subsiguientes. Del más reciente hasta el primero que resultó. Este número será el binario que buscamos. A continuación se puede ver un ejemplo con el número decimal 100 pasado a binario.
100 |_2
0 50 |_2
0 25 |_2 --------> 100 => 1100100
1 12 |_2
0 6 |_2
0 3 |_2
1 1
Suma de números binarios
Recordamos las siguientes sumas básicas:
- 0+0=0
- 0+1=1
- 1+1=10
Así, si queremos sumar 100110101 más 11010101, tenemos:
100110101
11010101
-----------
1000001010
Operamos como en decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1+1=10, entonces escribimos 0 y "llevamos" 1 (Esto es lo que se llama el arrastre, carry en inglés). Se suma este 1 a la siguiente columna: 1+0+0=1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).
Resta de números binarios
El algoritmo de la resta, en binario, es el mismo que en el sistema decimal. Pero conviene repasar la operación de restar en decimal para comprender la operación binaria, que es más sencilla. Los términos que intervienen en la resta se llaman minuendo, sustraendo y diferencia.
Las restas básicas 0-0, 1-0 y 1-1 son evidentes:
- 0 – 0 = 0
- 1 – 0 = 1
- 1 – 1 = 0
La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posición siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a decir en decimal, 2 – 1 = 1 . Esa unidad prestada debe devolverse, sumándola, a la posición siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 Restamos 217 - 171 = 46
10001 11011001
-01010 -10101011
------ ---------
00111 00101110
A pesar de lo sencillo que es el procedimiento, es facil confundirse. Tenemos interiorizado el sistema decimal y hemos aprendido a restar mecánicamente, 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 números largos en grupos. En el siguiente ejemplo, vemos cómo se divide una resta larga en tres restas cortas:
- Restamos
100110011101 1001 1001 1101
-010101110010 -0101 -0111 -0010
------------- = ----- ----- -----
010000101011 0100 0010 1011
- Utilizando el Complemento a dos. La resta de dos números 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 1011011
-0101110 C246 = 1010010 +1010010
-------- --------
0101101 10101101
En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el número resultante no puede ser más 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 11011011
-00010111 C223 = 11101001 +11101001
--------- --------
11000100 111000100
Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal
Producto de números binarios
El producto de números binarios es especialmente sencillo, ya que el 0 multiplicado por cualquier numero da 0, y el 1 es el elemento neutro del producto.
Por ejemplo, multipliquemos 10110 por 1001:
10110
1001
---------
10110
00000
00000
10110
---------
11000110
Búsqueda de números primos
En el sistema decimal, la búsqueda de números primos permite desechar inmediatamente como no-primo cualquier número mayor de 5 que termine en las cifras 0, 2, 4, 5, 6, u 8. Así mismo, existen multitud de criterios de divisibilidad para este sistema de numeración que simplifican las comprobaciones con los primeros números primos (los que dividen a la mayor parte de los números).
En el sistema binario, el único criterio directo es desechar todos los números mayores de 10 (2 en decimal) que terminen en 0, por ser múltiplos de él. Usando sólo este criterio es necesario comprobar el 50% de los números naturales (los impares), mientras que en el decimal sólo se recorrería el 40% al descartarse también los terminados de 5.
No obstante, en una búsqueda secuencial de números primos (en cualquier sistema de numeración) es posible descartar aproximadamente un 75% de los números naturales comprobando únicamente los números no divisibles por 2, 3, ó 5 (esto se consigue sumando al último número comprobado una cantidad, que sigue un patrón predeterminado), por lo que la falta de criterios de divisibilidad en el sistema binario es irrelevante.
Curiosamente, existe un algoritmo para determinar rápidamente si un número es divisible por otro en base dos, que hace más eficiente las búsquedas secuenciales de primos en esta base.
