مجمع مقابل مترجم
 

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

ما هو المجمع؟

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

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

المترجم هو برنامج كمبيوتر أو أداة تنفذ تعليمات البرمجة. يجوز للمترجم إما تنفيذ التعليمات البرمجية المصدر مباشرة أو تحويل المصدر إلى كود وسيطة وتنفيذها مباشرة أو تنفيذ التعليمات البرمجية المترجمة مسبقًا التي ينتجها مترجم (بعض أنظمة المترجم تتضمن مترجم لهذه المهمة). لغات مثل Perl و Python و MATLAB و Ruby هي أمثلة على لغات البرمجة التي تستخدم شفرة وسيطة. يفسر UCSD Pascal الشفرة المترجمة مسبقًا. تقوم لغات مثل Java و BASIC و Samlltalk أولاً بتجميع المصدر إلى رمز متوسط ​​يسمى bytecode ثم ترجمته.

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

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