مایکروسافت اکسل، یک نرمافزار صفحهگذاری شناختهشده بهعنوان یک برنامه چندکاره شناخته شده است که کاربران حتی متوجه شدهاند که به پیادهسازی بازی کلاسیک شوتر Doom نیز قادر است. با این حال، یک توسعه اخیر نشان داده است که اکسل برخلاف انتظار، قابلیتهای جدید و شگفتانگیز دیگری نیز دارد: میتوان از آن برای ساخت یک واحد پردازشگر متقارن استفاده کرد. این آشکارشدن غیرمنتظره از تلاش یک یوتیوبر به نام اینکباکس (Inkbox) است، که این انجام را در یک ویدیوی ۱۶ دقیقهای با جزئیات نشانداده است.
به طور قابل توجهی، اینکباکس در اکسل موفق به ساخت یک واحد پردازشگر ۱۶ بیتی شده است، بدون استفاده از اسکریپتهای ویژوال بیسیک یا پلاگینها. این واحد پردازشگر با نرخ ساعت ۳ هرتز عمل میکند و دارای ۱۲۸ کیلوبایت حافظه رم، صفحه نمایش ۱۲۸x۱۲۸ پیکسل با ۱۶ رنگ و زبان اسمبلی سفارشی است. حتی چیزی که بیشتر جذابیتهای این واحد پردازشگر است، این است که فایلهای مربوط به این واحد پردازشگر در حال حاضر در گیتهاب قابل دسترسی است و به افراد دیگر این امکان را میدهد تا آن را برای خود تست کنند.
یکی از جنبههای برجسته این پروژه ایجاد زبان اسمبلی به عنوان یک زبان برنامهنویسی کاملاً کاربردی برای واحد پردازشگر اکسل است. این زبان اسمبلی به نام اکسل-ASM16، شامل ۲۳ دستور مختلف است و از متغیرها، برچسبها و استفاده از فایلهای دودویی پشتیبانی میکند. اگرچه این قابلیتها برای یک زبان اسمبلی به نظر ممکن است ابتدایی باشند، اما با توجه به محدودیتهای ایجاد شده توسط واحد پردازشگر ۱۶ بیتی در اکسل، اهمیت زیادی دارند.
در ویدیوی توضیحی، اینکباکس به توضیح جامعی از توابع اکسلی که در این پروژه استفاده شده است و نحوه تغییر آنها برای ایجاد واحد پردازشگر عملکردی پرداخته است. با وجود سرعت نسبتاً محدود واحد پردازشگر بهمیزان ۳ هرتز، نمایش عملکرد زمانگذر پیشنمایش به طور موثر، کارکردهای داخلی این واحد پردازشگر عجیب و غریب مبتنی بر اکسل را به نمایش میگذارد.
اگرچه واحد پردازشگر ۱۶ بیتی ساخته شده در اکسل ممکن است محدودیتهای خود را داشته باشد، اما بدون شک نمونه مهارت فنی و خلاقیت استثنایی اینکباکس را نشان میدهد. اکسل-ASM16 که بهطور آزادانه به اشتراک گذاشته شدهاست و همراه با واحد پردازشگر مربوطه آن و نمونههای برنامه در گیتهاب در دسترس است، فرصتی جذاب برای سایر کاربران اکسل ارائه میدهد تا این ابداع منحصربهفرد را بررسی و آزمایش کنند.
The source of the article is from the blog enp.gr