PDA

نسخه کامل مشاهده نسخه کامل : ارور در اسمبلي



magic69
19-01-2010, 21:41
سلام.من يه برنامه با اسمبلي نوشتم كه اسممو چاپ ميكنه و چیزااي ديگه.بكانل compile ميشه ولي وقتي ران ميكنم وقتي به interrupt ميرسه اين اررورو ميده ممنون ميشم راهنماييم كنيد.INT 21h, AH=0BBh - not supported yet.
refer to the list of supported interrupts.

hoax3r
20-01-2010, 10:02
سلام
اون اررور بخاطر اینه که احتمالا از emu8086 استفاده کردین خوب این برنامه هم این تابع رو پشتیبانی نمیکنه حق داره بی چاره:20:
در ضمن شما مطمعنین که تابعی که باید استفاده کنید 0BBh هست ؟؟؟ برای چاپ رشته از این استفاده کردین؟
یکم بیشتر توضیح بدین

sin2x=2sinxcosx
20-01-2010, 10:30
آقا من هم یه مشکلی تو اسمبلی دارم تاپیک باز نکردم . وقتی تو برنامه از 386. استفاده می کنم برنامه رو (فایل obj ) رو نمی تونم link کنم . فایل exe نمی ده بیرون . اصلا این برای چیه ؟ به خاطر استفاده از مثلا movzx ؟

hoax3r
20-01-2010, 16:40
آقا من هم یه مشکلی تو اسمبلی دارم تاپیک باز نکردم . وقتی تو برنامه از 386. استفاده می کنم برنامه رو (فایل obj ) رو نمی تونم link کنم . فایل exe نمی ده بیرون . اصلا این برای چیه ؟ به خاطر استفاده از مثلا movzx ؟

ارروری هم میده؟ اگه میده متنش چیه؟ اون فرمان میگه برنامه نویس میتونه از تمام دستورات و امکاناتی که در پردازنده
80386 هست استفاده کنه که شامل رجیستری های 32 بیتی و دستورهایی مثل movzx , .. میشه

sin2x=2sinxcosx
20-01-2010, 19:53
فکر کنم با این حساب مشکل تو اسمبلرم باشه . شما با چی اسمبل می کنین ؟
ارور نمیشه گفت . یه جمله خبری میده . نمی دونم input file 7.obj(7.asm) pos 178 و این جور چیزا .

hoax3r
20-01-2010, 21:28
چه اررور عجیبی هم داره، معمولا اررور اگه از لینکر باشه ممکنه سورس یه ایراداتی داشته باشه که روی لینک کردن تاثیر میزاره،
شما خودتون از چه اسمبلری استفاده کردین


شما با چی اسمبل می کنین ؟
من یه مدتی هست از یه اسمبلر به اسم jwasm استفاده می کنم، سینتکس masm رو داره ولی قابلیتاش بهتر از masm هست،
برای لینوکس هم میشه باهاش برنامه نوشت، پیشنهاد میکنم شما یه امتحانی بکنید

magic69
20-01-2010, 21:34
سلام
اون اررور بخاطر اینه که احتمالا از emu8086 استفاده کردین خوب این برنامه هم این تابع رو پشتیبانی نمیکنه حق داره بی چاره:20:
در ضمن شما مطمعنین که تابعی که باید استفاده کنید 0BBh هست ؟؟؟ برای چاپ رشته از این استفاده کردین؟
یکم بیشتر توضیح بدین

آره با این نوشتم.نه از اون تابع استفاده نکردم.از09 استفاده کردم.اونو واسه خودش مینویسه

hoax3r
20-01-2010, 22:17
آره با این نوشتم.نه از اون تابع استفاده نکردم.از09 استفاده کردم.اونو واسه خودش مینویسه

احتمالا یه جایی از برنامه بعد یکسری اعمال اشتباها ah رو با 0BBh مقدار دادین و از int 21h استفاده کردین و این مشکلو به وجود آورده
اگه بتونین سورستون رو بزارین بهتر میشه ایرادو پیدا کرد، البته تو همون محیطش اجرا میکنین میگه کدوم خط ایراد داره

sin2x=2sinxcosx
21-01-2010, 14:26
چه اررور عجیبی هم داره، معمولا اررور اگه از لینکر باشه ممکنه سورس یه ایراداتی داشته باشه که روی لینک کردن تاثیر میزاره،
شما خودتون از چه اسمبلری استفاده کردین


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


من از masm استفاده می کنم .

magic69
21-01-2010, 23:18
احتمالا یه جایی از برنامه بعد یکسری اعمال اشتباها ah رو با 0BBh مقدار دادین و از int 21h استفاده کردین و این مشکلو به وجود آورده
اگه بتونین سورستون رو بزارین بهتر میشه ایرادو پیدا کرد، البته تو همون محیطش اجرا میکنین میگه کدوم خط ایراد داره

ممنون دوست عزيز.با پاك كردن int 21h مشكل حل شد.