El sistema binario
¿Alguna vez te preguntaste como puede ser que las computadoras hagan cosas tan fantásticas tan solo usando unos y ceros? Este es el sistema binario. Sin esto no habría computadoras, así de simple.
Básicamente, todos los aparatos digitales, desde el control de un refrigerador hasta la computadora más avanzada, usan este sistema para procesar los datos. ¿Quieres saber cómo esto es posible?
Qué vas a encontrar aquí: Qué son y cómo funcionan los números binarios? Caracteres alfanuméricos y sus equivalentes en binario. Historia del sistema binario. Aplicación práctica del sistema binario. Operaciones con números binarios. Conversiones.
- Qué son los números binarios?
- ¿Qué es el sistema binario?
- Cómo funciona el sistema binario
- Historia del sistema binario
- Aplicación práctica del sistema binario
- El sistema binario en la Era Digital
- Operaciones con números binarios
- Conversión de números binarios a decimal y decimal a binario
- Lenguaje Binario
Qué son los números binarios?
La mayoría sabe que el sistema más utilizado en el mundo para representar números es el sistema decimal. Este también es conocido como base 10, y utiliza diez dígitos, del 0 al 9, para todas las operaciones que se llevan a cabo con el sistema.
Para este sistema, cada espacio dentro de un número corresponde a una potencia de 10. Un poco más técnicamente se puede decir que el sistema de numeración decimal es un sistema de numeración de tipo posicional.
Es decir que las cantidades se simbolizan utilizando como base aritmética las potencias del número diez.
Sin embargo, el sistema de numeración decimal no es el único sistema de numeración que existe y que puedes implementar. En este sentido también tienes el llamado sistema binario, también conocido como Base-2, el cual utiliza solamente los dígitos 0 y 1.
En este tipo de numeración, cada número corresponde a una potencia de 2.
Si quieres conocer más sobre sistemas de numeración, como por ejemplo el sistema hexadecimal, en este enlace encontrarás excelente información.
Esta característica convierte al sistema binario en la mejor herramienta para su utilización en todo tipo de operaciones digitales.
Por este motivo es la base de todos los dispositivos tecnológicos que existen en la actualidad, o que por lo menos utilicen circuitos electrónicos digitales.
El sistema binario, al utilizar sólo dos dígitos, o dígitos binarios como se llaman en este caso, ofrece solo dos estados posibles, “0” ó “1”. En este caso, el estado “0” representa por ejemplo el estado “Apagado” y el estado “1” representa “Encendido”.
Claro está que no siempre representan estos estados, pueden ser otros.
En este sentido, sabes que las operaciones binarias se pueden llevar a cabo con un conjunto de reglas muy simples. Esto permite realizar infinidad de operaciones tan sólo usando unas pocas compuertas lógicas.
Por ejemplo, para multiplicar dos dígitos juntos, lo único que necesitaríamos saber es la siguiente regla:
- 0 x 0 = 0
- 0 x 1 = 0
- 1 x 0 = 0
- 1 x 1 = 1
Cabe destacar que el sistema de dos valores para representar números en binario. También se puede ver que corresponde a los dos valores de verdad que se utilizan en la lógica simbólica.
Ahora, considera las siguientes tablas de verdad utilizando el operador lógico “AND:”
- F AND F = F
- F AND T = F
- T AND F = F
- T AND T = T
Por ejemplo, si reemplazas “F” por “0” y “T” por “1”, se nota con claridad que el operador lógico “AND” es equivalente al signo de multiplicación en el sistema de aritmética binaria.
Por supuesto que también todas las otras operaciones matemáticas se pueden cambiar por operaciones lógicas.
Dado que los operadores lógicos son realmente sencillos de poder representar en el desarrollo de circuitos informáticos, es posible construir un dispositivo que sea capaz de poder llevar a cabo operaciones aritméticas.
Esta es la llamada “álgebra booleana”, desarrollada por el británico George Boole, como veremos más adelante.
¿Qué es el sistema binario?
De forma general, una definición de sistema binario podría ser “un sistema que utiliza sólo dos valores para representar sus cuantías”. Es un sistema de Base 2. Este es el sistema de numeración natural de las computadoras y dispositivos digitales.
Esos dos valores son el «0» y el «1». A partir de eso podemos concluir que para el “0” se ha desconectado, o no se tiene señal, y para el “1” se conectada o tiene señal.
El sistema que utilizas diariamente, es el sistema de Base 10, llamado también base decimal. Ese sistema utiliza los números 0, 1, 2, 3, 4, 5, 6, 7, 8, y 9.
En las computadoras estos ceros “0” y unos “1” son llamados dígitos binarios o solamente “bit”, la cual es una conjunción de dos palabras de la lengua inglesa: “binary digit”.
Podría considerarse que el bit es la menor unidad de información de las computadoras. De esta forma, es igual decir dígito “0” y dígito “1”, o, bit “0” y bit “1”.
Cómo funciona el sistema binario
Son los bits los que forman cualquier información, sin embargo, un bit solo no hace nada, es sólo una señal. Para que los bits puedan realmente formar una información, como por ejemplo la representación de textos, necesitan ser agrupados, reunidos. Esos grupos pueden ser de 8, 16, 32 o 64 bits.
8 bits
10100110
A pesar de parecer un sistema limitado, agrupando bits es posible hacer una infinidad de representaciones. Vamos a tomar como ejemplo un grupo de 8 bits donde es posible hacer las siguientes representaciones para los números decimales:
Caracteres alfanuméricos y sus equivalentes en binario
Números Decimales > Código Binario
- 0 > 00000000
- 1 > 00000001
- 2 > 00000010
- 3 > 00000011
- 4 > 00000100
- 5 > 00000101
- 6 > 00000110
- 7 > 00000111
- 8 > 00001000
- 9 > 00001001
- 10 > 00001010
- 11 > 00001011
- 12 > 00001100
- 13 > 00001101
- 14 > 00001110
Los números decimales están representados en grupos de ocho bits. Pero, como ocurre en el sistema decimal, todo lo que estuviera a la izquierda de los dígitos binarios no valen nada.
Por ejemplo: el decimal 14 es 1110 en binario, o 00001110 o 000000001110 o también 0000000000001110.
La computadora reúne grupos predefinidos de bits (8, 16, 32 o 64) para formar una información, o sea, un carácter. Un carácter es cualquier letra, número o símbolo.
10100110 transformado a 8 bits = un carácter cualquiera
¿Cuánto es 1 + 1?
Bien, todos deben responder «2».
Pero, no se especificó en qué base (decimal o binaria). Si es decimal el resultado es 2. Y si fuera en el sistema binario el resultado sería 10.
Historia del sistema binario
No cabe ninguna duda que el sistema binario de numeración es una herramienta indispensable para el desarrollo de la tecnología. Contrariamente a lo que muchos piensan, el sistema binario viene desarrollándose desde hace siglos.
Este sistema es usado en infinidad de aplicaciones, tanto de hardware como de software, y está presente en muchos más escenarios delos que seguro imaginas.
Como se ha mencionado, pocos saben que el sistema binario de numeración no es un invento moderno, y que tiene una rica historia que es muy interesante de conocer. Para conocerla, puedes seguir leyendo los próximos párrafos.
Una de las primeras descripciones que se conocen acerca de un sistema de numeración binario datan del siglo III DC, y son las mencionadas por el matemático hindú Pingala. También muy antiguos son las series de 8 trigramas y 64 hexagramas, análogos a 3 bit y los números binarios de 6 bit.
Estos últimos conocidos en la antigua China gracias a los textos clásicos contenidos en el I Ching.
Otros sistemas de combinaciones binarias antiguas provienen de Africa, en donde eran utilizadas para la adivinación en rituales tradicionales tales como el Ifá. También en occidente, de mano de la geomancia en los tiempos medievales.
Sin embargo, las primeras descripciones bien detalladas acerca del tema ocurren al principio del siglo XVII, precisamente en 1605. Ese año Francis Bacon hizo referencia a un sistema mediante el cual las letras de nuestro alfabeto podrían ser reducidas a secuencias de dígitos binarios.
Estos luego podían ser codificados como variaciones prácticamente invisibles en el contenido de cualquier texto.
A pesar de todas estas investigaciones, quien finalmente desarrolló y explicó el sistema binario moderno fue Gottfried Leibniz, filósofo y matemático alemán.
Estos conceptos los desarrolló en el siglo XVII en un artículo llamado “Explication de l'Arithmétique Binaire”, donde menciona los símbolos binarios usados por matemáticos chinos. Sin embargo utiliza los números “0” y “1”, del mismo modo en que se usa hoy en día en el sistema de numeración binario moderno. ¡Un verdadero pionero!
George Boole, el padre del álgebra booleana
Pero quien tendría la última palabra en este asunto del sistema de numeración binaria sería el ya mencionado George Boole. Boole publicó un artículo en 1854 que marcaría para siempre como se trataba este tema.
En este artículo Boole detallaba un sistema de lógica que con el paso del tiempo sería la base para el desarrollo de toda la tecnología con que se cuenta en la actualidad, el Algebra de Boole, también conocida como álgebra booleana.
Otros que también formaron parte de esta historia, y sin los cuales quizás la computación moderna no sería como la conoces fueron:
- Francis Bacon con su código binario para enviar secretos “Omnia per omnia”
- Joseph Marie Jacquard con su sistema de control de maquinaria basado en tarjetas perforadas
- Emile Baudot y su código de permutación cíclica
- Claude Shannon, recordado como el “Padre de la teoría de la información”.
Aplicación práctica del sistema binario
En nivel de electrónica, los bits 0 y 1 son representados a través de valores de tensión. Por ejemplo: el bit 0 puede ser representado por valores entre 0 y 0,3 volts.
Y el bit 1 puede ser representado por valores entre 2 y 5 volts. Esos números son sólo ejemplos, no estamos afirmando que son exactamente esos valores.
De esta forma, cualquier valor puede ser usado para representar los bits, dependiendo de la aplicación y de la tecnología empleada.
Con el avance de la tecnología de las computadoras, se empezó a usar tensiones cada vez más bajas, esto quiere decir que los dispositivos electrónicos empezaron a trabajar con tensiones menores.
En las computadoras son usados valores muy bajos, como los que se acaba de mencionar.
Por ejemplo, en los dispositivos ópticos como CD, DVD y BluRay, se almacena la información en forma de pequeños puntos denominados “Pits” y un espacio entre ellos denominado “Lands”. Estos son interpretados en el proceso de lectura como «0» y «1» (bits).
El sistema binario en la Era Digital
En tu entorno cotidiano es común oír frases del tipo era digital o sistemas digitales o también TV digital. Pero, ¿Qué es algo digital? Digital es todo aquello que puede ser transmitido y/o almacenado por medio de bits.
Un dispositivo digital es aquel que utiliza los bits para manipular cualquier tipo de información, es decir datos.
Operaciones con números binarios
Como con cualquier otro sistema numérico, con los números binarios también puedes llevar a cabo las diferencias operaciones matemáticas. Claro que para ello como mínimo debes conocer con exactitud qué son los números binarios, cómo funciona el sistema binario y que es el lenguaje binario.
El sistema binario en este punto es fundamental para poder resolver sumas, restas, multiplicaciones o divisiones binarias.
En este sentido conocer los cálculos binarios básicos es indispensable para el análisis y diseño de sistemas digitales, sobre todo si en algún momento piensas estudiar programación o alguna otra profesión relacionada con la informática.
Cabe destacar que las operaciones binarias que se pueden realizar con número binarios son exactamente las mismas que en el sistema decimal, es decir que existen suma, resta, multiplicación y división.
Suma de números Binarios
Las posibles combinaciones al sumar dos bits son las siguientes:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 10
Un ejemplo con más cifras sería el siguiente:
100110101
+
11010101
———————————
1000001010
En estos casos se opera de la misma manera que en el sistema decimal, es decir que se comienza a sumar de derecha, en el caso de nuestro ejemplo, “1 + 1 = 10”, para luego insertar “0” en la fila del resultado y se lleva “1”. Esta operación es conocida como “arrastre”.
Luego de ello, se suma el acarreo a la siguiente columna a la posición siguiente: “1 + 0 + 0 = 1”, y se continua hasta terminar todas la columnas, de la misma forma en que lo haríamos en el sistema decimal.
Resta de números binarios
El algoritmo utilizado en las restas en el sistema binario es igual al utilizado en el sistema decimal. Sin embargo en este caso siempre es conveniente observar el procedimiento de la operación de restar en decimal para comprender la operación binaria, que es más simple.
0 - 0 = 0
1 - 0 = 1
- - 1 = 0
0 - 1 = “*”
“*” En este caso se pide prestado al próximo.
La resta “0 – 1” se puede resolver del mismo modo en que se hace en el sistema decimal, es decir tomando una unidad prestada de la operación siguiente: “10 - 1 = 1” y llevándose 1, lo que equivale a la operación “2 - 1 = 1” en el sistema decimal.
Cabe decir que el número prestado deberá devolverse, sumándola, a la posición que le sigue.
Veamos algunos ejemplos:
Se resta 17 - 10 = 7 (2=345)
10001
-01010
——————
01111
Se resta 217 - 171 = 46 (3=690)
11011001
-10101011
—————————
00101110
Multiplicación de Números Binarios
El algoritmo del producto en binario es el mismo que el utilizado en las multiplicaciones con números decimales; aunque se lleva cabo con más sencillez, ya que al multiplicar “0”por cualquier número se obtiene como resultado “0”, siendo “1” es el elemento neutro del producto.
- 0 x 0 = 0
- 0 x 1 = 0
- 1 x 0 = 0
- 1 x 1 = 1
Como ejemplo práctico, vamos a llevar a cabo la siguiente multiplicación en el sistema binario.
10110
x 1001
———————
10110
00000
00000
10110
—————————
11000110
Si estás interesado en el desarrollo de sistemas electrónicos, entonces debes saber que este no es el tipo de operaciones que se llevan a cabo en este ámbito, sino que se usa el llamado “Algoritmo de Booth”.
División de números binarios
La división en el sistema binario se divide el número como en el sistema decimal, salvo que existe una diferencia: al momento de llevar a cabo las resta dentro de la división, estas deben ser realizadas en binario.
Por dar un ejemplo práctico de ello, vamos a dividir 100010010 (274) entre 1101 (13):
100010010 |1101
——————
- 0000 010101
———————
10001
- 1101
———————
01000
- 0000
———————
10000
- 1101
———————
00111
- 0000
———————
01110
- 1101
———————
00001
Conversión de números binarios a decimal y decimal a binario
Muchos tienen dudas importantes al respecto de la traducción de números decimales a binarios, o viceversa. SI este es el caso, a partir de este punto, encontrarás las diferentes maneras de llevar a cabo esta tarea sin problemas y de la manera más sencilla posible.
En este sentido, tienes disponibles dos opciones: buscar una calculadora de decimal a binario o de binario o decimal online, o llevar a cabo la conversión de estos números por tu cuenta, haciendo para ello los cálculos necesarios.
Si te sientes mejor con la primera opción, puedes acceder a este sitio.
Si vas por la segunda opción, a partir de este punto tendrás disponibles todas las operaciones necesarias para convertir un número decimal a binario o de binario a decimal.
Cabe destacar que también tienes disponible las operaciones en el orden inverso, es decir convertir hexadecimal a binario y de binario a hexadecimal.
Conversión de Binario a Decimal
En sistema decimal, las cifras que componen un número son las cantidades que están multiplicando a las distintas potencias de diez, por ejemplo 10, 100, 1000 ó 10000.
Por ejemplo:
- “745 = 7 · 100 + 4 · 10 + 5 · 1”, o de forma similar “745 = 7 · 102 + 4 · 101 + 5 · 100”
En el sistema de numeración binario, las cifras que componen el número multiplican a las potencias de dos, es decir 1, 2, 4, 8, 16, etc.
- “20=1”, “21=2”, “22=4”, “23=8”, “24=16”, “25=32”, “26=64”, etc.
Por ejemplo, para convertir al sistema binario un número decimal, debemos comenzar primero por la derecha y multiplicar cada dígito por las sucesivas potencias de 2, avanzando hacia la izquierda, como en el ejemplo siguiente:
- 101102 = 0 · 1 + 1 · 2 + 1 · 4 + 0 · 8 + 1 · 16 = 2 + 4 + 16 = 2210
- 1102 = 0 · 1 + 1 · 2 + 1 · 4 = 2 + 4 = 610
Conversión de Decimal a Binario
Para llevar a cabo la conversión de números decimales a números binarios, tienes que dividir el número decimal entre dos y anotar en una columna a la derecha el resto, “0” en el caso de si el resultado de la división es par y un 1 en el caso que sea impar.
Si quieres obtener un número cualquiera en binario cogeremos el último cociente, el cual siempre será “1”, y todos lo que haya quedado de las divisiones de abajo hacia arriba, en orden ascendente.
En el siguiente ejemplo se convertirá al sistema de numeración binario el número decimal “7910”:
- 79 1 (impar). Dividimos entre dos:
- 39 1 (impar). Dividimos entre dos:
- 19 1 (impar). Dividimos entre dos:
- 9 1 (impar). Dividimos entre dos:
- 4 0 (par). Dividimos entre dos:
- 2 0 (par). Dividimos entre dos:
- 1 1 (impar).
- Por tanto, 7910 = 10011112
Conversión de Binario a Hexadecimal
La conversión entre números hexadecimales y binarios se lleva a cabo básicamente expandiendo o contrayendo cada dígito hexadecimal a cuatro dígitos binarios.
Por ejemplo, para expresar en hexadecimal el número binario 1010011100112 sólo necesitarás tomar grupos de cuatro bits, comenzando por la derecha, y reemplazarlos por su equivalente hexadecimal:
- 10102 = A16
- 01112 = 716
- 00112 = 316
Esto entonces permite decir que el número binario 1010011100112 convertido a hexadecimal da como resultado “A7316”.
En el caso que los dígitos binarios no formen grupos completos de cuatro dígitos, deberás añadir ceros a la izquierda hasta completar el último grupo, como en el siguiente ejemplo:
- 1011102 = 001011102 = 2E16
Conversión de Hexadecimal a Binario
La conversión de números hexadecimales a binarios se lleva a cabo del mismo modo que la conversión de números binarios a hexadecimales, es decir reemplazando cada dígito hexadecimal por los cuatro bits binarios.
Para convertir a binario, por ejemplo, el número hexadecimal 1F616 hallarás las siguientes equivalencias:
- 116 = 00012
- F16 = 11112
- 616 = 01102
Esto entonces permite decir que el número binario 1F616 convertido a hexadecimal da como resultado “0001111101102”.
Lenguaje Binario
Como sabes, el sistema decimal es el modo en que los seres humanos hace siglos que han estado dejando su conocimientos en matemáticas, algebra, geometría y demás.
Sin embargo, en la actualidad no es el único sistema de numeración que existe, ya que también se puede hacer uso del llamado sistema binario, el cual sólo se usa en el ámbito del desarrollo de software y hardware, pero que tiene una gran relevancia para nuestra vida diaria.
Este sistema binario, como su nombre nos sugiere, hace uso de solo dos dígitos, específicamente “0” y “1”, los cuales indican básicamente la posibilidad de dos estados: “encendido” o “apagado”.
Lo mejor de este sistema, sin embargo, es que permite representar todos los números del sistema decimal. Por lo tanto se pueden llevar a cabo las diferentes operaciones matemáticas básicas, como puedes ver más arriba en este mismo artículo.
Así cómo puedes representar números con el sistema binario, también puedes representar el alfabeto. Para ello necesitarás de un esquema de codificación, es decir, un código que te permita implementar un sistema de equivalencias.
Esto te permitirá expresar una letra del abecedario mediante un número binario de forma sencilla. Para este propósito existen múltiples códigos estándar como el código ASCII y Unicode, que te posibilitan convertir texto en binario.
A pesar de su edad, el código ASCII todavía es muy utilizado, si bien se encuentra siendo reemplazado por otro estándar, el mencionado “Unicode”, el cual es parecido en ciertos aspectos a ASCII.
Sin embargo, ofrece otras ventajas como la cantidad de caracteres que es capaz de representar, más de 110.000, lo que permite que se incluyan caracteres de prácticamente todas las lenguas del mundo.
En informática, cada una de las teclas del teclado, tanto los números como las letras y los signos, equivalen a un número binario. Por cada letra, símbolo o control existe un número binario que le corresponde. Un ejemplo de ello sería el número binario “0100 0001”, el cual es la equivalencia a la letra “A”.
De esta forma, es bastante sencillo construir un lenguaje binario donde cada letra se representa por un número binario, formando de este modo el llamado código máquina, utilizado para para poder comunicarnos con los dispositivos y programarlos.