¿Qué son los números binarios y por qué los usan las computadoras?
junio 21, 2020Los 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:
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 números binarios?
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).
¿Por qué solo base 2?
¿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.
0 comentarios