۰
subtitle
ارسال: #۱
  
سوال پایه اسمبلی
سلام من تازه کنکور کاردانی قبول شدم و متاسفانه در این رشته ناوارد هستم. درس اسمبلی رو قبلا نداشتم و اصلا نمیفهمم چی میگن. یک سوال به ظاهر ساده ای رو طرح کردن که میخواستم ببینم درست حل کردم یا نه.
صورت سوال: برنامه ای به زبان اسمبلی بنویسید که مقدار ۶۵ را به هر یک از ثبات های CX CH CL منتقل کند و خروجی را مشخص کند.
حلش اینطوری میشه؟
MOV CX,65
MOV CH,CX
MOV CL,CH
خروجی: هر سه تا = ۶۵
یا اینکه چون CX خودش شامل CL+CH هست نمیشه طبق مرحله دو CX رو ریخت توی CH؟
پیشاپیش ممنونم.
صورت سوال: برنامه ای به زبان اسمبلی بنویسید که مقدار ۶۵ را به هر یک از ثبات های CX CH CL منتقل کند و خروجی را مشخص کند.
حلش اینطوری میشه؟
MOV CX,65
MOV CH,CX
MOV CL,CH
خروجی: هر سه تا = ۶۵
یا اینکه چون CX خودش شامل CL+CH هست نمیشه طبق مرحله دو CX رو ریخت توی CH؟
پیشاپیش ممنونم.
۱
ارسال: #۲
  
RE: سوال پایه اسمبلی
چون که رجیستر CX تشکیل شده از cl ,ch کد بالا غلطه
در دستور mov تعداد بیت های دو رجیستر باید برابر باشه
MOV CX,35
وقتی ما این دستور رو بنویسیم ابتدا cx رو مقدار ۳۵ بهش دادیم چون تعداد بیت های عدد ۳۵ به اندازه ی نیست که به ch هم وارد بشه مقدار cx=cl=35 و ch=0
MOV CH,CL
بعد از این دستور مقدار ch برابر ۳۵ می شود ولی قائدتا مقدار cx دیگر برابر ۳۵ نخواهد بود
در دستور mov تعداد بیت های دو رجیستر باید برابر باشه
MOV CX,35
وقتی ما این دستور رو بنویسیم ابتدا cx رو مقدار ۳۵ بهش دادیم چون تعداد بیت های عدد ۳۵ به اندازه ی نیست که به ch هم وارد بشه مقدار cx=cl=35 و ch=0
MOV CH,CL
بعد از این دستور مقدار ch برابر ۳۵ می شود ولی قائدتا مقدار cx دیگر برابر ۳۵ نخواهد بود
ارسال: #۳
  
RE: سوال پایه اسمبلی
(۰۸ مهر ۱۳۹۲ ۰۷:۲۹ ب.ظ)afshin18 نوشته شده توسط: چون که رجیستر CX تشکیل شده از cl ,ch کد بالا غلطه
در دستور mov تعداد بیت های دو رجیستر باید برابر باشه
MOV CX,35
وقتی ما این دستور رو بنویسیم ابتدا cx رو مقدار ۳۵ بهش دادیم چون تعداد بیت های عدد ۳۵ به اندازه ی نیست که به ch هم وارد بشه مقدار cx=cl=35 و ch=0
MOV CH,CL
بعد از این دستور مقدار ch برابر ۳۵ می شود ولی قائدتا مقدار cx دیگر برابر ۳۵ نخواهد بود
پس چه کنیم که در پایان هم همه یعنی هر سه همین مقدار رو حفظ کنن؟
۱
ارسال: #۴
  
RE: سوال پایه اسمبلی
دوستمون اول درست توضیح داده دیگه.
خب دوست من نمیشه که همشون یعنی هم CX هم CLهم CHمقدارشون یکسان باشه
ببین CX شامل CL و CH هستش خب ، یعنی اون دوتا با هم CX رو تشکیل میدن ، هر کدوم یک بایته که با هم CX دو بایتی رو تشکیل میدن.
شاید روی مسئله رو متوجه نشدید ویا منظور استادتون به طور همزمان نبود.
خب دوست من نمیشه که همشون یعنی هم CX هم CLهم CHمقدارشون یکسان باشه
ببین CX شامل CL و CH هستش خب ، یعنی اون دوتا با هم CX رو تشکیل میدن ، هر کدوم یک بایته که با هم CX دو بایتی رو تشکیل میدن.
شاید روی مسئله رو متوجه نشدید ویا منظور استادتون به طور همزمان نبود.
۰
۰
ارسال: #۶
  
RE: سوال پایه اسمبلی
اگر به طور همزمان نبوده باشه همون
CX,65
CH,65
CL,65
کافیه؟
CX,65
CH,65
CL,65
کافیه؟
۰
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close