vahidmy

وبلاگ شخصی وحید محمدی

vahidmy

وبلاگ شخصی وحید محمدی

وحیدمی

وبلاگ شخصی وحید محمدی . یک تایپیست که عاشق علم و تجربه است.


آدرس وبلاگ وحیدمی :

Home Page


https://vahidmy.blog.ir

+


Archive

آرشیو و بایگانی وبلاگ وحیدمی

https://vahidmy.blog.ir/archive

+


نقشه وبلاگ وحیدمی:

Sitemap

https://vahidmy.blog.ir/sitemap.xml

+

خوراکخوان وبلاگ وحیدمی

Feed

RSS

https://vahidmy.blog.ir/rss

+

آدرس مورد استفاده خزنده ها روباتها و موتورهای جستجوگر

Robot

https://vahidmy.blog.ir/robots.txt


+

مشخصات وبلاگ وحیدمی:


ساعات انتشار پست جدید وبلاگ :

بیست و چهار ساعته

وضعیت انتشار پست : نامنظم . در طول شبانه روز و در صورت صلاحدید ؛ پست جدید منتشر می کنم.


نام مدیر : وحید محمدی

گونه : وبلاگ شخصی با آدرس اختصاصی و محتوای عمومی

ژانر : تمام ژانرها

کاربرد : همه منظوره

هدف وبلاگ : به اشتراک گذاشتن دانش و تجربه با مردم و پرداخت زکات علم

مقصد مدیر وبلاگ : کسب رضای خداوند .

جنس وبلاگ : وبلاگ شخصی

تاریخ تاسیس : تیر 1398 خورشیدی



موضوعات وبلاگ : تمام علوم و فنون و مسائل مختلف در تمام زمینه


کپی برداری از مطالب وبلاگ وحیدمی به شرط لینک دادن به آدرس اصلی وبلاگ با دامنه vahidmy.blog.ir ، بلامانع و آزاد است . با خیال راحت ، کپی برداری نمایید . هیچگونه کپی رایت و انحصار برای وبلاگ وحیدمی ، وجود ندارد .

بروزرسانی:

وبلاگ وحیدمی منحصرا توسط سایت بلاگ دات آی آر به آدرس blog.ir میزبانی می شود . بنابراین بجز دامنه vahidmy.blog.ir سایر دامنه ها جعلی و فیک و خطرناک هستند .
برای مشاهده نکات جدید و ترفندهای امنیتی لطفا به آدرس زیر مراجعه فرمایید:

https://vahidmy.blog.ir/post/1



آدرس وبلاگهای تخصصی :

https://spasm.blog.ir

https://fasmy.blog.ir

https://binasm.blog.ir

طبقه بندی موضوعی
بایگانی
مطالب پربحث‌تر
  • ۰۱/۰۴/۱۱
    adc
نویسندگان
پیوندها

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

يكشنبه, ۱۲ خرداد ۱۴۰۴، ۰۲:۴۲ ق.ظ



به نام خدا



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



ایرانسل ، هنوز هم بسیار کند است و گویا واقعا بخشی از زیرساخت سخت افزاری این شرکت ، براثر قطع مکرر برق ، صدمه دیده است . 



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




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



شاید این مطلب آخرین پست این وبلاگ باشد زیرا متاسفانه بجز ایرانسل نیمه جان و نیمه سوخته و به شدت کند و ناکارآمد ، اپراتور دیگری ندارم که با کمک آن به اینترنت وصل شوم و پستهای بعدی را منتشر کنم .



پس لطفا با دقت به این سوالات و جوابهای فرضی دقت کنید شاید به جواب سوالاتی که در ذهن تان هست برسید و از بلاتکلیفی و سرگردانی بیرون آیید  



این سوالات می توانند سوالاتی باشند که واقعا در ذهن شما  وجود دارند و تا به امروز هیچکس به آنها پاسخی نداده باشد 




سوال :


آیا این وبلاگ در صورت ادامه ، یک وبلاگ تخصصی ترویج و تبلیغ زبان اسمبلی خواهد بود یا مجددا مطالب متفرقه و عمومی یا شخصی در آن نوشته می شوند ؟؟


