مترجم مقابل مترجم – الفرق بينهما

الفرق الرئيسي بين المترجم والمترجم

  • يقوم المترجم بتحويل التعليمات البرمجية المكتوبة بلغة برمجة عالية المستوى إلى رمز الآلة مرة واحدة قبل تشغيل البرنامج، بينما يقوم المترجم الفوري بتحويل كل بيان برنامج عالي المستوى، واحدًا تلو الآخر، إلى رمز الآلة، أثناء تشغيل البرنامج.
  • تعمل التعليمات البرمجية المجمعة بشكل أسرع، بينما تعمل التعليمات البرمجية المفسرة بشكل أبطأ.
  • يعرض المترجم جميع الأخطاء بعد التجميع، ومن ناحية أخرى، يعرض المترجم أخطاء كل سطر واحدًا تلو الآخر.
  • يعتمد المترجم على نموذج ربط وتحميل الترجمة، في حين يعتمد المترجم على طريقة التفسير.
  • يأخذ المترجم برنامجًا كاملاً، بينما يأخذ المترجم سطرًا واحدًا من التعليمات البرمجية.
الفرق بين المترجم والمترجم
مترجم مقابل مترجم

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

المترجم هو برنامج كمبيوتر يحول الكود المكتوب بلغة برمجة عالية المستوى إلى كود الآلة. وهو برنامج يترجم الكود الذي يمكن للإنسان قراءته إلى لغة يفهمها معالج الكمبيوتر (بتات ثنائية 1 و 0). يعالج الكمبيوتر كود الآلة لأداء المهام المقابلة.

A مترجم يجب أن يتوافق البرنامج مع قواعد بناء الجملة الخاصة بلغة البرمجة التي كُتب بها. ومع ذلك، فإن المترجم هو مجرد برنامج ولا يمكنه إصلاح الأخطاء الموجودة في هذا البرنامج. لذا، إذا ارتكبت خطأ، فأنت بحاجة إلى إجراء تغييرات في قواعد بناء جملة برنامجك. وإلا فلن يتم تجميعه.

ما هو المترجم الفوري؟

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

الفرق بين المترجم والمترجم

فيما يلي فرق مهم بين المترجم والمترجم الفوري:

أساس الاختلاف مترجم مترجم
خطوات البرمجة
  • إنشاء البرنامج.
  • سيقوم Compile بتحليل أو تحليل جميع عبارات اللغة للتأكد من صحتها. إذا كان غير صحيح، يلقي خطأ
  • إذا لم يكن هناك خطأ، سيقوم المترجم بتحويل كود المصدر إلى كود الجهاز.
  • يقوم بربط ملفات التعليمات البرمجية المختلفة في برنامج قابل للتشغيل (يعرف باسم exe)
  • تشغيل البرنامج
  • إنشاء البرنامج
  • لا يوجد ربط للملفات أو إنشاء كود الجهاز
  • يتم تنفيذ بيانات المصدر سطرًا تلو الآخر أثناء التنفيذ
