Product Design, Manufacturing & Innovation Resources
بيت » بنية المترجم ثلاثية المراحل

بنية المترجم ثلاثية المراحل

1980
مبرمج يعمل على هيكل مترجم ثلاثي المراحل في مكتب تطوير البرمجيات.

(صورة تم إنشاؤها للتوضيح فقط)

عادةً ما يُبنى المُجمِّع الحديث على ثلاث مراحل: الواجهة الأمامية، والوسطى، والخلفية. تُحلِّل الواجهة الأمامية الكود المصدري، وتتحقق من صحته، وتُنشئ تمثيلًا وسيطًا (IR). يُجري الوسطي تحسينات على هذا التمثيل. ثم يُترجم الخلفي التمثيل الوسيط المُحسَّن إلى كود الجهاز المُستهدف لبنية وحدة المعالجة المركزية (CPU) مُحدَّدة.

يوفر هذا التصميم المعياري ثلاثي المراحل فصلاً حاسماً بين الاهتمامات. تعتمد الواجهة الأمامية على اللغة ولكنها مستقلة عن الآلة؛ فهي تفهم قواعد ودلالات لغة معينة مثل C++ أو Rust. مخرجاتها، التمثيل الوسيط (IR)، عبارة عن بنية بيانات مجردة مستقلة عن الآلة، مثل شجرة القواعد المجردة (AST) أو الكود ثلاثي العناوين. هذا يفصل لغة المصدر عن الآلة المستهدفة.

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

أخيرًا، تعتمد الواجهة الخلفية على الآلة دون أن تعتمد على اللغة. فهي تأخذ IR المُحسّنة وتُجري اختيار التعليمات، وتخصيص السجلات، وجدولة التعليمات لتوليد شيفرة برمجية فعالة لبنية هدف محددة، مثل x86-64 أو ARM. تُمكّن هذه البنية من بناء مُجمّعات تدعم M لغة وN هدفًا من خلال كتابة M واجهة أمامية وN واجهة خلفية، بدلاً من M*N مُجمّع فردي. يُجسّد هذا المبدأ في البنى التحتية الحديثة للمُجمّعات مثل GCC وLLVM.

UNESCO Nomenclature: 1203
- علوم الحاسب الآلي

يكتب

النظام التجريدي

الاضطراب

التأسيسية

الاستخدام

الاستخدام الواسع النطاق

السلائف

  • تصميمات المترجم المتجانسة المبكرة
  • مفهوم التجريد في هندسة البرمجيات
  • تطور اللغات الوسيطة في الأنظمة المبكرة
  • البحث في البرامج المحمولة (على سبيل المثال، نظام p-code)

التطبيقات

  • المُجمِّعون الذين يُمكن إعادة استهدافهم (على سبيل المثال، GCC، llvm)
  • التجميع المتبادل لمنصات الأجهزة المختلفة
  • أطر تحسين مستقلة عن اللغة
  • تطوير لغات برمجة جديدة من خلال إنشاء واجهة أمامية جديدة فقط
  • أدوات التحليل الثابتة التي تعمل على التمثيل الوسيط

براءات الاختراع:

NA

أفكار ابتكارات محتملة

بسبب عمليات جمع البيانات من خلال برامج الروبوت، والتي تتجاوز حاليًا 40 ألفًا يوميًا، فإن هذا المحتوى مخصص لأعضاء المجتمع فقط.
> تسجيل الدخول < أو > سجل < (مجاني 100٪) للوصول إلى هذا، وكذلك جميع المحتويات والأدوات الأخرى المقيدة.

يتعلق بـ: تصميم المترجم، الواجهة الأمامية، الواجهة الوسطى، الواجهة الخلفية، التمثيل الوسيط، IR، التحسين، توليد التعليمات البرمجية، النمطية، GCC، llvm.

السياق التاريخي

بنية المترجم ثلاثية المراحل

1975-06-01
1980
1980
1980
1986-01-01
1990
1990
1973
1980
1980
1980
1982-07-01
1988-06-01
1990
1993

(إذا كان التاريخ غير معروف أو غير ذي صلة، على سبيل المثال "ميكانيكا الموائع"، يتم توفير تقدير تقريبي لظهوره الملحوظ)

الاختراع والابتكار والمبادئ التقنية ذات الصلة

الصور بالحجم الكامل والتنزيلات متاحة فقط 100% مجاناً للأعضاء المسجلين.