ورود

View Full Version : نمایش DX:AX



nasser_ou
پنج شنبه 07 خرداد 1388, 21:55 عصر
سلام
یک سوال داشتم خیلی روش کار کردم اما به جایی نرسیدم ، سوالم ساده است ما پس از استفاده از دستور Mul در صورتی که دو عدد 16 بیتی را در هم ضرب کرده باشیم نتیجه کم ارزش در AX , پر ارزش در DX ذخیره می شود حالا بنده می خواهم این نتیجه را نمایش دهم ، اومدم و نوشتم mov RES,AX و mov RES+2,DX ولی اصلا نمیدونم آیا این کار درسته ؟ دوم اینکه اینها باید به اسکی تبدیل بشن تا درست نشون داده بشن ، این برام سوال شده که چطور میشه کل جواب را نشان داد
ممنون می شم کسی کمکم کنه

nasser_ou
جمعه 08 خرداد 1388, 12:10 عصر
سلام
از دوستان کسی جواب این سوال ما رو نمی دونه ؟ سوال به نظرم ساده می یاد ، ببینید من فقط می خوام بدونم چطور میشه نتیجه ضرب رو که در 2 خانه حافظه یا در رجیسترها DX:AX داریم را چاپ کنیم ، منظورم چگونگی تبدیل به اسکی است چون اگه بخواهیم جدا جدا تیدبل کنیم عدد را اشتباه و با منفی نشون میده
ممنون میشم کسی کمک کنه

tdkhakpur
جمعه 08 خرداد 1388, 14:25 عصر
سلام:
ببینید شما کلمه پایین رو در ax و کلمه بالا رو در dx دارید حالا میتونید اون رو در یه متغییر دابل بصورت زیر دخیره کنید.


res dd ?

lea bx, res
mov word prtr [bx], ax
mov word prtr [bx+2], dx

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


addr dw ?

decima num
mob addr, bp
prints 10, 10, addr, 15, 0

بصورت بالا میتونید استفاده کنید.