ميزة تمت ترجمة رمز البرنامج بالفعل إلى رمز الجهاز. وبالتالي، فإن وقت تنفيذ التعليمات البرمجية أقل. المترجمون أسهل في الاستخدام، خاصة للمبتدئين.
مساوئ لا يمكنك تغيير البرنامج دون الرجوع إلى الكود المصدري. يمكن تشغيل البرامج المترجمة على أجهزة الكمبيوتر التي تحتوي على المترجم المطابق.
كود الآلة تخزين لغة الآلة كرمز الآلة على القرص عدم حفظ رمز الجهاز على الإطلاق.
مدة العرض تعمل التعليمات البرمجية المترجمة بشكل أسرع تعمل التعليمات البرمجية المفسرة بشكل أبطأ
الموديل يعتمد على نموذج ربط وتحميل ترجمة اللغة. يعتمد على طريقة التفسير.
جيل البرنامج يقوم بإنشاء برنامج الإخراج (على شكل exe) والذي يمكن تشغيله بشكل مستقل عن البرنامج الأصلي. لا تولد برنامج الإخراج. لذلك يقومون بتقييم البرنامج المصدر في كل مرة أثناء التنفيذ.
التنفيذ تنفيذ البرنامج منفصل عن التجميع. يتم تنفيذه فقط بعد تجميع برنامج الإخراج بأكمله. يعد تنفيذ البرنامج جزءًا من عملية التفسير، لذلك يتم تنفيذه سطرًا تلو الآخر.
متطلبات الذاكرة Target يتم تنفيذ البرنامج بشكل مستقل ولا يتطلب وجود مترجم في الذاكرة. المترجم موجود في الذاكرة أثناء الترجمة.
أفضل مناسبة ل مقتصر على جهاز الهدف المحدد ولا يمكن نقله. C و C++ هي لغة البرمجة الأكثر شعبية والتي تستخدم نموذج التجميع. بالنسبة لبيئات الويب، حيث تكون أوقات التحميل مهمة. نظرًا لأنه تم إجراء التحليل الشامل، تستغرق عمليات التجميع وقتًا أطول نسبيًا لتجميع حتى التعليمات البرمجية الصغيرة التي قد لا يتم تشغيلها عدة مرات. في مثل هذه الحالات يكون المترجمون أفضل.
Code التحسين يرى المترجم الكود بأكمله مقدمًا. وبالتالي، يقومون بإجراء الكثير من التحسينات التي تجعل التعليمات البرمجية تعمل بشكل أسرع يرى المترجمون التعليمات البرمجية سطرًا تلو الآخر، وبالتالي فإن التحسينات ليست قوية مثل المترجمين
النوع الديناميكيping من الصعب التنفيذ حيث لا يستطيع المترجمون التنبؤ بما يحدث في وقت الدوران. تدعم اللغات المفسرة النوع الديناميكيping
الأستعمال إنه الأنسب لبيئة الإنتاج هو الأنسب لبيئة البرنامج والتطوير.
تنفيذ خطأ يعرض المترجم كافة الأخطاء والتحذيرات في وقت الترجمة. ولذلك، لا يمكنك تشغيل البرنامج دون إصلاح الأخطاء يقرأ المترجم عبارة واحدة ويظهر الخطأ إن وجد. يجب عليك تصحيح الخطأ لتفسير السطر التالي.
إدخال يستغرق برنامجا كاملا يستغرق سطرًا واحدًا من التعليمات البرمجية.
الناتج يقوم المترجمون بإنشاء كود الآلة الوسيطة. لا يقوم المترجم مطلقًا بإنشاء أي رمز جهاز وسيط.
أخطاء عرض جميع الأخطاء بعد التجميع، كلها في نفس الوقت. يعرض جميع الأخطاء في كل سطر واحدًا تلو الآخر.
لغات البرمجة المتعلقة C, C++، سي#، سكالا، Java كل استخدام المتوافق. PHP, بيرل, روبي يستخدم مترجما.

دور المترجم

  • يقرأ الممتثلون الكود المصدري، ويخرجون الكود القابل للتنفيذ
  • يترجم البرامج المكتوبة بلغة عالية المستوى إلى تعليمات يمكن للكمبيوتر فهمها. يقوم بتحويل النص الذي يكتبه المبرمج إلى تنسيق يمكن لوحدة المعالجة المركزية فهمه.
  • عملية التجميع معقدة نسبيا. يقضي الكثير من الوقت في تحليل البرنامج ومعالجته.
  • والنتيجة القابلة للتنفيذ هي شكل من أشكال التعليمات البرمجية الثنائية الخاصة بالجهاز.

تحقق أيضا: - برنامج تعليمي لتصميم المترجم للمبتدئين

دور المترجم

  • يقوم المترجم بتحويل التعليمات البرمجية المصدر سطرًا تلو الآخر أثناء وقت التشغيل.
  • يقوم برنامج Interpret بترجمة البرنامج المكتوب بلغة عالية المستوى بشكل كامل إلى لغة مستوى الآلة.
  • يتيح المترجم تقييم البرنامج وتعديله أثناء تنفيذه.
  • قضاء وقت أقل نسبيًا في تحليل البرنامج ومعالجته
  • تنفيذ البرنامج بطيء نسبيًا مقارنة بالمترجم

لغات عالية المستوى

لغات عالية المستوى، مثل C, C++تعتبر لغات البرمجة مثل JAVA وما إلى ذلك قريبة جدًا من اللغة الإنجليزية. فهي تسهل عملية البرمجة. ومع ذلك، يجب ترجمتها إلى لغة الآلة قبل التنفيذ. تتم عملية الترجمة هذه إما بواسطة مُجمِّع أو مُفسِّر. تُعرف أيضًا باسم الكود المصدر.

كود الآلة

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

رمز التعليمة

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

Java يتم تجميعها وتفسيرها.

لاستغلال المزايا النسبية للمترجمين، يتم استخدام مترجمين فوريين مثل بعض لغات البرمجة Java يتم تجميعها وتفسيرها. ال Java يتم تجميع الكود نفسه في كائن Codeأثناء التشغيل، JVM يفسر رمز الكائن إلى رمز الجهاز للكمبيوتر الهدف.

تحقق أيضا: - Java برنامج تعليمي للمبتدئين: تعلم الأساسية Java برمجة وتطوير

تلخيص هذه التدوينة بـ: