سؤال

ما هو بالضبط الفرق بين اللغة المفسرة والتجميع. على سبيل المثال ، أريد طباعة الأرقام من 1 إلى 100. كيف يحدث تسلسل العمليات بالضبط في حالة مترجم وترجم.

علاوة على ذلك ، إذا أمكن ، يرجى تزويد لي الخطوات وفقًا للغة Java ولغة C.

شكرًا

هل كانت مفيدة؟

المحلول

اللغة المترجمة هي لغة تحول الرمز المصدر إلى رمز الجهاز. المعروف أيضا باسم التطبيق الأصلي.

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

تم تجميع C ، وتحويل الكود المصدر:

for (int i=1;i<=100;i++) { printf("%d",i); }

في التجميع ، ثم في رمز الجهاز. يجلب المعالج كل تعليمات الجهاز وينفذها. هذا سريع جدا.

Java ، ومع ذلك ، يحول رمز المصدر إلى رمز بايت intermidiate. في وقت التشغيل ، يتم تشغيله على "آلات افتراضية" ، وهو يستطيع كن أبطأ من تطبيق تجميع محلي.

نصائح أخرى

هذا بالفعل نوع من الأسئلة الشائعة على stackoverflow :-)

على سبيل المثال ، راجع الإجابات التالية:

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

كيف يعمل مترجم/مترجم

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top