- یک توسعهدهنده با استفاده از توالی بایتهای ایموجیها در استاندارد UTF-8، موفق شده برنامهای اجرایی برای پردازندههای قدیمی Intel 8088 و 8086 بسازد که بدون استفاده از حروف و کدهای متداول، عبارت HELLO را روی نمایشگر چاپ میکند.
- پوشش تحلیلی تخصصی در حوزه فناوری.
- گزارش اختصاصی بازبینیشده توسط هیئت تحریریه کراپلود پلاس.
باورنکردنی اما واقعی؛ یک برنامهنویس با ایموجیها کدنویسی کرد و کلمه HELLO را روی کامپیوتر نمایش داد!
شاید در نگاه اول تصور کنید ایموجیها صرفاً نمادهایی برای انتقال احساسات در پیامرسانها هستند؛ اما یک توسعهدهنده موفق شده از همین نمادهای تصویری برای ساخت یک برنامه کامپیوتری واقعی استفاده کند. این برنامه که برای پردازندههای قدیمی اینتل طراحی شده است، میتواند در محیط DOS اجرا شود و عبارت HELLO را روی نمایشگر نشان دهد.
این آزمایش جالب توسط Daniel Balsom، توسعهدهنده و علاقهمند به رایانههای قدیمی، انجام شده است. نکته شگفتانگیز ماجرا این است که برنامه موردنظر از مجموعهای از ایموجیها تشکیل شده و خبری از کدنویسی متداول با حروف و اعداد نیست.
راز کدنویسی با ایموجیها چیست؟
برای درک این آزمایش باید ابتدا با استاندارد UTF-8 آشنا شویم. کامپیوترها برای ذخیره و پردازش متن، کاراکترها را به مجموعهای از اعداد و بایتها تبدیل میکنند. این فرایند برای ایموجیها نیز انجام میشود.
نکته جالب اینجاست که برخی از این توالیهای بایتی، در معماری پردازندههای قدیمی x86 میتوانند بهعنوان دستورهای ماشین تفسیر شوند.
ماجرا از زمانی آغاز شد که Balsom هنگام آزمایش یک ابزار آنلاین برای تجزیه و تحلیل دستورهای پردازنده x86، ایموجی بز (🐐) را وارد کرد و متوجه شد این نماد به توالی بایتی زیر تبدیل میشود:
F0 9F 90 90
این چهار بایت در پردازندههای Intel 8088 و 8086 میتوانند بهعنوان دستورهای ماشین تفسیر شوند. در این نمونه، توالی مذکور به دستورهای LOCK، LAHF و دو دستور NOP تبدیل میشود.
البته ایموجی بز بهتنهایی برنامه خاصی اجرا نمیکند؛ اما همین اتفاق جرقهای برای ساخت یک برنامه کامل با استفاده از ایموجیها شد.
ساخت برنامه HELLO با استفاده از ایموجیها
پس از این کشف، توسعهدهنده تصمیم گرفت بررسی کند آیا میتوان مجموعهای از ایموجیها را به شکلی کنار هم قرار داد که یک برنامه واقعی تشکیل دهند یا خیر.
نتیجه این آزمایش، ساخت برنامهای اجرایی برای پردازندههای قدیمی اینتل بود که با استفاده از توالی بایتهای ایموجیها، دستورهای موردنیاز را اجرا میکند.
این برنامه پس از ذخیرهسازی در قالب فایل اجرایی DOS با پسوند COM، در محیط شبیهساز DOSBox و با تنظیم پردازنده روی 8086 قابل اجرا است.
خروجی برنامه نیز عبارت HELLO است که مستقیماً در حافظه تصویری رایانه نوشته میشود و در قسمت پایین نمایشگر ظاهر خواهد شد.
این آزمایش به نمایش یک کلمه محدود نمیشود!
نکته جالبتر اینکه Balsom به همین نمونه ساده بسنده نکرده است. او موفق شده یک نمونه گرافیکی پیچیدهتر نیز با استفاده از ایموجیها بسازد که صدها نماد تصویری را در خود جای داده و در محیط DOSBox اجرا میشود.
برای ساخت چنین برنامههایی، توسعهدهنده باید توالی بایتهای مناسب را پیدا کند و آنها را به شکلی کنار هم قرار دهد که دستورهای موردنیاز پردازنده تولید شوند.
این فرایند به شناخت دقیق معماری x86، دستورهای اسمبلی و نحوه رمزگذاری کاراکترها در UTF-8 نیاز دارد.
آیا میتوان با ایموجیها نرمافزارهای واقعی ساخت؟
از نظر فنی، پاسخ مثبت است؛ اما این روش بیشتر یک آزمایش سرگرمکننده و اثبات تواناییهای فنی محسوب میشود تا جایگزینی برای زبانهای برنامهنویسی.
همچنین نباید تصور کرد هر ایموجی در هر کامپیوتری میتواند بهعنوان دستور اجرایی عمل کند. این روش به معماری پردازنده، نحوه تفسیر دستورها و محیط اجرای سازگار وابسته است.
در نهایت، این آزمایش نشان میدهد حتی نمادهایی که روزانه در پیامرسانها استفاده میکنیم، در سطح پایینتر محاسباتی میتوانند معنای کاملاً متفاوتی داشته باشند؛ بهطوریکه یک ایموجی ساده ممکن است برای پردازنده به مجموعهای از دستورهای ماشین تبدیل شود.
منابع و مراجع
۱. IBM Think – گزارش اصلی درباره ساخت برنامه اجرایی با ایموجیها
https://www.ibm.com/think/news/emoji-8088-machine-code-ibm-pc
۲. Hackaday – بررسی فنی تبدیل ایموجیها به کد ماشین
https://hackaday.com/2026/11/06/the-goat-emoji-is-100-valid-machine-code-and-it-doesnt-stop-there/
۳. GitHub – پروژه اصلی Daniel Balsom و فایلهای اجرایی
https://github.com/dbalsom/executable_unicode
۴. Adventures in PC Emulation – پروژه و توضیحات فنی توسعهدهنده
هنوز دیدگاهی ثبت نشده است. اولین نفر باشید.