Sabemos que las hojas de cálculo y Excel no parecen tener límites, y un entusiasta de la informática ha desarrollado un CPU de 16-Bit completamente funcional utilizando únicamente Microsoft Excel. Este proyecto no solo demuestra la versatilidad de Excel sino también la ingenuidad de su creador, al evitar el uso de scripts en Visual Basic, complementos u otros elementos externos más allá de las capacidades nativas de Excel.
El corazón del CPU de 16-Bit en Excel
El repositorio del proyecto del CPU de 16-bit en Excel se compone de varios archivos clave:
- CPU.xlsx: La hoja de cálculo principal que contiene el CPU.
- ROM.xlsx: La hoja de cálculo de ROM utilizada por el CPU cuando el interruptor de lectura de ROM está activado.
- InstructionSet.xlsx: Explica el conjunto de instrucciones (ISA) del CPU.
- compileExcelASM16.py: El compilador de Excel-ASM16.
- Excel-ASM16.xml: Markdown para el lenguaje Excel-ASM16 compatible con Notepad++.
- Programas de muestra: Una carpeta que contiene programas de ejemplo para el CPU en Excel.
Este CPU digital cuenta con 16 registros de propósito general, 128KB de RAM y una pantalla de 128×128. Todos los ficheros y código está disponible en GitHub.
Características y funcionamiento
Para su funcionamiento es necesario activar el cálculo iterativo desde las opciones de Excel, lo que permite la actualización continua del señal del reloj situado en la celda B2 mediante el re-calculo al presionar la tecla F9. Además, posee un botón de reinicio y la capacidad de ser operado tanto en modo automático como manual, controlado por un interruptor en la celda J2.
El CPU ejecuta operaciones en base a un conjunto de instrucciones detallado en el archivo «InstructionSet.xlsx», que incluye operaciones algebraicas, lógicas, de salto, transferencia, incremento/decremento y manejo de banderas.
Un logro tecnológico
Crear un CPU de 16-Bit en una plataforma no diseñada para tal fin es una proeza notable que demuestra el potencial oculto en las herramientas cotidianas de software. Este proyecto no solo es una demostración técnica impresionante sino también una herramienta educativa, ilustrando conceptos fundamentales de la ciencia de la computación y la ingeniería de hardware de manera accesible y creativa.
Además, el proyecto facilita una herramienta para entender mejor la arquitectura de los computadores, haciendo que la enseñanza de estas disciplinas sea más interactiva y práctica. La posibilidad de modificar y experimentar con un CPU virtual en Excel abre puertas a la experimentación y el aprendizaje de una manera nunca antes vista.
Un enfoque didáctico y colaborativo
Aparte de la impresionante hazaña técnica, el proyecto promueve un enfoque colaborativo y didáctico hacia el aprendizaje de los conceptos de la informática y la arquitectura de computadoras. Al compartir abiertamente los archivos y el código fuente, se invita a otros entusiastas y estudiantes a explorar, entender y expandir sobre el trabajo realizado.
Este CPU de 16-Bit en Excel sirve como un claro recordatorio de que la pasión por el aprendizaje y la experimentación puede transformar las herramientas más básicas en poderosos instrumentos de innovación. Es un testimonio del ingenio humano y de cómo los límites convencionales del software pueden ser redefinidos para explorar los fundamentos de la tecnología que impulsa nuestro mundo digital.