فهرست مطالب:
- کامپایلر - چیست؟
- کامپایلر و مفسر - شباهت ها و تفاوت ها
- طبقه بندی کامپایلر
- دستگاه کامپایلر
- زبان های برنامه نویسی و روش های ترجمه
- مزایا و معایب کامپایلرها و مفسرها. برنامه های کاربردی
تصویری: کامپایلر چیست یا چگونه به رایانه بفهمانیم که از آن چه می خواهید؟
2024 نویسنده: Henry Conors | [email protected]. آخرین اصلاح شده: 2024-02-12 06:30
مرحله پایانی ایجاد یک برنامه، ترجمه یک الگوریتم نوشته شده در یکی از زبان های برنامه نویسی (C/C++، Pascal و غیره) به یک زبان ماشین سطح پایین است. این به دلیل این واقعیت است که برای انجام هر کاری، رایانه ها باید دستوراتی را به زبانی که آنها می فهمند، نزدیک به باینری و با ساختارهای داده اولیه (بیت، بایت یا کلمه) داده شود. فرآیند ترجمه عبارات دامنه خاص زبان های سطح بالا به کد باینری ترجمه نامیده می شود. دو روش ترجمه وجود دارد - تالیف و تفسیر.
کامپایلر - چیست؟
تجزیه و تحلیل بسیاری از تفاسیر از اصطلاحات "کامپایلر" و "کامپایل" به ما امکان می دهد تعریف زیر را برجسته کنیم. کامپایلر برنامه ای است که برای ترجمه متن یک الگوریتم منبع از یک زبان سطح بالا به مجموعه ای معادل از دستورالعمل ها در یک زبان ماشین گرا طراحی شده است. این به اصطلاح کد شی است، برای مونتاژ بعدی کد شی به دست آمده در یک ماژول برنامه آماده برای استفاده.
کامپایلر و مفسر - شباهت ها و تفاوت ها
مفسر ابزاری است کهو همچنین یک کامپایلر، طراحی شده برای ترجمه کد منبع به کد ماشین. با این حال، برخلاف کامپایلر، مفسر هر بار با برنامه اجرا می شود و ترجمه را خط به خط انجام می دهد.
می توان گفت که کامپایلر و مفسر پردازشگرهای زبان هستند که به رایانه اجازه می دهند دستورات داده شده توسط برنامه نویس را شناسایی و اجرا کند.
طبقه بندی کامپایلر
کامپایلرها عمدتاً بر اساس ویژگیهای مرتبط با حوزه کاربرد عملی آنها طبقهبندی میشوند.
کامپایلر Vectorizing ابزاری است که کد منبع را به کد شی ترجمه می کند و برای رایانه های مجهز به پردازنده های برداری تطبیق داده شده است.
یک کامپایلر منعطف به یک زبان سطح بالا به صورت مدولار برنامه ریزی شده است. مدیریت آن با استفاده از جداول انجام می شود. همچنین می توان آن را با استفاده از کامپایلر کامپایلرها اجرا کرد.
کامپایلر افزایشی یک پردازشگر زبان است که قطعات جداگانه ای از کد منبع و اضافات به آن را دوباره ترجمه می کند. با این حال، از کامپایل مجدد کل برنامه جلوگیری می کند.
کامپایلر تفسیری (پله ای) ابزاری است که به طور متوالی کامپایل مستقل هر عبارت یا دستور یک کد منبع سطح بالا را انجام می دهد.
کامپایلر کامپایلر مترجمی است که قادر به پذیرش توضیحات رسمی برای یک زبان برنامه نویسی و ایجاد مستقل کامپایلر برای هر زبانی است.
کامپایلر اشکال زدایی به شما امکان می دهد انواع خطاهای نحوی ایجاد شده در هنگام نوشتن کد منبع را پیدا و رفع کنید
یک کامپایلر مقیم یک مکان دائمی در RAM اشغال می کند و بنابراین با طیف وسیعی از وظایف قابل استفاده مجدد است.
کامپایلر خود تالیف شده به همان زبان ترجمه نوشته شده است.
کامپایلر جهانی بر اساس توصیف رسمی پارامترهای معنایی و نحوی زبان ورودی است. اجزای اصلی چنین ابزاری، بارگذارهای هسته، نحوی و معنایی هستند.
دستگاه کامپایلر
یک کامپایلر و یک پیوند دهنده در قلب هر کامپایلری قرار دارند. اغلب، هنگام کامپایل، از یک پیوند دهنده خارجی استفاده می شود و خود کامپایلر فقط عملکرد ترجمه را انجام می دهد. همچنین اتفاق میافتد که کامپایلر بهعنوان یک نوع برنامه مدیر پیادهسازی میشود که با مترجم (یا مترجمها، در صورت استفاده از زبانهای برنامهنویسی مختلف هنگام نوشتن کد منبع) و پیوند دهنده مرتبط است و در صورت لزوم اجرای آنها را آغاز میکند.
زبان های برنامه نویسی و روش های ترجمه
علیرغم این واقعیت که یک برنامه نوشته شده در هر زبان برنامه نویسی را می توان هم کامپایل و هم تفسیر کرد، بسیاری از زبان های سطح بالا مستعد این یا آن روش ترجمه هستند. بنابراین، زبان C در ابتدا برای کامپایل و جاوا - برای تفسیر برنامه نوشته شده طراحی شده است. در حال توسعه هستندکامپایلرهای C به دلیل سطح نسبتا پایین و تعداد کمی از عناصر ساختاری بسیار آسان هستند.
مزایا و معایب کامپایلرها و مفسرها. برنامه های کاربردی
توجه داشته باشید که برنامه های کامپایل شده سریعتر از برنامه های تفسیر شده هستند، اما در عین حال، کد ماشین به دست آمده در نتیجه کامپایل به پلت فرم سخت افزار بستگی دارد. بنابراین، برنامه ای که برای ویندوز نوشته و کامپایل شده است، به عنوان مثال، در لینوکس کار نخواهد کرد. بنابراین، در مورد برنامه های اینترنتی، زمانی که نمی توان از قبل گفت که در چه محیطی کار می کنند، از تفسیر یا بایت کد استفاده می کنند (در این حالت، برنامه منبع به یک فرم میانی تبدیل می شود که می تواند روی سخت افزارهای مختلف اجرا شود. پلت فرم).
توصیه شده:
یک گوشواره در ناف - و شما آن را می خواهید، و آن را سوراخ می کند! مراقبت مناسب از پیرسینگ
زیورآلات بدلیجات براق در ناف، روی بینی یا روی زبان… امروزه معیار زیبایی و زیبایی شناسی محسوب می شود. اما در پی استایل، سلامتی خود را کاملاً فراموش می کنیم. هر سوراخی، چه گوشواره در ناف باشد و چه توپ روی زبان، شوخی خطرناکی با بدن شماست! اگر فکر می کنید که ما اکنون با تمام قدرت شروع به منصرف کردن شما از ایده سوراخ کردن خواهیم کرد، اینطور نیست. به تمام دخترانی که تمایل به سوراخ کردن ناف خود را دارند به سادگی توصیه می کنیم این مقاله را مطالعه کنند
بزرگترین گل جهان: شگفت زده خواهید شد
رافلزیا - این خلقت طبیعت است که عنوان افتخار "بزرگترین گل جهان" را یدک می کشد. درست است، این گیاه نه تنها با اندازه خود، بلکه با سایر ویژگی هایش نیز شگفت زده می شود، که ارتباط چندانی با ایده های معمول در مورد گل ها ندارند
چرا مطالعه مجتمع های طبیعی و حفظ اجزای رایانه شخصی مهم است؟
چرا مطالعه مجموعه های طبیعی در مقیاس های مختلف مهم است؟ شناخت اجزای رایانه شخصی، روابط متقابل آنها به ما این امکان را می دهد که به محیط زیست آسیب نرسانیم، آن را بهبود بخشیم و برای نسل های آینده حفظ کنیم
می خواهید بدانید قارچ شیری کجا رشد می کند؟
هر جمع کننده قارچ تأیید می کند که قارچ های شور، به ویژه قارچ های خام، غذای عالی هستند. با این حال، جمع آوری آنها همیشه امکان پذیر نیست، حتی پس از باران های شدید تابستان. امروز در مورد محل رشد قارچ و چه نوع محیطی برای آن مساعد است صحبت خواهیم کرد
"اگر صلح می خواهید، برای جنگ آماده شوید!" و عبارات مهم دیگر
بسیاری از عبارات جالب مورخان بزرگ باستان، پیروان فلسفه و دانشمندان در هر زمان و به ویژه اکنون کاملاً مرتبط هستند. پیشینیان ما چه افکاری را برای ما به یادگار گذاشتند؟ و آنها به ما چه می گویند؟ این چیزی است که ما سعی خواهیم کرد در این مقاله بدانیم