¿Qué son los números binarios y por qué los usan las computadoras?

Por EducaciónIT
- 17/12/2018
5 minutos de lectura

Las computadoras no entienden las palabras o los números como lo hacen los humanos. El software moderno le permite al usuario final ignorar esto, pero en los niveles más bajos de tu computadora, todo se representa mediante una señal eléctrica binaria que se registra en uno de dos estados: encendido o apagado. Para dar sentido a los datos complicados, tu computadora debe codificarlos en formato binario.

Los binarios son un sistema de número base 2. La Base 2 significa que solo hay dos dígitos, 1 y 0, que corresponden a los estados de encendido y apagado que tu computadora puede entender. Probablemente estés familiarizado con la base 10: el sistema decimal. El decimal usa diez dígitos que van del 0 al 9 y luego se usa para formar números de dos dígitos, y cada dígito vale diez veces más que el último (1, 10, 100, etc.). Los binarios son similares, con cada dígito vale dos veces más que el anterior.

En binarios, el primer dígito vale 1 en decimal. El segundo dígito vale 2, el tercero vale 4, el cuarto vale 8, y así sucesivamente, doblando su valor cada vez. Sumar todo esto te da el número en decimal. Así que:

1111 (en binario) = 8 + 4 + 2 + 1 = 15 (en decimal)

Contabilizando 0, esto nos da 16 valores posibles para cuatro bits binarios. Mover a 8 bits, y tiene 256 valores posibles. Esto ocupa mucho más espacio para representar, ya que cuatro dígitos en decimales nos dan 10,000 valores posibles. Puede parecer que estamos pasando por todo este problema de reinventar nuestro sistema de conteo para hacerlo más complicado, pero las computadoras entienden el binario mucho mejor de lo que entienden el decimal. Claro, el binario ocupa más espacio, pero el hardware nos detiene. Y para algunas cosas, como el procesamiento lógico, el binario es mejor que el decimal.

Hay otro sistema base que también se usa en programación: hexadecimal. Aunque las computadoras no se ejecutan en hexadecimal, los programadores lo usan para representar direcciones binarias en un formato legible para las personas al escribir el código. Esto se debe a que dos dígitos de hexadecimal pueden representar un byte completo, ocho dígitos en binario. El hexadecimal usa 0-9 como decimal, y también las letras A a F para representar los seis dígitos adicionales.

Entonces, ¿por qué las computadoras usan binarios?

La respuesta breve: hardware y las leyes de la física. Cada número en tu computadora es una señal eléctrica, y en los primeros días de la informática, las señales eléctricas eran mucho más difíciles de medir y controlar con mucha precisión. Tenía más sentido distinguir solo entre un estado “encendido” (representado por carga negativa) y un estado “apagado”, representado por una carga positiva. Para aquellos que no están seguros de por qué el “apagado” está representado por una carga positiva, es porque los electrones tienen una carga negativa: más electrones significan más corriente con una carga negativa.

Entonces, las primeras computadoras del tamaño de las habitaciones usaron binarios para construir sus sistemas, y aunque usaron hardware mucho más antiguo y voluminoso, hemos mantenido los mismos principios fundamentales. Las computadoras modernas usan lo que se conoce como un transistor para realizar cálculos con binario.

Esto forma un interruptor binario. Los fabricantes pueden construir estos transistores increíblemente pequeños, hasta 5 nanómetros, o aproximadamente del tamaño de dos cadenas de ADN. Así es como funcionan los CPU modernos, e incluso pueden sufrir problemas para diferenciar entre estados de encendido y apagado (aunque esto se debe principalmente a su tamaño molecular irreal, estando sujetos a la rareza de la mecánica cuántica).

Pero, ¿por qué solo base 2?

Entonces puedes estar pensando, “¿por qué solo 0 y 1? ¿No podría simplemente agregar otro dígito?”. Si bien parte de esto se debe a la tradición de cómo se construyen las computadoras, agregar otro dígito significaría que tendríamos que distinguir entre diferentes niveles de corriente, no solo “apagado” y “encendido”. Pero también dice “un poco” y “mucho”.

El problema aquí es que, si deseas usar múltiples niveles de voltaje, necesitarás una forma de realizar cálculos fácilmente con ellos, y el hardware para eso no es viable como reemplazo de la computación binaria. De hecho, existe. Se llama una computadora ternaria, y ha existido desde la década de 1950, pero eso es más o menos donde el desarrollo se detuvo. La lógica ternaria es mucho más eficiente que el binario, pero hasta el momento, nadie tiene un reemplazo eficaz para el transistor binario, o al menos, no se ha trabajado en su desarrollo en las mismas escalas minúsculas como el binario.

La razón por la que no podemos usar la lógica ternaria se reduce a la forma en que los transistores se apilan en una computadora, algo llamado “puertas”, y cómo se usan para realizar operaciones matemáticas. Gates toma dos entradas, realiza una operación en ellas y devuelve una salida.

Esto nos lleva a la respuesta larga: la matemática binaria es mucho más fácil para una computadora que otra cosa. La lógica booleana se correlaciona fácilmente con sistemas binarios, con True y False siendo representados por on y off. Las puertas de tu computadora operan en lógica booleana: toman dos entradas y realizan una operación en ellas, como Y, O, XOR, y así sucesivamente. Dos entradas son fáciles de administrar. Si tuvieras que graficar las respuestas para cada entrada posible, tendrías lo que se conoce como una tabla de verdad:

Una tabla de verdad binaria que opera en lógica booleana tendrá cuatro salidas posibles para cada operación fundamental. Pero debido a que las puertas ternarias toman tres entradas, una tabla de verdad ternaria tendría 9 o más. Mientras que un sistema binario tiene 16 operadores posibles (2 ^ 2 ^ 2), un sistema ternario tendría 19,683 (3 ^ 3 ^ 3). El escalamiento se convierte en un problema porque, aunque ternario es más eficiente, también es exponencialmente más complejo.

Fuente: 1000tipsinformáticos.


¿Estás pensando en desarrollarte en el mundo de la programación? En EducaciónIT tenemos una amplia variedad de cursos, mediante los cuales podrás convertirte en un programador profesional con la capacitación más completa y actualizada del mundo IT, junto con los mejores profesionales del sector.

Categoría
Artículo escrito por: EducaciónIT

5 comments on “¿Qué son los números binarios y por qué los usan las computadoras?”

  1. La Base 2 significa que solo hay dos dígitos, 1 y 0, que corresponden a los estados de encendido y apagado que tu computadora puede entender? Eso es cierto ?

Deja un comentario