ايران ويج

نسخه‌ی کامل: ترکیب دو قدرت
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
من به اندازه ای که توی اسمبلی چیز می دونم توی زبانهای خانواده C چیز نمی دونم

برای همین می خوام از طریق اسمبلی به بعضی از کارها رو انجام بدم

و مخواستم بدونم :

چون ویندوز اجازه دسترسی مستقیم به برنامه های اسمبلی به حافظه و ... رو نمی ده

می شه اسمبلی رو با ویژوال سی ++ ترکیب کرد و به این قابلیت رسید

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

و برام هم فرق نمی کنه که در برنامه کد رو بنویسم یا کدهای اسمبلی رو جدا

به فایل obj تبدیل و به برنامه ویژوال سی ++ پیون بزنم
شما برای دسترسی کامل نیاز به دسترسی به رینگ 0 دارین
از فایلهای obj تو دلفی هم میتونین استفاده کنین
استفاده از اسمبلی و ترکیب اون با زبان C یا ++C در 95 درصد اوقات بی مورد و کلا اتلاف وقت هست . شما بهتره بری و زبان C رو یادبگیری که بسیار آسون تر از اسمبلی هست و نیازی هم به اسمبلی پیدا نخواهی کرد . هر کاری در ویندوز انجام میدن از طریق API ها امکان پذیره و در اسمبلی تحت ویندوز هم باید از invoke کردن همین توابع API استفاده کنید پس هیچ فرقی بین اینها نیست فقط اینکه نوشتن برنامه های اسمبلی خیلی خیلی پیچیده تر از برنامه های C هست !!

اگر خیلی دوست دارید که این ترکیب رو انجام بدین باید از تکنیکی به نام Inline Assembly استفاده کنید . مثلا مایکروسافت توی کامپایلر ++VC دارای سیستم Inline Assembler هست .
http://msdn.microsoft.com/en-us/library/...S.71).aspx

فراموش نشه که برنامه های اسمبلی که به شکل Inline نوشته میشن محدودیت هایی زیادی دارند .