جواب :


این وبلاگ اگر ادامه داشته باشد ، فقط وبلاگ تخصصی برای تبلیغ از زبان اسمبلی خواهد بود زیرا تمام مسائل عمومی و شخصی را قبلا ذکر کرده ام . 



هدف اصلی ام از وبلاگنویسی فقط احیای زبان اسمبلی بود و گرنه اصلا دوست نداشتم که به حاشیه بروم و مطالب غیرمرتبط را نشر دهم . 


اما شرایط سخت زندگی در ایران ، باعث شد که ناخواسته و بی اختیار ، به این مباحث کشیده شوم . 



اما هرچه بود دیگه تمام شد . 



از این پست به بعد ، فقط در مورد زبان اسمبلی مطلب خواهم نوشت . 




سوال:

آیا در وبلاگهای تخصصی نیز فعالیتی خواهید داشت یا اینکه فقط اینجا هستید ؟؟


جواب : بستگی به شرایط دارد . 


اگر ببینم که کاربرها برای بازدید و دانلود ، این وبلاگ را ترجیح می دهند و کاری به سایر وبلاگهایم ندارند ،  تمام فعالیتم را در همین وبلاگ ادامه خواهم داد . 



فعلا که سیستم آمار بلاگ بطور کامل نابود شده است  و من اصلا در هیچکدام از وبلاگهایم نمی توانم چیزی از بازدید یا دانلود ببینم . 


بنابراین ترجیح می دهم در همین وبلاگ به کارم ادامه دهم 




سوال :


چرا باید از میان این همه زبان برنامه نویسی آسان و قابل فهم و قابل حمل ، زبان دشوار اسمبلی را یاد بگیریم 



جواب :


اولا زبان اسمبلی نیز قابل فهم و ساده است و خصوصا اگر از ماکرو استفاده کنید گرامر اسمبلی به شدت به گرامر زبانهای سطح بالا نزدیک خواهد شد و عملا ساده تر و قابل فهم تر می شود . 



ثانیا زبان اسمبلی نیز قابل حمل است . زبان اسمبلی کامپایلرهای قبل حمل قدرتمندی همچون Fasm و  Nasm و Vasm دارد که البته من توصیه می کنم برای قابلیت حمل سخت افزاری و نرم افزاری ،  فقط از Fasm   استفاده کنید . 


زیرا مابقی کامپایلرهای قابل حمل زبان اسمبلی ، یا منسوخ و متوقف شده اند یا جامعه ی کاربری و انجمن ندارند که بتوانید سوالات خود را از افراد آن جامعه یا انجمن بپرسید . 



اسمبلر Fasm  جامعه ی کاربری بسیار بزرگی در میان کاربران تمام سیستم عامل ها دارد و از لحاظ سخت افزاری نیز نسخه های مختلف و قابل حمل دارد و در نتیجه قابل حمل ترین کامپایلر زبان اسمبلی است . 


از طرفی دیگر انجمن بسیار فعال و بزرگی نیز دارد که می توانید تمام سوالات خود را از اعضای این انجمن بپرسید . 



سوال :


اسمبلر فسم (Fasm) طبق نوشته ی طراحش ، فقط یک پروژه ی سرگرمی  و تفننی است !  در حالیکه اسمبلر مسم (Masm) یک ابزار قدرتمند و حرفه ای است که توسط بزرگترین فروشنده ی سیستم عامل یعنی شرکت مایکروسافت ساخته شده است و هرگز کار ذوقی و سرگرمی نیست و برای برنامه نویسان حرفه ای سطح سیستم عامل ، طراحی و ساخته شده است 


الان من مردد هستم زیرا نمی دانم برای ساخت سیستم عامل مورد نظرم از کدامیک از این دو کامپایلر زبان اسمبلی استفاده کنم و حرفهای کدامیک را جدی بگیرم ؟؟



جواب :


