En una palabra: En una impresionante demostración de creatividad y delicadeza técnica, un aficionado logró construir una CPU de 16 bits completamente funcional dentro de Microsoft Excel. El proyecto proporciona una forma práctica única de explorar conceptos informáticos de bajo nivel y destaca la flexibilidad de Excel más allá de las aburridas hojas de cálculo, permitiendo que cualquiera descargue y modifique una arquitectura de computadora en miniatura.
El usuario de YouTube Inkbox publicó un vídeo el 27 de enero demostrando su ingeniosa creación, que funciona a una velocidad de reloj de 3 Hz e incluye 128 KB de RAM, una pantalla de 16 colores de 128 x 128 píxeles y un lenguaje ensamblador personalizado denominado «EXCEL-ASM16».
La CPU fue construida usando nativo Funcionalidad de Excel, sin scripts ni complementos de Visual Basic. Inkbox aprovechó las poderosas capacidades de fórmulas de Excel para replicar las puertas lógicas, los registros y otros componentes necesarios para emular una arquitectura de procesador básica.
Pero quizás la parte más notable de este proyecto es el lenguaje ensamblador EXCEL-ASM16 de Inkbox, que admite 23 instrucciones diferentes para cargar, almacenar, operaciones aritméticas, operaciones bit a bit y más. También suena como un lenguaje completo: se admiten variables, etiquetas y comentarios, lo que permite escribir programas razonablemente complejos.
Inkbox recorre en detalle el proceso de desarrollo en el video de 16 minutos de arriba, explicando el esfuerzo que se hizo para esta magia. Puede parecer complicado al principio, pero el proyecto ilustra los conceptos básicos sobre la estructura interna de una CPU y cómo funciona de una manera completamente nueva. También ayuda a poner en perspectiva la gran flexibilidad del programa de hoja de cálculo.
Ver también: Cómo se diseñan y construyen las CPU
Si bien solo tiene una velocidad de unos pocos hercios, la CPU de Excel se puede controlar en un solo paso para visualizar cómo los programas ejecutan instrucción por instrucción. Y como si el lenguaje ensamblador personalizado no fuera suficiente, Inkbox también desarrolló un compilador basado en Python para acompañarlo. Este compilador convierte código EXCEL-ASM16 en datos binarios que se pueden cargar en la memoria de la CPU.
Por supuesto, este proyecto no está destinado a revolucionar la informática, pero es un buen ejemplo de lo que es posible cuando se lleva Excel mucho más allá de lo que está destinado. Entonces, aunque es posible que nunca uses una CPU Excel de 16 bits para el cálculo diario, sigue siendo una hazaña impresionante. También puede ser su mejor oportunidad para «descargar más CPU» y explorar de forma práctica conceptos informáticos de bajo nivel.
Si sus manos están ansiosas por hacer algunos retoques, Inkbox le proporciona generosamente el diseño de su CPU, su compilador y cualquier otra cosa que necesite. en GitHub. ¿Lo siguiente es una CPU de 32 bits en Excel?