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

۲ مطلب با کلمه‌ی کلیدی «Gas» ثبت شده است

آشنایی با کامپایلرهای زبان اسمبلی بخش پایانی








بنام خدا



آدرس جدید این مطلب بر اساس شماره ترتیبی: 



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





آشنایی با کامپایلرهای زبان اسمبلی بخش پایانی




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


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


بعد از این پست  ، من قصد دارم یک کار جالب انجام بدم .  برنامه نویسی با هگز ادیتور .


بله  قصد دارم مستقیما با کدهای زبان ماشین در هگز ادیتور برنامه نویسی کنم و روش برنامه نویسی را نیز آموزش دهم !


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


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


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


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


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


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


+

خب حالا اسامی و سایتهای مابقی کامپایلرهای زبان اسمبلی را ردیف می کنم و  این مبحث را به  پایان می رسانم .


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


اما درعوض ،  زبان ماشین را تدریس می کنم !!!

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


بنابراین من قصد داریم اصیل ترین و معتبرترین زبان برنامه نویسی دنیا را تدریس کنم .



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

+

+

خب حرف دیگه بسه :


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




===


Yasm:


site:

http://yasm.tortall.net/


GitHub:

https://github.com/yasm/yasm

===


GoAsm:


http://godevtool.com/


===


Uasm:


site:

http://www.terraspace.co.uk/uasm.html


GitHub:


https://github.com/Terraspace/UASM


===


jwasm:


GitHub:

https://github.com/JWasm/JWasm


===


Tasm:


site:


https://web.archive.org/web/20101023185143/http://info.borland.com/borlandcpp/cppcomp/tasmfact.html



Wiki:


 https://en.wikipedia.org/wiki/Turbo_Assembler


===


Atari Assembler Editor:


wiki:


 https://en.wikipedia.org/wiki/Atari_Assembler_Editor


===


Lazer's Interactive Symbolic Assembler:


wiki:


  https://en.wikipedia.org/wiki/Lazer%27s_Interactive_Symbolic_Assembler


===


MAC/65:


wiki:


 https://en.wikipedia.org/wiki/MAC/65


===






====



ASM-One Macro Assembler:


wiki:


 https://en.wikipedia.org/wiki/ASM-One_Macro_Assembler



====


GNU Assembler:


wiki:


 https://en.wikipedia.org/wiki/GNU_Assembler


====



IBM Basic Assembly Language and successors:


wiki:


 https://en.wikipedia.org/wiki/IBM_High_Level_Assembler


=====



IBM High Level Assembler:


wiki:


 https://en.wikipedia.org/wiki/IBM_High_Level_Assembler



====




======


Amsterdam Compiler Kit:


wiki:


 https://en.wikipedia.org/wiki/Amsterdam_Compiler_Kit


====


IBM ALP:


wiki:


 https://en.wikipedia.org/wiki/IBM_ALP


====


gpasm:


wiki:


https://en.wikipedia.org/wiki/GPUTILS


====


IBM 650:


wiki:


 https://en.wikipedia.org/wiki/IBM_650#Software


=====

......

.......

.......

.......





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


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



چند نکته را مطرح می کنم   و بحث را جمع می کنم :

1- برای شروع برنامه نویسی تحت ویندوز بهترین  گزینه  ، ریاکت اسمبلر می باشد یعنی RosAsm  . پس حتما این اسمبلر را دانلود کرده و در فضای مجازی بازنشر نمایید .



2-  برای برنامه نویسی حرفه ای با زبان اسمبلی ، بهترین گزینه ، فلت اسمبلر می باشد .



3- برای فهم بهتر کدهای زبان ماشین در حین تدریس زبان ماشین ، سعی کنید با هردو اسمبلر   Fasm  و  RosAsm  کار کنید تا کدهای زبان ماشین را یاد بگیرید . 



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

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


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


5- در اوقات بیکاری  ، در وبلاگهای مختلف  سعی می کنم   نرم افزارهای زبان اسمبلی را  آپلود نمایم .


دیگه حرفی باقی نمونده .... 


پس  تا بعد .....



از پست بعدی  روش برنامه نویسی با زبان ماشین تحت سیستم عامل ویندوز را  تدریس خواهم کرد  . انشاء ا... 

+


موضوعات وبلاگ وحیدمی :

من  در تمامی پستهای وبلاگ وحیدمی ، سعی می کنم لااقل یک اشاره ای به موضوعات این وبلاگ داشته باشم . به همین دلیل برای تمامی پستهای این وبلاگ ،  تمام جعبه های موضوعات  وبلاگ  شامل  Idea ،  Assembly  ،  vahidmy  ، Music  ، Binary ، OS ، Weblog ، IT   ؛  را تیک می زنم که البته در دنیای وبلاگنویسی،  این رفتار ؛   کاری مضحک  و بی معنا و غیرحرفه ای محسوب می شود  ولی من به این قواعد و استانداردهای وبلاگنویسی اهمیت نمی دهم و دوست دارم هرطور که دلم می خواهد وبلاگنویسی نمایم و آزاد باشم . لذا  همینقدر که یک اشاره ی کوچک به این موضوعات در همین پاراگراف شد ،  از نظر خودم ، کافی است !!

