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.
Números Binarios
Los binarios es 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. Asi 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.
¿Quién
sabe? En el futuro, podríamos comenzar a ver que las computadoras
ternarias se convierten en algo común, ya que llevamos los límites del binario
a un nivel molecular. Por ahora, sin embargo, el mundo continuará
funcionando en binario.
¿Te
ha sido útil el post? Por favor compártelo en las rede sociales.
Fuente:
How to geek