روسسم

برنامه نویسی با ریاکت اسمبلر

روسسم

برنامه نویسی با ریاکت اسمبلر

بهترین کامپایلر زبان اسمبلی



بهترین کامپایلر زبان اسمبلی



من  در سرویسهای وبلاگدهی مختلف ،  سه نوع کامپایلر زبان اسمبلی را به کاربرها معرفی کرده ام:


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  بطور کامل نابود شدند و وبلاگهای من در این سیستم ها ،  برای همیشه از بین رفتند و زحمات چهار ساله ام  بکلی با خاک یکسان شدند 



لذا من از این به بعد فقط  سعی می کنم  به طور همزمان  ، در چندین سرویس وبلاگدهی مختلف  زبان اسمبلی را  تبلیغ کنم و  سعی می کنم از تولید محتوای طولانی و کسل کننده  خودداری کنم 


این ترفند را به این علت بکار می برم تا اگر یکی از سرویسهای وبلاگدهی ، به سرنوشت دردناک  بلاگ یا پرشین بلاگ یا میهن بلاگ  ، دچار شد و بکلی نابود شد ،  زحماتم بر باد نرود و کاربرها بتوانند لااقل از یک سرویس وبلاگدهی  ،  فایلهای مورد نیاز را دانلود کنند 


شاید روزی برسد که حتی یک سرویس وبلاگدهی  باقی نماند و  وب جهانی بطور کامل نابود شود 


و مجبور شویم با اینترنت و فضای مجازی خداحافظی کنیم 


و امیدوارم هرگز چنین فاجعه ای رخ ندهد 


پایان این پست