شاید مایکروسافت ، استانداردترین و بهترین سیستم عامل جهان یعنی ویندوز  را ساخته باشد اما لزوما بهترین زبان برنامه نویسی را نساخته است و البته دشمنی مایکروسافت با زبان اسمبلی کاملا مشهود است و این شرکت هنوز هم در حال تحریف معنای لغت اسمبلی است . 


این شعارهای اسمبلر masm32  فقط نوعی رجزخوانی است و گرنه این اسمبلر فقط یک طبل توخالی می باشد . 


اگر تمام وب جهانی را شخم بزنید حتی یک سیستم عامل را پیدا نمی کنید که توسط اسمبلر masm یا masm32 یا masm64  ساخته شده باشد . 


اینها فقط شعار و حرف مفت هستند . 


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


بجز بوت لودر و برخی بخش های سیستمی مربوط به مدیریت منابع سخت افزاری و درایورها ، سایر بخشهای ویندوز با زبان سی پلاس پلاس و حتی ویژوال بیسیک ساخته شده است . 



بنابراین عملا اسمبلر masm  هرگز به درد طراحی و ساخت سیستم عامل نمی خورد . 



ضمن اینکه از نظر لایسنس نیز با مشکل مواجه می شوید زیرا این اسمبلر ، کاملا تجاری و انحصاری است و دست شما را می بندد . 


بنابراین در بحث حقوقی نیز به مشکل برخورد می کنید . 



هیچ نسخه ای برای سایر سیستم عامل ها و پردازنده ها ندارد . 


در مجموع برخلاف شعارهای وبسایت masm32  ، این اسمبلر اصلا و ابدا حرفه ای نیست و به درد کدنویسان حرفه ای طراح سیستم عامل ، نمی خورد . 


این فقط یک شعار و رجزخوانی است ولی در عمل چیزی از این اسمبلر دیده نشده است . 



اما در مورد Fasm باید بگویم که اتفاقا همین که می گوید Fasm یک پروژه ی سرگرمی و ذوقی است ، بهترین سیگنال است که به شما می فهماند تنها زبان برنامه نویسی برای طراحی سیستم عامل ، همین Fasm است زیرا هیچگونه محدودیتی را بر شما تحمیل نمی کند و از نظر فنی و مهندسی و البته قوانین حقوقی و لایسنس ، دست شما را کاملا باز می گذارد . 


هر وقت از روی ویندوز ، یک سیستم عامل حرفه ای و مدرن و کارآمد ساخته شد  ، آنوقت می توانیم بگوییم که masm و ویندوز ، نرم افزارهایی آزاد هستند که به حقوق کاربران و برنامه نویسان احترام می گذارند . 



همینکه حتی یک سیستم عامل از روی ویندوز ساخته نشده است و خود مایکروسافت نیز سالهاست که masm را دور ریخته است ، ثابت می کند که این اسمبلر ، واقعا به درد طراحی و ساخت سیستم عامل نمی خورد و کارایی ندارد . 



این اسمبلر فقط ظاهری حرفه ای و مدرن دارد اما باطن اش کاملا توخالی و پوشالی است 



برای ساخت سیستم عامل ، فقط از Fasm باید استفاده نمود 



سایر اسمبلرها اصلا و ابدا از لحاظ فنی مهندسی و حقوقی ، به درد طراحی سیستم عامل نمی خورند و دست شما را از پشت می بندند . 




سوال :


اما masm  دارای لینکر اختصاصی مایکروسافت است و ابزارهای قدرتمند فراوانی دارد و نسخه های 8 تا 64 بیتی دارد که با کمک آنها می توانیم سیستم عامل بسازیم 



جواب :


اما این لینکر کاملا انحصاری و کدبسته است و شما را در میانه ی راه ، تنها می گذارد 


آن نسخه ها نیز با یکدیگر سازگار نیستند و مشکلات فراوانی در بحث فنی و حقوقی دارند 



اما Fasm ،  بطور پیشفرض برای تمام سیستم عامل ها و پردازنده ها ، نسخه ی واحد و یکسان و استاندارد دارد 



یعنی Fasm ذاتا ، 8 بیتی و 16 بیتی و 32 بیتی و 64 بیتی می باشد و می تواند انواع و اقسام سیستم عامل و نرم افزار و بازی و درایور و ... را در این سیستم ها بسازد . 



