نقل قول: ارزش باینری ثبات ها x86
یه مقدمه پیرامون سوال
کتابی که میخونی باید خیلی کتاب ردیفی باشه که باعث گیج شدنت نشه. من اسمبلی رو از یه کتاب کم کیفیت و بد ترجمه شده یاد گرفتم و همین هم باعث شده بود ماهها روی سوالات این تیپی و مشابه ذهنم گیر کنه و مجبور شدم بارها و بارها صفحه ها برگردم عقب و دوباره بخونم تا بالاخره تو باغ بیام.
دستورات اسمبلی کدهای مشخصی دارند که اگر کاملشو بخواهید باید از مستندات خود اینتل استفاده کنید. برای نگاه یکم گذرا از اینجـــــــــــــــــــــ ــــــــــــــــا میتونید استفاده کنید.
و اگر باز هم گذراتر میخواید نگاه کنید برنامه debug رو باز کنید دستور رو بنویسید و opcode شو ببینید. برای اینکار اگر ویندوز 32 بیت دارید مراحل زیر رو دنبال کنید:
1-منوی start گزینه run
2- دستور cmd رو اجرا کنید
3- دستور debug رو اجرا کنید
4- دستور a رو بزنید
5- یک دستور اسمبلی بنویسید برای مثال mov ah,4
6- با دستور u 100 متونید در اولین خط خود دستور و opcode که براش ساخته شده رو ببینید.
ax عدد 16 بیتی رو میتونه نگهداره و eax عدد 32 بیتی رو (rax هم 64 بیتی هست)
نقل قول: ارزش باینری ثبات ها x86
نقل قول:
نوشته شده توسط
Mr.305
سلام
من اصلا رشته تحصیلیم یا کارم مربوط به کامپیوتر نیست و از روی علاقه دارم رو اسمبلر ها مطالعه میکنم
رو مطالعاتم به ی سوال بر خورد کردم موقع مطالعات
تو هنگام انکد کردن ی دستور اسمبلی مثل mov eax,9 این مد به ی رشته 32 بیتاز 0 و 1 تقسیم میشه که مثلا دستور mov معادل باینریش میشه مثلا 001
سوال من اینجاست که ارزش باینری این آپ کدها و ثبات ها رو چجوری بفهمیم بر فرض اینکه داریم رو ی سی پی یو اینتل ساده خودمونی 775 سوکت کار میکنیم کار میکنیم و فرق ax و eax تو چیه؟
سلام :
بهترین منبع اموزش زبان اسمبلی سایت اسمبلر Fasm می باشد . توی این سایت به خیلی از سوالات بی جواب ذهنتون پاسخ داده میشه .
ادرس اسمبلر Fasm
https://flatassembler.net
توی سایت روی عبارت Message Board کلیک کن تا وارد انجمن برنامه نویسان زبان اسمبلی بشوی . هر سوالی داری از کاربران اون انجمن بپرس چون یک سایت معتبر و کامل در همه ی زمینه های مربوط به زبان اسمبلی است .