Ceros y unos

Hector Santiago Salama Camacho

2,217 ppm.

Nuestra noción de modernidad se debe casi en su totalidad a la electricidad, pues ha sido el manejo de esta lo que ha hecho posible, elementos que van desde poder encender un foco activando un interruptor, hasta viajar en un coche que se maneja solo sin la necesidad de presionar nada.

 Y si bien podemos suponer que algo tienen que ver las computadoras en todo esto, ¿cómo es posible que las computadoras puedan hacer cosas así?, y ¿qué tiene que ver la electricidad con ello? La respuesta está en el uso del sistema binario, específicamente el código binario.

El sistema binario es un método de numeración que consta de únicamente dos dígitos: 0 y 1 (por ello su nombre), mientras que nosotros en el día a día y por regla general usamos el sistema decimal que emplea 10 dígitos diferentes: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9; a partir del número diez en este sistema se empiezan a combinar únicamente los símbolos antes mencionados, siendo para el caso del número diez la combinación de un 1 y un 0, es decir que no tiene un símbolo propio.

La razón del porqué es el sistema binario y no el sistema decimal, el lenguaje de las computadoras, se debe a la necesidad de simplificar tanto como sea posible esa comunicación.

 Antes que nada, dicha comunicación comienza con la electricidad, pues esta no solo ingresa en el sistema electrónico para permitirle funcionar, sino que al decir que el sistema está en “funcionamiento”, esto significa que esa energía está viajando en ondas electromagnéticas digitales (las cuales no son más que subidas y bajadas) a través de los componentes y, por lo tanto, se le puede asignar un valor cuando la onda sube y cuando la onda baja. El valor de las subidas será 1 (cierto) y el valor de las bajadas será 0 (falso). Es así que el sistema binario responde a la necesidad de ser la expresión matemática mínima que representa los únicos dos estados que puede haber en una onda, pero al mismo tiempo es suficiente para permitir el envío de datos.

Otra forma de entenderlo es imaginar que la electricidad es agua y si el agua no fluye se tendría un valor 0 (apagado), mientras que si el agua fluye se tendría un valor 1 (encendido). Siendo la combinación de estos ceros y unos lo que constituye un dato que el procesador puede comenzar a interpretar.

 De manera aún más simple, esto quiere decir que los ceros y unos por sí mismos son apenas las vocales y consonantes, aún no forman palabras ni mucho menos instrucciones. Para ello se requiere de dos elementos indispensables: la codificación (de símbolos, sonidos, colores, etc.); Y las puertas lógicas, es decir, filtros para determinar el flujo de la información (en pocas palabras, es el armado de las tuberías, siguiendo el último ejemplo), pero no se profundizará en estas últimas.

Para poder construir un mensaje es necesario considerar la estandarización que hizo IBM en la década de los 60s, la cual consiste en agrupar los bites de 8 en 8 y considerar que cada grupo de 8 bites equivalen a 1 byte. Esto lo hicieron con la intención de controlar el costo de los procesadores (también conocidos como Central Processing Unit o CPU por sus siglas). Por lo tanto, cuando un CPU recibe múltiples mensajes, para saber en dónde empieza y termina cada uno realizará entonces estas separaciones cada 8 bites y es, el conjunto de esos 8 bites (1 byte), suficiente para interpretar n variables.

La pregunta natural y, quizá, la más importante sería entonces ¿cómo se traducen las imágenes, canciones y textos en código binario?

La respuesta se encuentra en los sistemas de codificación. Un sistema de codificación no es más que un traductor entre lo que se pretende interpretar y su valor en el código binario. Hasta el momento, las computadoras son capaces de interpretar todo aquello que sus dispositivos de salida y entrada le permitan; entendiéndose como dispositivos de entrada aquellos que mandan información al CPU (tales como teclados y ratones) y dispositivos de salida, aquellos que interpretarán la información que mande el CPU (como monitores y bocinas) apoyándose sobre todo en otro tipo de CPUs como las tarjetas de video (Graphics Processing Unit o GPU por sus siglas) y tarjetas de sonido, que como sus nombres lo indican, se especializan en ese tipo de información.

 El código ASCII es el que asigna un número a cada símbolo para que el CPU convierta ese número en un valor binario y así saber qué se trata de texto. El símbolo “@” por ejemplo, tiene asignado el número 64 en el código ASCII, lo cual en código binario sería igual a 1000000.

EL código RGB (Red, Green, Blue por sus siglas en inglés) es lo que podemos ver al acercarnos lo más posible a un pixel. Cada píxel tendrá 3 colores (rojo, verde y azul) los cuales van a variar en sus tonalidades según su valor numérico en Red, Green y Blue respectivamente. Es decir que un pixel azul turquesa en código RGB sería 93 193 185, lo que traducido a código binario se vería como 1011101 11000001 10111001, en ese orden.

 Por último, en el caso del audio y video es ligeramente diferente, ya que hay un software en cada computadora que se encarga de codificar y decodificar los distintos formatos de audio y vídeo (MP3, MP4, MPEG, etc.) convirtiendo código binario a ondas que reproducirá la membrana de nuestra bocina (por ejemplo) o a secuencias de cambio de color en los pixeles en el caso del vídeo (después de todo, los vídeos no son más que muchas imágenes secuenciales sincronizadas con un audio).

 Es así como se puede entender que el mundo que nos rodea puede potencialmente representarse en números y esos números traducirse a código binario, lo que significa que las posibilidades en cuanto a lo que las computadoras son y serán capaces de hacer aún son desconocidas o, cuando menos, inciertas. Especialmente considerando que las computadoras son cada vez más reducidas de tamaño (en algunos casos inclusive más potentes) y más común poderlas encontrar en dispositivos de todo tipo que nos rodean (refrigeradores, lentes y por supuesto, automóviles).

 Finalmente, si bien el código binario es posible gracias a la electricidad, sin duda es el código binario en sí lo que nos ha traído aquello que conocemos como “modernidad” actualmente y esto sugiere, fuertemente, que aquello que creemos conocer puede no ser más que ceros y unos.

Referencias:

Vega, F. [Freddy Vega]. (2018). Qué son bites y bytes [Archivo de Video]. Platzi. https://platzi.com/clases/1098-ingenieria/6549-que-son-bits-y-bytes/

Gentile, N. [Nate Gentile]. (22 de mayo de 2020). Sistema BINARIO y Puertas Lógicas: La BASE de cómo funciona tu PC [Archivo de Video]. Youtube. https://www.youtube.com/watch?v=RVGIXfC4Xeg&t=510s

Abrir chat
Contáctanos
Leeactiva
Hola, ¿Estás listo para ser un mejor lector? Te digo cómo.