امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5

تفاوت کامپایلر و مفسر (Compiler vs Interpreter)

#1
قصد داریم به سادگی تفاوت میان زبان‌های کامپایلری و زبان‌های مفسری را بیان کنیم.

کامپایلر
اگر تجربه‌ی کار کردن با زبان‌هایی مثل سی یا سی‌پلاس‌پلاس را داشته باشید، می‌دانید که پس از نوشتن کد منبع، برای اجرا باید آن را کامپایل کنید. زمانی که یک کد به زبان سی را کامپایل می‌کنید، کامپایلر سی از روی کد منبع شما، یک فایل شیٔ (Object file) درست می‌کند که ترجمه‌ی کد شما به زبان ماشین است. (همان فایل با پسوند o که تولید می‌شود) این فایل ترجمه‌ی کدمنبع به زبان ماشین است. سپس برای اجرا کافی‌ست فایل ترجمه‌شده را اجرا کنید.

پس در این جا متوجه شدیم که یک کامپایلر در ابتدا کل کد منبع را می‌گیرد و آن را به کد ماشین ترجمه می‌کند.

مفسر
هنگام استفاده از زبان‌های مفسری مثل پایتون، مرحله‌ی کامپایل کد منبع وجود ندارد. پس از نوشتن کد برنامه‌نویس آن را اجرا می‌کند و مفسر خط به خط برنامه را به کد ماشین تبدیل می‌کند و اجرا می‌کند. توجه شود که مرحله‌ی کامپایل در این جا وجود ندارد. برنامه یک خط از کد را می‌خواند، به کد ماشین تبدیل می‌کند، سپس آن را اجرا می‌کند هنگامی که این خط در حال اجراست مفسر خط بعدی را به زبان ماشین ترجمه می‌کند تا مجددا ترجمه‌ی آن را برای اجرا آماده کند.

تفاوت کامپایلر و مفسر (Compiler vs Interpreter) 1

مقایسه
سرعت
در زبان‌های کامپایلری فقط یک بار کد به زبان ماشین ترجمه می‌شود و پس از آن می‌توان بارها آن را اجرا کرد. در زبان‌های مفسری اما برای هر بار اجرا پروسه‌ی خط به خط ترجمه کردن کد به زبان ماشین وجود دارد. به همین خاطر زبان‌های کامپایلری از زبان‌های مفسری سریع‌تر هستند.

سهولت
از آن جا که زبان‌های مفسری خط به خط کد منبع را به زبان ماشین ترجمه می‌کنند برای برنامه‌نویسان تازه‌کار مناسب‌تر هستند. برنامه‌نویس تازه کار می‌تواند خط به خط خطاهای کد خود را تصحیح کند.

دسترسی
برای اجرای کدهای نوشته‌شده به زبان‌های مفسری نیاز به مفسر آن کد روی سیستم داریم. برای اجرا کدهای نوشته‌شده به زبان‌های کامپایلری تنها نیاز به فایل کامپایل شده‌ی کد داریم. (البته در صورتی این کد قابل اجراست که روی ماشین با سیستم‌عامل مشابه اجرا شود.)
برای مثال برای اجرای کدهای نوشته‌شده به زبان پایتون باید مفسر پایتون را در سیستم‌عامل موردنظر داشته باشید. اما برای اجرای یک برنامه به زبان سی تنها کافی‌ست یک بار کد را کامپایل کند سپس فایل کامپایل شده را روی سیستم‌عامل مورد نظر برده و اجرا کنید.
source: virgool.io
.La mort est le remède
پاسخ
 سپاس شده توسط SABER
آگهی


[-]
به اشتراک گذاری/بوکمارک (نمایش همه)
google Facebook cloob Twitter
برای ارسال نظر وارد حساب کاربری خود شوید یا ثبت نام کنید
شما جهت ارسال نظر در مطلب نیازمند عضویت در این انجمن هستید
ایجاد حساب کاربری
ساخت یک حساب کاربری شخصی در انجمن ما. این کار بسیار آسان است!
یا
ورود
از قبل حساب کاربری دارید? از اینجا وارد شوید.


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان