PDA

View Full Version : سوال: بوت لودر سیستم عامل، اسمبلی یا C++ ؟



chikar
دوشنبه 13 اردیبهشت 1395, 12:36 عصر
چرا باید بوت لودر یه سیستم عامل رو با اسمبلی نوشت؟ اگه تنها مساله سرعت هست که مگه C++ کدش به ماشین تبدیل نمی شه خب مگه چقدر فرقش هست که با اسمبلی یا C+++ نوشته بشه؟ اصلا نوشتن بوت لودر با C++ امکان پذیر هست؟

pswin.pooya
پنج شنبه 16 اردیبهشت 1395, 16:57 عصر
چرا باید بوت لودر یه سیستم عامل رو با اسمبلی نوشت؟ اگه تنها مساله سرعت هست که مگه C++‎ کدش به ماشین تبدیل نمی شه خب مگه چقدر فرقش هست که با اسمبلی یا C++‎+ نوشته بشه؟ اصلا نوشتن بوت لودر با C++‎ امکان پذیر هست؟

کی گفته که فقط با اسمبلی می نویسن. معمولا از ترکیب هر دو استفاده می شه. و دلیل اینکه از اسمبلی هم استفاده می شه وجود دستورهای ماشین هستند که متناظر C++و یا هر زبون دیگه ای ندارن

chikar
جمعه 17 اردیبهشت 1395, 09:34 صبح
وجود دستورهای ماشین هستند که متناظر C++‎و یا هر زبون دیگه ای ندارن

پس وقتی می گیم C++ یک زبان سطح پایین هم هست، به معنی این نیست که کاملا low-level programming رو مشابه زبانی مثل اسمبلی پشتیبانی می کنه؟پس یعنی چه میزان برنامه نویسی سطح پایین باهاش امکانپذیر هست؟
آیا C++ به طور مستقیم به کد ماشین تبدیل می شه و یا ابتدا به اسمبلی و سپس به کد ماشین؟

pswin.pooya
شنبه 18 اردیبهشت 1395, 11:27 صبح
پس وقتی می گیم C++‎ یک زبان سطح پایین هم هست، به معنی این نیست که کاملا low-level programming رو مشابه زبانی مثل اسمبلی پشتیبانی می کنه؟پس یعنی چه میزان برنامه نویسی سطح پایین باهاش امکانپذیر هست؟
آیا C++‎ به طور مستقیم به کد ماشین تبدیل می شه و یا ابتدا به اسمبلی و سپس به کد ماشین؟

1. C++ یک زبان سطح بالا هست. نه پایین. (هر زبانی که یک دستورش به چند دستور ماشین ترجمه بشه زبان سطح بالا هست.)
2. دستورها ابتدا به دستورهای اسمبلی بعد به ماشین ترجمه می شن.
3. شما می تونید کدهای C++ و کدهای اسمبلی رو ترکیب کنید اینکار به کمک دستورهای غیر استاندارد مشابه __asm در ویژوال استادیو و ... پشتیبانی میشه و یا اینکه می تونید در قالب فایلهای جداگانه با رعایت کردن استانداردهای فراخوانی توابع اینکار رو انجام بدید و در نهایت فایلها رو لینک کنید.