ما هو مترجم البرمجة؟

المترجم هو برنامج يحول كود برمجة الكمبيوتر المكتوب من قبل مبرمج بشري إلى كود ثنائي (رمز الآلة) يمكن فهمه وتنفيذه بواسطة وحدة معالجة مركزية محددة. فعل التحول مصدر الرمز في رمز الجهاز يسمى "تجميع". عندما يتم تحويل كل الشفرة في وقت واحد قبل وصولها إلى الأنظمة الأساسية التي تقوم بتشغيلها ، تسمى العملية تجميع مسبق (AOT).

ما هي لغات البرمجة التي تستخدم مترجم AOT؟

تتطلب العديد من لغات البرمجة المعروفة مترجمًا بما في ذلك:

  • فورتران
  • باسكال
  • لغة التجميع
  • ج
  • C ++
  • سويفت

قبل Java و C # ، تم تجميع جميع برامج الكمبيوتر أو فسرت.

ماذا عن الرمز المفسر؟

التعليمات البرمجية التي يتم تفسيرها تنفذ التعليمات في برنامج دون تجميعها في لغة الآلة. يوزع الكود المفسر الكود المصدر مباشرة ، أو يقترن بجهاز افتراضي يترجم الكود للجهاز في وقت التنفيذ ، أو يستفيد من الكود المترجم مسبقًا. جافا سكريبت عادة ما يتم تفسيره.

تعمل التعليمات البرمجية المترجمة بشكل أسرع من التعليمات البرمجية المفسرة لأنها لا تحتاج إلى القيام بأي عمل في وقت حدوث الإجراء. تم العمل بالفعل.

ما هي لغات البرمجة التي تستخدم مترجم JIT؟

جافا و C # استخدام المترجمات فقط في الوقت المناسب. المجمعات في الوقت المناسب هي مزيج من مترجمين ومترجمين AOT. بعد كتابة برنامج Java ، يحول المترجم JIT الشفرة إلى رمز ثانوي بدلاً من رمز يحتوي على تعليمات لمعالج النظام الأساسي لجهاز معين. الرمز الفرعي مستقل عن النظام الأساسي ويمكن إرساله وتشغيله على أي نظام أساسي يدعم Java. إلى حد ما ، يتم تجميع البرنامج في عملية من مرحلتين.

instagram viewer

وبالمثل ، يستخدم C # مترجم JIT الذي يعد جزءًا من Common Language Runtime ، والذي يدير تنفيذ جميع تطبيقات .NET. كل منصة هدف لها مترجم JIT. طالما أن النظام الأساسي يمكن فهم تحويل لغة البايت كود الوسيطة ، يتم تشغيل البرنامج.

إيجابيات وسلبيات تجميع AOT و JIT

يوفر التجميع المسبق للوقت (AOT) وقت بدء أسرع ، خاصة عند تنفيذ جزء كبير من التعليمات البرمجية عند بدء التشغيل. ومع ذلك ، فإنه يتطلب المزيد من الذاكرة ومساحة أكبر على القرص. يجب أن يستهدف تجميع JOT الأقل قدرة من بين جميع منصات التنفيذ الممكنة.

يعمل التجميع في الوقت المناسب (JIT) على تعريف النظام الأساسي المستهدف أثناء تشغيله وإعادة تجميعه بسرعة فائقة لتوفير أداء محسن. ينشئ JIT رمزًا محسنًا لأنه يستهدف النظام الأساسي الحالي ، على الرغم من أن تشغيله يستغرق عادةً وقتًا أطول من التعليمات البرمجية المترجمة AOT.

instagram story viewer