ضمنا  Fasm لینکر اختصاصی و انحصاری ندارد بلکه لینکر آزاد دارد که بخصوص در ویندوز ، این لینکر قابل سفارشی شدن می باشد زیرا کاملا اوپن سورس و آزاد است 



ضمنا تمام کد منبع Fasm به زبان اسمبلی نوشته شده و توسط خودش کامپایل می گردد و کاملا آزاد است 


هیچ محدودیت فنی و حقوقی و تجاری در Fasm  وجود ندارد و شما آزادی کامل دارید و دست تان کاملا باز است 



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



سوال :


اما در ویندوز مجبوریم لینکر را خودمان بسازیم 



جواب : اگر از ماکرو استفاده کنید اصلا نیازی به نوشتن لینکر نیست . 


کمااینکه تمام کاربرهای انجمن Fasm از ماکرو یا از زبان تفسیری شبه سطح بالا استفاده می کنند لذا مجبور نیستند  در ویندوز و سایر سیستم عامل ها ، لینکر را بسازند 



البته همین ساختن لینکر نیز نوعی آزادی و قدرت را به شما هدیه می دهد 



شما می توانید با کمک Fasm ،  سیستم عامل مورد نظرتان را بسازید و برای همیشه از شر مایکروسافت  و لایسنس ها و جاسوسی هایش  خلاص شوید 





سوال :


اما در Fasm  چیزی به نام دیس اسمبلر وجود ندارد و عملا امکان مهندسی معکوس نیز وجود ندارد 



جواب :


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



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



فقط در ایران است که برای کرک یا مهندسی معکوس به یاد اسمبلی می افتند وگرنه در سایر کشورها ، زبان اسمبلی ، زبان برنامه نویسی و تولید و توسعه ی نرم افزار است و از ابزارهای تخصصی و خاص برای مهندسی معکوس استفاده می نمایند . 


این یک تفاوت در دیدگاه است . 



ضمنا مهندسی معکوس را با کمک ابزارهای تخصصی انجام دهید که مسلما خروجی بهتری را دریافت خواهید کرد . 



ضمنا مهندسی معکوس بیشتر روی ویندوز بکار می رود که در این مورد می توانید از اسمبلر RosAsm  استفاده نمایید 


سایر سیستم عامل ها ، مهندسی معکوس آن چنانی ندارند لذا Fasm  برای اینکه قابل حمل و جهانی باشد ، از مهندسی معکوس استفاده نمی نماید . 




سوال :


در masm با  چیزهای همچون سینوس و کسینوس و آرایه و سایر مباحث تخصصی روبرو می شوم اما در Fasm و RosAsm  چنین چیزهای ضروری را ندیده ام 



جواب :


زیرا جامعه ی کاربری  Masm در تمام کشورها حتی ایران ، بزرگترین جامعه ی کاربری زبان اسمبلی محسوب می شود و طبیعی است که به این مباحث تخصصی نیز پرداخته شود 



اما اگر جستجو کنید می توانید در انجمن Fasm   نیز با این مباحث تخصصی  روبرو شوید و سوالات خود را از کاربران بپرسید . 




بهرحال ، از هر جهت که فکرش را بکنید و با استناد به شواهد واقعی و عملی ،  Fasm  یک اسمبلر فوق حرفه ای و مدرن است که فقط ظاهری ساده دارد اما پشت همین ظاهر ساده ، میلیاردها ترفند مخفی شده اند . 


دقیقا مثل فوتوشاپ ساده با میلیونها ترفند !!!



گول ظاهر مدرن و سه بعدی و زیبای  masm را نخورید که فقط یک اسباب بازی است و کارایی ندارد  که اگر کارایی داشت دستکم یک سیستم عامل را می ساخت . 




بنابراین بهترین کامپایلر زبان اسمبلی برای تمام حوزه ها ،  فقط و فقط ،  Fasm  می باشد . 



پایان 



نکته : انحصار ، اصالت می آورد اما آزادی را نابود می کند . 


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