راکت

اسمبلی سریع تره یا سی پلاس پلاس

3 پاسخ

سلام به همه
من امروز یه سایت و دیدم که یک کد اسمبلی و با c++ از نظر سرعت مقایسه کرده بود
و دو کدی که کار یکسانی و انجام میدن .
و کد اسمبلی با اسمبلر nasm
و c++ با کامپایلر ++g
و من دیدم که سی پلاس پلاس سریع تر از اسمبلی بود (حدود یک ثانیه)
و خب اسمبلی بعد از زبون ماشین نزدیک ترین زبون به سخت افزار هست و از c++ و c سطح پایین تره
و من انتظار داشتم که اسمبلی سریع تر باشه پس چرا نیست🤔🤔 اگه کسی از دوستان میدونه چرا و چطور c++ سریع تر هست ؟؟
ممنون میشم که منم راهنمایی کنه .
🙏

ثبت پرسش جدید

پاسخ‌ها

3
saman
saman
@saman1111

سلام
سرعت صرفا به زبان بستگی نداره، به الگوریتمی که نوشته شده و همچنین بهینگی کد بستگی داره
یه الگوریتم بد با اسمبلی میتونه هزاران برابر کند تر از یه الگوریتم خوب با یه زبان کند مثل روبی باشه

امین
امین
@amingoodarzi84

تخصص: بیکاری

@saman1111
سلام بله درسته
ولی هر دو کد بهینه بودن و چندین بار اصلاح شده بود .
ولی سرعت c++ همچنان بیشتر بود.

شاید پاسخ شما همین‌جا باشد

mahdi khanzadi
mahdi khanzadi
@khanzadimahdi

تخصص: Software engineer

کد کامپایل شده ی c++ رو مقایسه کن.

بعضی از کامپایلر ها این قابلیت رو دارن که result یه مجموعه محاسبه رو به جای اون محاسبه قرار بدن و با دستکاری خروجی اون رو بهینه کنن. یک روند پیشبینی نتیجه دارن که نتیجه رو پیش بینی میکنه و باعث میشه پردازش کمتری انجام بشه.
مثلا کامپایلر rust این قابلیت رو داره. راجب c++ اطلاع ندادم.

نکته ی دیگه ای که باید در نظر بگیرید میزان استفاده از memory هم مهمه. ساختار هایی وجود دارن که سرعت پردازش بالایی دارن اما میزان استفاده از memory اونا بیشتره.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام