سلام
من این ترم واحد اسمبلی گرفتم و اصلا وارد به این درس نیستم
برنامه رو نصب کردم و یک برنامه نوشتم حالا باید اینو چه جوری ببینم اجرا می شه یا نه؟ :لبخندساده
سلام
من این ترم واحد اسمبلی گرفتم و اصلا وارد به این درس نیستم
برنامه رو نصب کردم و یک برنامه نوشتم حالا باید اینو چه جوری ببینم اجرا می شه یا نه؟ :لبخندساده
باید روی سیستم ات توربو اسمبلر(TASM) یا ماکرو اسمبلر (MASM) بریزی;
فایلت رو با نام first.asm تو شاخه bin ذخیره کن، از طریق Command Prompt به اون شاخه برو ودستورات زیر رو تایپ کن:
خط دستور اول (در صورتی که کد نویسی ات مشکلی نداشته باشه) فایل obj. رو ایجاد میکنه ، این فایل یه زبان ماشین هست ولی هنوز قابلیت اجرا نداره!
MASM first.asm
TLINK first
first
خط دستور دوم موجب ایجاد فایل exe. میشه ، خط دستور سوم هم که فایل رو اجرا میکنه!
در صورت که از TASM استفاده میکنی، تو خط دستور اول به جای MASM از TASM استفاده کن.
برات یه ماکرو اسمبلر UpLoad کردم:
آخرین ویرایش به وسیله lajevardi : پنج شنبه 12 آبان 1384 در 01:07 صبح
چطور اسمبلی را یاد بگیریم ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ سودابه از اهواز
کتاب نوشته دکتر حسن سید رضی خیلی خوبه!
مبتدی نوشته و برای اول کار خیلی بهتره! اما اینو بدونین که فقط با یک کتاب و یک ترم درس نمیشه اسمبلی دان شد!!
میشه بگید توی سیستم عامل های 64bit چطوری میتونم برنامه های اسمبلی رو اجرا کنم ؟
سلام
سلام به دوستای عزیز ، یه کتاب خیلی خوب برای یادگیری اسمبلی می خوام ، خواهشا راهنمایی کنید
ممنون
دوستان
استاد ما به ما گفته که در محیط notepad برنامه تون رو بنویسید.میشه فرق این که ما در notepad بنویسم یا در جاهای دیگر (راستش رو بخواید من اصلا نمی دونم تو کجا غیر از notepad می تونم کد رو بنویسم)اگر میشه یه توضیح کلی بدید.
در هر برنامه ای که فقط متون ذخیره بشن و هیچ کاراکتر اضافه ای غیر از متن ها ذخیره نشه.
در اینطور برنامه ها شما اجازه bold ,italic,underline و تغییر فونت نوشته ها را ندارید.
نمونه هایی از برنامه هایی که قابل استفاده نیستند:
wordpad
microsoft word
....
نمونه های قابل استفاده:
notepad
notepad2
notepad++
.....
من با دستور MASM.EXE filename.asm فایلی با پسوند .obj تولید میکنم و بعد دستور LINK.EXE filename.obj میزنم ولی هیچ اتفاقی نمیفته و فایل اجرایی تولید نمیشه !!! هیچ پیغامی هم نمیده !!! کجای کارم اشتباه هست ؟
آخرین ویرایش به وسیله mahdi68 : یک شنبه 09 آبان 1389 در 22:58 عصر
سلام منم مشکل دارم میتونید یه کم شفاف تر در مورد اجرای برنامه ای که در masmنوشتید توضیح بدید ممنون
من این کارو می کنم:
1) یه برنامه ی Assembly می نویسم : MyProgram.ASM
2) فایل برنامه رو می گیرم، می کشم، می ندازم تو FASM.EXE!
2.5) می شد فقط روی FASM.EXE کلید کنیم و در محیطی که میاره کدمون رو بزنیم... به همین راحتی.
3. کلید F9 رو می زنم، برنامه ام خود به خود کامپایل می شه و اجرا هم می شه.
اما برای کارهای متفاوت مثل گرفتن فایل Object، می تونید از خط فرمان FASM استفاده کنید و بهش بگید می خواید خروجیتون چی باشه.
در کل بگم من عاشق FASM هستم!
براي برنامه هاي داس(com,exe) درmasm از سايت masm32 اسمبلر رو دريافت كنيد و از دستورات زير استفاده كنيد:
اسمبل كردن و ساخت obj
MASM first.asm
لينك كردن
LINK16 first
اجرا
first
ساخت و اسمبل با ساختار هاي ديگه كمي متفاوت هست كه انشا الله يعدا ميگم.
موفق باشيد.
سلام خدمت تمامی دوستان...
چه فرقی می کنه که masm تحت Dos باشه یا تحت windows؟
منظورتون خود کامپیالر MASM هست یا حالت برنامه هایی که می خواید تولید کنید؟
سلام...
بیشتر منظورم compliler بود.ولی اگه هر دو موردم توضیح بدهید بیشتر ممنونتون میشم
با تشکر
خوب حالت برنامه ها که طبیعتا به محیط اجرا و این جور مسائل ربط داره، مثلا برای DOS، Linux یا Windows ...، ولی اکثر مواقع خود کامپیالر ها رو دیدم که به صورت Console مانند ساخته می شن که فقط با ارسال پارامتر از خط فرمان برنامه رو کامپایل کنه و Editor رو هم به صورت Window Application می نویسن واسه راحتی برنامه نویس و از این جور مسائل.
آدرس دانلود نرم افزار MASM به زیر تغییر پیدا کرده:
http://lajevardi.persiangig.com/app/asm/Masm.v.6.11.rar
سلام من به تازگی برنامه MASM32 رو نصب کردم و نمی تونم برنامه هام رو توش کامپایل کنم. این برنامه تحت ویندوز است، پس دستوراتی که شما گفتید رو باید کجا بزنم؟ من سعی کردم توی Cmd Promptای که در برنامه هست، این دستورات رو اجرا کنم ولی Error داد که دستور MASM شناخته شده نیست. داخل پوشه برنامه رو هم گشتم و فایلی به نام "MASM" وجود نداره، این دستور به نظرم منطقی نمیرسه.
البته در مسیر masm32\bin\link16.exe فایل link16 وجود داره و فکر می کنم از نظر دستور:
LINK16 <FILENAME.OBJ>
مشکلی نباشه.
میشه راهنمایی ام کنید؟
masm32 توانایی ایجاد فایل آبجکت معماری ia32 که شامل 8086 تا سری های پنتیوم و ... میشه رو داره ، بله من در پستم فراموش کردم بگم برای اسمبل در masm6 فایل اجرایی به ml تغییر نام پیدا کرده،پس به طریق زیر فایل رو اسمبل و لینک کنید.سلام من به تازگی برنامه MASM32 رو نصب کردم و نمی تونم برنامه هام رو توش کامپایل کنم. این برنامه تحت ویندوز است، پس دستوراتی که شما گفتید رو باید کجا بزنم؟ من سعی کردم توی Cmd Promptای که در برنامه هست، این دستورات رو اجرا کنم ولی Error داد که دستور MASM شناخته شده نیست. داخل پوشه برنامه رو هم گشتم و فایلی به نام "MASM" وجود نداره، این دستور به نظرم منطقی نمیرسه.
ml /c yourfile.asm
link16 yourfile
ضمنا directive برای کدتون هم فراموش نشه .286 بنویسید
موفق باشی
با سلام این فایلی که گفتید دانلود و نصب کردم اما وقتی از cmd میخوام ml /c ,.... رو بنویسم میگه که دستور ml نداریم ویندوز من ویستا هست
لطفا راهنمایی کنید
سلام به همگی
من همین برنامه ای که گفتید رو دانلود و مطابق همون گزینه win nt/dos,... که هر دو رو ساپورت کنه نصب کردم
اما وقتی دستور ml ,..... رو مینویسم میگه که instruction or register not accepted in current cpu mode روی دستور های
.MODEL FLAT
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD ایراد میگیره
بعدش هم روی include io.h که میگه پیداش نمیکنم
اگر ممکنه راهنمایی کنید بسیار اجر اخروی و دنیوی داره
ممنون از شما