ورود

View Full Version : سوال: چطور C/C++ رو با اسمبلی فراخوانی کنم؟ اجرا کنم؟



محمد255
یک شنبه 17 آذر 1392, 17:23 عصر
سلام دوستان. من میخوام یک برنامه اسمبلی بنویسم که در بدنه اون کدی از C++ به کار گرفته بشه و با فراخوانی این کد اجرا بشه. یعنی فرض کنید محیط و بدنه برنامه کلا اسمبلی هست و تو امولاتور اسمبلی قراره اجرا بشه، فقط کد اصلی (میانی) به زبان C++ هست. مثلا من چنین کدی با C++ نوشتم:

کدی که با اجرای اون، بزرگترین رفم میان ارقام داده شده پیدا میشه.

حالا چطور تو اسمبلی میتونم این کد C++ رو فراخوانی و اجرا کنم؟
با تشکر.

m.j_banitaba
یک شنبه 17 آذر 1392, 21:31 عصر
دو راه وجود دارد :
1-تبدیل کد c++ به اسمبلی و include کردن آن در برنامه اسمبلی و اسمبل کردن آن
2-شما فایل c++ را به object file کامپایل می کنید سپس فایل اسمبلی را هم به object file تبدیل می کنید در ادامه فایلهای حاصل را توسط linker به فایل نهایی تبدیل می کنید.

محمد255
یک شنبه 17 آذر 1392, 22:16 عصر
امکانش هست درباره نحوه راه حل دوم توضیح بدید؟ به چه طریق object file کنم و با لینکر متصل کنم؟ با تشکر.

m.j_banitaba
دوشنبه 18 آذر 1392, 10:22 صبح
توضیح راه دوم بستگی به این داره که شما در کدام سیستم عامل و کدام کامپایلر می خواهید برنامه نویسی کنید.

محمد255
دوشنبه 18 آذر 1392, 16:49 عصر
در ویندوز 7. با emu8086 اجرا میکنم اسبملی رو. با تشکر.

m.j_banitaba
چهارشنبه 20 آذر 1392, 15:49 عصر
من راه اون رو بلد نیستم ولی اگه c را به اسمبلی تبدیل کنی می توانی تو برنامه قسمتهایی از اون رو کپی کنی.