Código Binario: El idioma de "mis cacharros"​

Código Binario: El idioma de "mis cacharros"

Primero de todo, quiero dejar constancia que la redacción de estos artículos solo tiene por objeto poner sobre papel algunas ideas generales. Muchas veces me han preguntado en que se basaba o sobre que hablaba mi tesis doctoral (inacabada). Ese es un punto curioso: me apasiona el tema, pero es algo posiblemente tan específico que, para dar una pequeña idea, me encuentro con la necesidad de hacer una amplia explicación previa.

Lo que pretendo es dejar escrita esa explicación. Entre otras cosas para poder aclarármela a mi mismo, con tranquilidad. Reflexionando.

Voy a procurar no entrar en ningún tipo de tecnicismo o dato avanzado. Parto de la idea de escribirlo como si debieran leerlo mis hijas (la semana próxima harán 3 años)… si vale, un poco exagerado. Mejor: como si debiera leerlo alguien “de letras”, que no sabe absolutamente nada de electrónica o tecnología.

Durante 3 o 4 textos espero poder hacer que “esa persona sin idea de estos temas” pueda comprender mínimamente en que se basa el diseño de circuitos electrónicos full-costum (es decir, totalmente a medida), y más concretamente las celdas de RAM. Esto es: que compone cada una de las unidades de una memoria de esas que hay en cualquier ordenador, o teléfono, o despertador, o calculadora, o…

Renuncio voluntariamente a un lenguaje excesivamente cargado de conceptos, o a entrar en profundidad en los temas (si a alguien le interesa, que me lo haga saber y valoraré en meter más la nariz en algo), pero no así a la Rigurosidad. De hecho, dudo que pudiera no ser riguroso y dormir tranquilo por las noches… ¡mi alma de ingeniero me torturaría!

............................................................................................................................................

Empecemos por el principio. Y ese es entender “el idioma”. Para nuestros aparatos todo son números, y más concretamente, todo son valores binarios. Pero no nos aceleremos. Poco a poco.

Dejadme que meta un poco de antropología, aunque sea de costado: Los seres humanos nos movemos en un mundo matemático construido sobre la base 10. Somos decimales. Esos son los números con los que nos sentimos cómodos. Es lo que reconocemos sin pensar. Sabemos a simple vista que 23 es menos que 45, por ejemplo. Sin necesidad de pensarlo nada.

Trabajar en base 10 quiere decir que hacemos paquetes de 10 unidades. Parad un momento a pensarlo. Empezamos a poner piedrecitas dentro de una bolsa: 1,2,3…. Seguimos poniendo… 7,8,9 y… justo en este momento, cuando ponemos una más cambiamos el código: 10. Esto es: un paquete entero y 0 unidades sueltas. Sé que parece extraño pensarlo así, pero es necesario hacerlo para pasar al siguiente punto. Y además es cierto. De hecho el proceso de puede acumular (“anidar”): cuando tengamos 9 paquetes enteros y 9 unidades (vamos, el 99), al poner otra piedrecita nos iremos a 1 paquete de paquetes, ningún paquete simple y ninguna unidad (el 100).

Evidentemente esta base 10 es una decisión arbitraria (o no. Poco después explicaré el que), y podíamos haber crecido en otras bases: por ejemplo existe la base octal, que recoge el 8 como paquete básico. Sus números van del 0 al 7, y el siguiente ya es el 10 (que si lo queremos pensar en decimal vale 8). Así, por ejemplo, un 20 en octal es lo que nosotros llamamos un 16 (dos paquetes de 8)…

También hay bases mayores que el 10, como puede ser la hexadecimal (en base 16). No deja de tener su cierta gracia. Un día me dediqué a jugar con mi edad: tengo 35 años, en base decimal, claro. ¿Pero qué edad tengo en Octal o Hexadecimal):


10x35 (con el 10x marcamos que es decimal) à8x 43 (octal) à 16x 23 (hexadecimal).


A paquetes más pequeños, antes los llenaré…

Todo cambia, evidentemente… pero os he citado antes la palabra “antropología” y aún no la he acometido… vamos a ello: una curiosidad es que todos los pueblos de la tierra (o casi todos, no vaya a escapárseme alguna ahora) tiene una base decimal. Esta coincidencia podría decirnos que la elección de esta no es  arbitraria, que hay algún motivo… quizás bajaron los Dioses de verdad y nos indicaron algo así…. Aunque seguramente no. Es algo más sencillo: extiende tus brazos, abre bien las manos y cuéntate los dedos. No, no es casualidad que tengas justo 10 dedos. He aquí el gran secreto.

Pues bien, los circuitos electrónicos no tienen dedos. Así que para ellos la base decimal les suena igual de bien que a ti la hexadecimal (si no trabajas en diseños muy avanzados, claro). Los circuitos trabajan en la base más simple que existe: la binaria. Y esta solo tiene dos estados: 0 y 1.

Así es como trabaja la binaria: existe o no existe. Esta o no esta. Arriba o abajo. Tan simple. Tan potente.

No creas que por simplicidad deja de ser potente: todo lo que ves en una pantalla, todo lo que usa tu PC o tu móvil, esa foto de las vacaciones que guardaste, el último SMS o mensaje de whatsapp… todo son solo seros y unos. Bien combinados y traducidos, claro está.

Los números binarios también se pueden acumular: el 101 son un paquete de paquetes y una unidad, es decir, el 5.

Los números binarios se pueden operar. De hecho tienen su propia matemática: la booleana.

Los números binarios lo pueden codificar todo. Por que cómo expondré más adelante, son tan pequeños tan pequeños, que se pueden agrupar muchos de ellos y representar cosas muy grandes. Muchísimo.

Pero eso creo que lo dejaré para otro pequeño escrito. Uno en lo que os explique que es, a grandes rasgos (muy grandes) que es la clave de todo esto: el transistor (y no, no es el aparato para escuchar el fútbol).  



Inicia sesión para ver o añadir un comentario.

Otros usuarios han visto

Ver temas