تور لحظه آخری
امروز : چهارشنبه ، 23 آبان 1403    احادیث و روایات:  پیامبر اکرم (ص):کمترین کفر این است که انسان از برادرش سخنی بشنود و آن را نگه دارد تا او را با آ...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

بازسازی ساختمان

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

اوزمپیک چیست

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

نگهداری از سالمند شبانه روزی در منزل

بی متال زیمنس

ساختمان پزشکان

ویزای چک

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

 






آمار وبسایت

 تعداد کل بازدیدها : 1828782480




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

اسمبلی -


واضح آرشیو وب فارسی:سایت ریسک: اسمبلی aminoia 13 آبان 1386, 20:27سلام به همه مجید آنلاینی ها من در مورد اسمبلی یه مشکل دارم اگه میشه راهنمایی کنید من وقتی برنامه رو به اسمبلی می نویسم نه میدونم که چه جوری اونو اجرا کنم؟ the_king 03 آذر 1386, 03:43اگه برنامه اسمبلی رو بصورت مستقل می نویسید احتیاج به یک کامپایلر تحت DOS دارید، مثل : Microsoft Macro Assembler اول برنامه اسمبلی رو بطور کامل داخل یک فایل متنی می گذارید که پسوند فایل رو ASM بگذارید بهتره. بعد با کامپایلر مربوطه فایل اجرایی EXE و یا COM اونرو می سازید، که نوع فایل اجرایی بستگی به کد شما داره. آخرین نسخه های کامپایلر MASM هم شامل MASM.exe هستند و هم ML.exe که ML نسخه جدید و پیشرفته کامپایلر است و MASM.exe فقط واسه سازگاری با نسخه های قبلی ارائه می شه. همچنین باید فایل اجرایی LINK.exe و چند فایل دیگه هم در مسیر PATH وجود داشته باشند و یا در شاخه فعلی کپی کرده باشیدش. بهتره این مسیر دو شاخه BIN و BINR را در PATH سیستم اضافه کنید : SET PATH=%PATH%;C:MASM611BIN;C:MASM611BINR البته مسیر این دو شاخه ممکنه در کامپیوتر شما فرق کنه. دستوری که برای ساختن فایل اجرایی لازم دارید را باید در DOS و یا Command Prompt بنویسید : MASM.exe test.asm; یا ML.exe test.asm من فرض کردم که اسم فایل کد برنامه اسمبلی ما test.asm است، دقت کنید که MASM.exe به کاراکتر ; بعد از اسم فایل اسمبلی احتیاج داره و علاوه بر این در نسخه های قدیمی کامپایلر، برای ساختن فایلهای COM احتیاج به EXE2BIN هم دارید که یک برنامه جانبی است، پس توصیه می کنم که در صورت امکان از ML.exe استفاده کنید. نمونه ای از محتویات یک فایل اسمبلی از نوع COM اینجوری میشه : .MODEL TINY .CODE .STARTUP .386 MOV AH,9 LEA DX,mymsg INT 21H .EXIT mymsg DB "Hello, This is a test." END دقت کنید که در فایلهای COM باید کدها و داده های شما در کنار هم و داخل یک سگمنت واحد باشند و پشته نداریم. نمونه ای از محتویات یک فایل اسمبلی از نوع EXE اینجوری میشه : .MODEL SMALL .STACK .DATA mymsg DB "Hello, This is a test." .CODE .STARTUP MOV AH,9 LEA DX,mymsg INT 21H .EXIT END دقت کنید که در فایلهای EXE ما هم سگمنت کد داریم و هم سگمنت داده و هم سگمنت پشته. طریقه کامپایل کردن هر دو فایل یکسانه، کامپایلر از دستور MODEL برای فهمیدن نوع استفاده می کنه. وقتی فایل اجرایی test.exe یا test.com ساخته شد آنرا به راحتی اجرا می کنید، تا پیغام زیر نمایش داده بشه : Hello, This is a test. the_king 03 آذر 1386, 04:53البته کامپایلر های دیگری هم هستند مثل TASM که به اندازه قبلی کاربرد عمومی ندارند. بین کدهای زبان ++C هم میتوانید اسمبلی بنویسید ولی باید از خیر خیلی امکانات متعارف زبان اسمبلی بگذرید. اینطوری : _asm { MOV AX,4 MOV BX,20 MOV CX,10 L001: ADD AX,BX DEC BX LOOP L001 } L001 اسم یک برچسب (Label) است. در زبان پاسکال هم چنین قابلیتی وجود داره، اما دردسر اش کمی بیشتره. aminoia 08 آذر 1386, 11:12خیلی ممنون




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1951]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن