بهترین کامپایلر زبان اسمبلی
من در سرویسهای وبلاگدهی مختلف ، سه نوع کامپایلر زبان اسمبلی را به کاربرها معرفی کرده ام:
Masm = Microsoft Assembler
Fasm= Flat Assmbler
RosAsm = ReactOS Assmbler
من نام این سه کامپایلر را به ترتیب ، اینطوری تلفظ می کنم :
مسم
فسم
روسسم
البته روسسم (RosAsm) قبلا با نام دیگری یعنی Spasm ( اسپاسم یا سپاسم یا سپسم) ، از طرف سازنده اش ، به کاربرها معرفی شده بود
اما به دلیل اینکه لغت Spasm ، می تواند با " اسپاسم " و گرفتگی عضلانی ، هم معنا باشد و به دلیل اینکه Spasm به معنای " اسمبلر خاص " و "تک منظوره" است و بر تصور رایج علیه اسمبلی مبنی بر عدم قابلیت حمل زبان اسمبلی روی سیستم عامل ها و پردازنده های مختلف ، تاکید می کند ، لذا طراح این اسمبلر ، نام آن را از Spasm به RosAsm تغییر داد
لغت RosAsm به معنای زبان اسمبلی سیستم عامل ReactOS می باشد زیرا این اسمبلر ، در ابتدا برای این سیستم عامل شبه ویندوزی ساخته شد ولی از آنجاییکه سیستم عامل ReactOS هنوز در مرحله آلفا می باشد و هیچکس به آن توجه نمی کند و مایکروسافت بارها از دست او به دادگاه شکایت کرده است و به نقض قوانین کپی رایت ،متهم شده است ، بنابراین ، طراح اسمبلر RosAsm تصمیم گرفت که این اسمبلر را از اول تا به آخر ، مطابق با معماری ویندوز ، بازنویسی کند !
البته سیستم عامل ReactOS ، از لحاظ سیستم فایل و معماری و ساختار ، هیچ تفاوتی با سیستم عامل ویندوز (Windows) ندارد
یعنی حتی از لحاظ باینری نیز با ویندوز ، سازگار و هماهنگ است .
بطور مثال ، ویندوز می تواند نرم افزارهای این سیستم عامل را اجرا کند . حتی ویندوز 11 نیز می تواند نرم افزارهای سیستم عامل ReactOS را اجرا کند
اما سیستم عامل ReactOS که در وب فارسی با نام " ری اکت او اس " شناخته می شود ، نمی تواند نرم افزارهای حرفه ای و مدرن ویندوز را اجرا کند و در بهترین حالت ، فقط نرم افزارهای بومی و قدیمی 32 بیتی را اجرا خواهد کرد
البته سیستم عامل ReactOS هنوز قابل بوت و قابل نصب نیست و از روی فلش مموری ، بوت نمی شود و با بوت UEFI مشکل دارد .
از طرفی دیگر ، من در پست قبلی برنامه ی سلام جهان یا Hello World را طبق گرامر و سینتاکس اسمبلر RosAsm نوشتم که البته بسیار ساده و آسان است .
باید بگویم که ما می توانیم در تمام کامپایلرهای زبان اسمبلی ، با کمک خاصیت انعطاف پذیری زبان اسمبلی ، از کمترین تعداد کد اسمبلی برای تولید نرم افزار استفاده کنیم .
بنابراین فرقی نمی کند که برای تولید یک نرم افزار کم کد که تعداد اندکی کد لازم دارد ، از کدام کامپایلر زبان اسمبلی استفاده کنیم .
خب باید بگویم که RosAsm برای کاربران ویندوز و اینتل ، بهترین گزینه است زیرا علاوه بر برنامه نویسی و تولید نرم افزار ، توانایی مهندسی معکوس و کرک را نیز دارد
و این برای کاربرهای ایرانی ، گزینه مناسبی است
اما می توانیم در سایر کامپایلرهای زبان اسمبلی نیز به روش غیر مستقیم، عملیات مهندسی معکوس و کرک را انجام دهیم . البته با مقداری دشواری و پیچیدگی !
اما اگر من بخواهم ثابت کنم که زبان اسمبلی می تواند به تنهایی ، تمام زبانهای سطح بالا را بازنشسته کند و خودش بجای آنها بر تخت سلطنت بنشیند ، مجبورم از میان این سه کامپایلر ، فقط فسم (Fasm) را به کاربرها معرفی کنم
ما در Fasm نیز می توانیم عملیات مهندسی معکوس را انجام دهیم اما فرایند دشوار و پیچیده ای را باید پشت سر بگذرانیم
اما با توجه به اینکه مهندسی معکوس و کرک ، دقیقا بر خلاف قانون کپی رایت است و از طرف تمام کشورها و شرکتها و سازمان ها و اشخاص حقیقی و حقوقی ، یک نوع دزدی و سرقت و جرم محسوب می شود ، من از طرح مباحث مهندسی معکوس ، خودداری می کنم
من فقط روی برنامه نویسی و تولید نرم افزارهای کاربردی و سیستمی و درایور و ... تمرکز می کنم
ضمن اینکه فسم ، قابل حمل است و روی تمام سیستم عامل ها و پردازنده ها اجرا می شود و بسیار کوچک و سریع و قدرتمند است و وبسایت رسمی و انجمن رسمی و جامعه کاربری فعال ، دارد
البته در ایران و بسیاری از کشورهای جهان ، مردم از Masm که محصول شرکت مایکروسافت است استفاده می کنند
خب من در پست های بعدی ، هر سه نوع کامپایلر زبان اسمبلی یعنی مسم و فسم و روسسم را آپلود می کنم
شما می توانید هر کدام را که مناسب تر دیدید ، به میل خودتان ، دانلود نمایید
خوشبختانه حجم هر سه کامپایلر ، اندک است و حجم نت شما را هدر نمی دهد
مخصوصا Fasm که از تمام کامپایلرهای زبان اسمبلی ، کوچکتر و فشرده تر است و بسیار سریع دانلود می شود
من در پست بعدی این وبلاگ و سایر وبلاگهایم ( در سیستم های مختلف وبلاگدهی ) ، هر سه کامپایلر زبان اسمبلی را آپلود خواهم کرد .
نکته :
به دلیل اتفاقات عجیب و خطرناک که بعد از قطع چهار ماهه اینترنت ، بر سر وبسایتها آمده است ، عملا بسیاری از وبسایتها خراب یا هک شده اند و به مشکلات امنیتی دچار شده اند
بسیاری از آپلود سنترها اصلا کار نمی کنند و دست من واقعا بسته است
اما من سعی می کنم به هر طریق ممکن ، این سه کامپایلر را آپلود نمایم .
در ضمن بسیاری از آپلود سنترها اجازه نمی دهند فایلهای حجیم یا فایلهای آرشیو را آپلود کنم
و برخی از آنها نیز با وجود آنکه نام کاربری و رمز را به درستی وارد می کنم اما به محض اینکه تشخیص می دهند که من یک ایرانی هستم ، به دروغ اعلام می کنند که رمز ، صحیح نیست !!
بنابراین شاید فقط یک آپلود سنتر را بتوانم پیدا کنم که این مشکلات عجیب و غریب را نداشته باشد
نهایتا اگر نتوانستم این سه کامپایلر زبان اسمبلی را آپلود کنم ، لینک دانلود آنها را از طریق وبسایت رسمی و معتبرشان ، به شما معرفی می کنم تا شما خودتان به وبسایت رسمی وارد شده و این فایلها را دانلود نمایید
تشخیص اینکه بهترین کامپایلر زبان اسمبلی ، کدام کامپایلر است ، به این سادگی نیست زیرا هر کدام از اینها ، مزایا و معایب خاص خودشان را دارند و هیچکدامشان کامل نیستند
فعلا با توجه به اینکه در وسط جنگ سایبری و هک سیاه ، گیر کرده ایم و اینترنت داغون و ناامن شده است ، نمی توانم بیش از این فعال باشم و باید احتیاط کنم
با توجه به وضعیت نابهنجار وب جهانی و اینترنت ، و عدم امنیت و حملات سایبری ، نباید انتظار داشت که بتوانیم محتوای کامل وبی نقص تولید کنیم
لذا تولید محتوای کامل و جامع ، به آینده موکول می شود . تا زمانیکه امنیت فضای سایبری و دنیای واقعی تامین نشود ، باید صبر کنیم .
من عین این متن را در تمام سیستم های وبلاگدهی که در اختیار دارم ، کپی می کنم تا شما بتوانید از طریق چندین سیستم ، این مطالب را مطالعه نموده و فایلها را دانلود کنید
باید توجه داشت که بعد از قطع کامل و چهار ماهه وب جهانی و اینترنت ، بسیاری از سیستم های وبلاگدهی از جمله سیستم بلاگ به آدرس blog.ir بطور کامل نابود شدند و وبلاگهای من در این سیستم ها ، برای همیشه از بین رفتند و زحمات چهار ساله ام بکلی با خاک یکسان شدند
لذا من از این به بعد فقط سعی می کنم به طور همزمان ، در چندین سرویس وبلاگدهی مختلف زبان اسمبلی را تبلیغ کنم و سعی می کنم از تولید محتوای طولانی و کسل کننده خودداری کنم
این ترفند را به این علت بکار می برم تا اگر یکی از سرویسهای وبلاگدهی ، به سرنوشت دردناک بلاگ یا پرشین بلاگ یا میهن بلاگ ، دچار شد و بکلی نابود شد ، زحماتم بر باد نرود و کاربرها بتوانند لااقل از یک سرویس وبلاگدهی ، فایلهای مورد نیاز را دانلود کنند
شاید روزی برسد که حتی یک سرویس وبلاگدهی باقی نماند و وب جهانی بطور کامل نابود شود
و مجبور شویم با اینترنت و فضای مجازی خداحافظی کنیم
و امیدوارم هرگز چنین فاجعه ای رخ ندهد
پایان این پست