زبان تفسیری Interpreted Language
زبان تفسیری یا Interpreted Language چیست؟
زبان تفسیری (Interpreted Language) به نوعی از زبانهای برنامه نویسی گفته میشود که اکثر دستوراتش به صورت مستقیم و بدون نیاز به کامپایل کردن برنامه به دستورات زبان ماشین توسط مفسر اجرا میشود. در واقع مفسر هر برنامه را در قالب دنبالهای از زیرروالهای کوچکتر که پیشتر به زبان ماشین تبدیل شدهاند اجرا میکند.
در زبانهای تفسیری ممکن است مفسر به صورت مستقیم دستورات را اجرا کرده و یا آن را به یک حالت میانی تبدیل نموده و سپس آنها را اجرا نماید. با این وجود ممکن است سیستمهای تفسیری نیز همانند کامپایلرها نوعی کار ترجمه هم انجام دهند اما فرایند اصلی مورد استفاده از نوع تفسیری خواهد بود.
معمولا برنامههایی که به زبانهای تفسیری نوشته شدهاند نسبت به مدل کامپایل شده کندتر اجرا میشوند اما در عوض سایز کمتری دارند.
لازم به ذکر است بسیاری از زبانها نظیر بیسیک، سی، پاسکال و پایتون دارای نسخههای کامپایلی و تفسیری هستند.
پیوندهای پیشنهادی تک دیک
سلام.ممنون بابت مقالتون.
interpreter و compiler هر دو یک کار رو انجام میدن.یعنی دستورات زبان های سطح بالا رو ترجمه میکنن و باعث اجرا شدنشون میشن.ولی یه ذره تفاوت بین چگونگی اجرا دستوراتشون هست.
این که زبان compiler کل دستوراتو میخونه و ترجمه میکنه بعدش اجرا میکنه ولی زبان interpreter دستورات همزمان و بصورت خط به خط ترجمه و اجرا میکنه.برای همین زبان تفسیری قدری کندتره.
این تفاوت اصلی بود ولی اگه بخوایم عمیق تر نگاه کنیم زبان تفسیری وابسته به نرم افزار مفسرش هست ولی زبان compiler وابسته به سیستم عامله که این یعنی به غیر از سیستم عامل مورد نظرش چیز دیگه ای رو support نمیکنه.
و اگه بخوایم خیلی ریز بینانه تر نگاه کنیم،زبان تفسیری چون دستوراتو خط به خط اجرا میکنه رم و cpu رو به طور کامل استفاده میکنه که این یعنی افت سرعت و زمان بیشتر.
ولی زبان compiler این طور نیست و چون به سرعت ترجمه شده و بعدش اجرا میشه و همه اینا زمان کمتری رو میگیرن،برای همین از رم و cpu کمتر استفاده میکنه.یا اگرم زیاد استفاده کنه لگ شدنش فقط برای چند صدم ثانیس…برخلاف زبان تفسیری.
و اما امان از اون روزی که چند هزار خط برنامه داخل زبان compiler نوشتی و یه ارور کوچیک بده :دی
زبان تفسیری مثل javascript که امروزه همه باهاش آشنایی داریم و یه بخشی از کاربردش مکمل html بودنه.
اما زبان compiler مثل ++c و #c و ویژوال بیسیک دوست داشتنی :)
دوست عزیز فقط خواستم مقالتون رو کاملتر کنم :) امیدوارم کمک کرده باشم :)
بسیار عالی و روان توضیح دادید ممنون