Pasar al contenido principal

ES / EN

¿Por qué el número 2.147.483.647 es tan importante en el mundo de la tecnología?
Viernes, Mayo 22, 2015 - 10:31

Desde crear explosiones en cohetes hasta romper la Internet, descubre qué poderes tiene esta enigmática cifra.

Por Gabriela González para Think Big. Existen humanos extraordinariamente inteligentes que entienden números y matemáticas de una manera poco común. Hay otras personas, como yo, que nunca han sido muy hábiles con los números y es por eso que terminan dedicando su vida a otras áreas. Sin embargo, cualquier amante de la tecnología sabe que los ordenadores trabajan con números en su nivel más básico y por esta misma razón, es fácil asumir que los ordenadores y los números siempre se llevan bien. Esto no es totalmente cierto.

Aparentemente, existe un bug de software muy simple que hace que muchos computadores, sin importar cuál sea su finalidad, dejen de funcionar completamente en frente de un número: 2.147.483.647. Este número tiene un poder tan fuerte que puede crear explosiones en cohetes, hacer que aviones “desaparezcan”, romper la Internet y cosas un poco menos desastrosas, como detener los contadores de visitas en vídeos de YouTube, o la cantidad de puntos ganados en un juego.

¿Qué se trae 2.147.483.647?

2.147.483.647 se le lee como: dos mil ciento cuarenta y siete millones, cuatrocientos ochenta y tres mil, seiscientos cuarenta y siete. Leonhard Euler, un matemático y físico suizo, probó en 1772 que era el número primo más grande que existía, y continúo teniendo este puesto hasta 1851.

Después de tener un comienzo tan importante en el mundo de las matemáticas, también ha tenido una historia interesante en el área de la computación. Este número es el valor positivo máximo que un sistema de 32-bit puede tener. Puede ser que esto no suene como un problema realmente porque se trata de un número enorme con 10 dígitos, pero la verdad es que sí lo es, porque cuando un sistema de 32-bit se enfrenta a la posibilidad de obtener números mayores a él, se creará un error llamado “desbordamiento aritmético” .

Cuando el desbordamiento aritmético se vuelve un problema

Quizás el desbordamiento aritmético no suene como gran cosa en situaciones como la que se le presentó a YouTube durante diciembre de 2014 cuando el vídeo que hizo famoso a PSY, “Gangnam Style”, llegó a las 2.147.483.647 views y el sistema de 32-bit de la web de vídeos no pudo continuar contándolas porque simplemente había llegado a su máximo. Pero esto sí es un problema cuando se usan sistemas de 32-bit para misiones espaciales y aviones comerciales.

El 4 de junio de 1996 despegó el primer vuelo del cohete Ariane 5 manejado por la Agencia Espacial Europea. Dentro de él no había una tripulación pero sí estaba cargado con cuatro satélites científicos muy costosos. El vuelo explotó apenas 39 segundos después de despegar, perdiendo alrededor de 370 millones de dólares. Después de un poco de investigación se dieron cuenta que el problema no era más que un bug de software que involucraba el número 2.147.483.647. Aparentemente, Ariane 5 necesitaba una aceleración horizontal mayor que los modelos previos porque su trayecto era distinto, y esto hizo que todos los computadores que controlaban el auto-piloto se confundieran y que comenzara una secuencia para auto-destruirse.

Entendiendo mejor el problema

Muchos lo vivimos durante el Y2K, algunas personas creyeron que cuando terminara el siglo XX, los ordenadores dejarían de funcionar, los aviones se caerían del cielo, y algunos hasta pensaron que los extraterrestres vendrían a buscarlos. El problema real al final de 1999 es que todos los ordenadores estaban programados para tomar los últimos dos dígitos del año para saber en cuál estábamos. Entonces, si era el año 1984, por ejemplo, el ordenador lo denotaba como “84” y nada más. Con la llegada del 2000, el ordenador se confundiría, creyendo que después de 1999 se regresaría a 1900, tomando los dos últimos dígitos del nuevo año.

Esto no se convirtió en un problema porque los sistemas fueron arreglados antes de que lo fuese, pero es un buen ejemplo de lo que sucede con el número 2.147.483.647 en los sistemas de 32-bit cuando llegan a su punto máximo. Afortunadamente, ahora tenemos los sistemas de 64-bit que no sufren de esta limitación.

Autores

AETecno