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

مؤلف: Laura McKinney
تاريخ الخلق: 1 أبريل 2021
تاريخ التحديث: 11 قد 2024
Anonim
كيفيه عمل ال interpreter وال compiler
فيديو: كيفيه عمل ال interpreter وال compiler

المحتوى


يلعب Compiler و Assembler دورًا مهمًا في تنفيذ البرنامج. تقوم بعض برامج التحويل البرمجي بإنشاء التعليمات البرمجية القابلة للتنفيذ مباشرة بدلاً من رمز التجميع. المحول البرمجي يأخذ التعليمات البرمجية المصدر preprocessed وترجمته إلى رمز التجميع. يأخذ المجمّع رمز التجميع من المحول البرمجي ويقوم بترجمته إلى رمز الجهاز القابل للنقل. في هذه المقالة ، ناقشت الاختلافات بين المترجم والتجميع بمساعدة مخطط المقارنة الموضح أدناه ، مجرد إلقاء نظرة.

  1. رسم بياني للمقارنة
  2. تعريف
  3. الاختلافات الرئيسية
  4. خاتمة

رسم بياني للمقارنة

أساس للمقارنةمترجم المجمع
الأساسييولد رمز لغة التجميع أو الكود القابل للتنفيذ مباشرة.يولد رمز الجهاز relocatable.
إدخالشفرة المصدر سابقة التجهيز.رمز لغة التجميع.
مراحل / يمرمراحل التجميع هي محلل معجمي ، محلل بناء الجملة ، محلل الدلالي ، توليد الشفرة الوسيطة ، تحسين الكود ، توليد الكود.المجمع يجعل اثنين يمر على المدخلات المقدمة.
انتاج |رمز التجميع الذي تم إنشاؤه بواسطة المترجم عبارة عن نسخة مختصرة من رمز الجهاز.يتم تمثيل رمز الجهاز relocatable الذي تم إنشاؤه بواسطة المجمّع برمز ثنائي.


تعريف المترجم

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

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

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

يتم تنفيذ التحويل البرمجي في المراحل التالية:

محلل معجم ، ومحلل بناء جملة ، ومحلل دلالي ، ومولد رمز وسيط ، ومحسن رمز ، ومولد رمز ، وجدول رمز ومعالج الأخطاء.


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

تعريف المجمع

تؤدي بعض برامج التحويل البرمجي مهمة المجمّع وتقوم بإنشاء رمز آلة قابل للنقل مباشرة بدلاً من رمز التجميع ، والذي يتم تمريره مباشرة إلى رابط / أداة التحميل. ال المجمع يأخذ كإدخال رمز التجميع التي تم إنشاؤها بواسطة المترجم وترجمته إلى رمز الجهاز relocatable.

دعونا نرى كيف يختلف رمز الجهاز عن رمز التجميع. رمز التجميع هل ذاكري نسخة من رمز الجهاز. وهذا يعني أن رمز التجميع يستخدم أسماء لتمثيل العمليات ويعطي أسماء لعناوين الذاكرة. من ناحية أخرى ، فإن كود الآلة الاستخدامات الرموز الثنائية لتمثيل العمليات وعناوين الذاكرة.

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

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

  1. الفرق الرئيسي بين المترجم والمجمع هو أن مترجم يولد رمز التجميع ويمكن لبعض المجمعين أيضا مباشرة توليد رمز قابل للتنفيذ في حين أن المجمع يولد رمز الجهاز relocatable.
  2. المترجم يأخذ مدخلات كود معالج مسبقا ولدت من قبل المعالج. من ناحية أخرى ، يأخذ المجمع رمز التجميع كمدخل.
  3. يتم التجميع في مرحلتين مرحلة التحليل و مرحلة التوليف. في مرحلة التحليل ، يمر المدخلات محلل معجم ، محلل بناء جملة ، محلل دلالي في حين أن تحليل التوليف يحدث عبر مولد رمز وسيط ، رمز محسن ، مولد رمز. من ناحية أخرى ، يمر المجمّع عبر الإدخال مرحلتين. تكتشف المرحلة الأولى معرفات وعناوين تخصيص لها في المرحلة الثانية يتم ترجمة رمز التجميع إلى رمز ثنائي.
  4. رمز التجميع الذي تم إنشاؤه بواسطة المترجم هو نسخة ذاكري من رمز الجهاز. ومع ذلك ، رمز الجهاز relocatable التي تم إنشاؤها بواسطة المجمّع هو رمز relocatable الثنائية.

خاتمة:

قد لا تكون أداة التجميع مطلوبة لأن بعض برامج التحويل البرمجي تنشئ تعليمات برمجية قابلة للتنفيذ مباشرة. في حالة استخدام أداة التجميع ، يتطلب الأمر رابطًا لربط جميع المكتبات المدمجة بوظائف المكتبة المستخدمة في التعليمات البرمجية المصدر.