Emojis ejecutables: cómo escribir un programa para el 8088 usando solo emojis

Fuentes: Executable Emoji

El programador y desarrollador del desensamblador web dasm.martypc.net descubrió de forma casual que el emoji de la cabra (🐐) se codifica en UTF-8 como F0 9F 90 90, una secuencia que resulta ser código máquina válido para el procesador Intel 8088: LAHF, NOP y NOP. A partir de esa observación, exploró la posibilidad de escribir programas completos en ensamblador del 8088 utilizando únicamente emojis, ya que la inmensa mayoría de los grafemas emoji comienzan por la secuencia F0 9F, que en el 8088 equivale a LAHF seguida de otro byte interpretable como instrucción.

El artículo presenta un programa «Hello (World)!» escrito íntegramente con emojis (🐸☺️🐰🐎♐🗃️🧯🧯🧯🐮💗🦮🪏♐🐰🐹🗃️🧯🧯�🧯💗🪗🧯😗🧮😗�😗🐮😪😔⭐), que ocupa 141 bytes y se ejecuta como archivo .COM en DOSBox-X con cpu=8086. El texto imprime la cadena HELLO en la memoria de vídeo y aprovecha varios alias no documentados del 8088 para manipular punteros y registros sin instrucciones MOV explícitas.

El autor incluye además una referencia bautizada «Emojissembly», con tablas de emojis individuales (como 😯 para avanzar DI dos bytes o 🤐 para copiar un byte entre DS:SI y ES:DI), colas abiertas que se combinan entre sí para formar instrucciones más largas, y secuencias completas listas para usar, como BunnySad (🐰😔) para reparar el puntero de pila. El trabajo se inspira en precedentes como el archivo de prueba EICAR y utilidades ASCII mínimas como TCOM, y propone los emojis como un nuevo alfabeto alternativo para código máquina x86.