من تافته ی جدابافته هستم و به سبک خودم وبلاگنویسی می نمایم  و به استانداردهای دنیای وبلاگنویسی اهمیت نمی دهم و برایم مهم نیست که مخاطبان پشت سرم چه می گویند . من به اشتهای مردم غذا نمی خورم و نگران حرف و حدیثهایی که مردم پشت سرم در می آورند نیستم و بی خیال و خونسرد هستم .

من رسومات  کهنه ی دنیای  وبلاگنویسی و مرزهای علم را جابجا می کنم !!

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


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


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


+




وحید محمدی -  وبلاگ  وحیدمی 


https://vahidmy.blog.ir








بروزرسانی

براثر حملات سایبری به وبلاگ وحیدمی ؛ تمام کامنت های کاربرها و پاسخ های من به کاربرها  ؛ حذف شدند 


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


تاریخ بروزرسانی 


یکشنبه مورخ  29 مرداد 1402 خورشیدی 


نکته : 

آدرسهای  آخرین پست وبلاگ وحیدمی را در زیر مشاهده می فرمایید . 




در پناه خداوند متعال عظیم الشان باشید 

ِ

الهم  عجل  لولیک الفرج . 



امضای همیشگی اینجانب  در جهت تایید صحت و درستی مطالب وبلاگهایم   : 


وحید محمدی . وبلاگ  وحیدمی 


https://vahidmy.blog.ir





https://vahidmy.blog.ir/archive


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










۰۴ مرداد ۹۸ ، ۰۲:۱۵
vahidmy

کامپایلرهای اسمبلی







بنام خدا


آدرس جدید پست براساس شماره ترتیبی 


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




Assembly Compilers


 کامپایلرهای اسمبلی :



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


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


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


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


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



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


1- کامپایلر مربوطه را معرفی می نمایند و در موردش مثال  و نمونه برنامه می آورند .


2- وبلاگ وحیدمی ( وبلاگ اصلی ام ) را  دنبال می کنند و با آن تبادل لینک انجام می دهند .


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

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


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


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


تمامی این وبلاگها دارای محتوای  کاربردی خواهند بود و هرگز  اسپم  نیستند . 


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


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


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


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


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


اگر 1000 وبلاگ بسازم و همه ی این 1000 وبلاگ ،  این وبلاگ اصلی را دنبال کنند و با ان تبادل لینک کنند و این وبلاگ نیز آنها را دنبال کند و با انها تبادل لینک کند فقط و فقط برای  تسریع در امر احیای زبان اسمبلی است و هیچ منظور دیگری  از اینکار ندارم .



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



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


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


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


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


این وسط شما نیز می توانید استراحت کنید . 



تا بعد .....

+


بروزرسانی :


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



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


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


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


لذا مبحث کامپایلرهای زبان اسمبلی صرفا در حد یک معرفی است و من در آینده  سعی می کنم روی هگز ادیتور و برنامه نویسی با زبان ماشین ، تمرکز نمایم . 


بنابراین وبلاگهای تخصصی زبان اسمبلی را به حال خود رها می کنم . 

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


من قصد دارم فقط روی یک چیز تمرکز نمایم :


زبان ماشین . یعنی باینری 


اصلاح می کنم :


زبان بین المللی ماشین یعنی 0  و 1  


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


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


در یکی از پستهای وبلاگ وحیدمی یک مطلب تحت عنوان " تمرکز وحیدمی روی وین هگز "  نوشته ام . 


در این پست دلایل تمرکز روی هگز ادیتورها خصوصا وین هگز را تشریح کرده ام . 


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




تاریخ بروزرسانی :


1 مارس 2023  




+



وحید  محمدی  -  وبلاگ وحیدمی


https://vahidmy.blog.ir





بروزرسانی

براثر حملات سایبری به وبلاگ وحیدمی ؛ تمام کامنت های کاربرها و پاسخ های من به کاربرها  ؛ حذف شدند 


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


تاریخ بروزرسانی 


یکشنبه مورخ  29 مرداد 1402 خورشیدی 


نکته : 

آدرسهای  آخرین پست وبلاگ وحیدمی را در زیر مشاهده می فرمایید . 




در پناه خداوند متعال عظیم الشان باشید 

ِ

الهم  عجل  لولیک الفرج . 



امضای همیشگی اینجانب  در جهت تایید صحت و درستی مطالب وبلاگهایم   : 


وحید محمدی . وبلاگ  وحیدمی 


https://vahidmy.blog.ir





https://vahidmy.blog.ir/archive


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







 . 



۲۶ تیر ۹۸ ، ۰۴:۰۷
vahidmy