شبكة بحوث وتقارير ومعلومات
تجربة هيدر2
اليوم: السبت 27 ابريل 2024 , الساعة: 11:27 م


اخر المشاهدات
الأكثر قراءة
اعلانات

مرحبا بكم في شبكة بحوث وتقارير ومعلومات


عزيزي زائر شبكة بحوث وتقارير ومعلومات.. تم إعداد وإختيار هذا الموضوع [ تعرٌف على ] توليد الشيفرة # اخر تحديث اليوم 2024-04-27 فإن كان لديك ملاحظة او توجيه يمكنك مراسلتنا من خلال الخيارات الموجودة بالموضوع.. وكذلك يمكنك زيارة القسم , وهنا نبذه عنها وتصفح المواضيع المتنوعه... آخر تحديث للمعلومات بتاريخ اليوم 21/04/2024

اعلانات

[ تعرٌف على ] توليد الشيفرة # اخر تحديث اليوم 2024-04-27

آخر تحديث منذ 6 يوم و 12 ساعة
2 مشاهدة

تم النشر اليوم 2024-04-27 | توليد الشيفرة

المهام الرئيسية في مجال توليد الشفرة


الإضافة إلى التحويل الأساسي من التمثيل الوسيط إلى تسلسل خطي لتعليمات الآلة، يحاول مولد الشفرة تحسين الشفرة التي تم إنشاؤها بطريقة ما. المهام التي عادة ما تكون جزءًا من مرحلة «توليد الشفرة» تشمل: اختيار التعليمات: أي امر يستخدم
جدولة التعليمات: في أي ترتيب توضع هذه الأوامر. الجدولة هي تحسين السرعة التي يمكن أن يكون لها تأثير حاسم على خط أنابيب الآلات .
التوزيع للمسجل :توزيع المتغيرات لسجلات المعالج.
تنقيح البيانات: إذا لزم الأمر حتى تكون الشفرة صحيحة و منقحة.
يتم اختيار التعليمات من خلال الاستدعاء الذاتي العبور العكسي على شجرة بناء الجملة المجردة، ومطابقة تكوينات شجرة معينة مقابل القوالب ؛ على سبيل المثال، الشجرة W
:=
A
D
D
(
,
M
U
L
(
Y
,
Z
)
)
{\displaystyle W:=ADD(X,MUL(Y,Z))} د يتم تحويلها إلى تسلسل خطي من التعليمات عن طريق توليد متواليات بشكل متكرر لـ t
1
:=
{\displaystyle t1:=X} و t
2
:=
M
U
L
(
Y
,
Z
)
{\displaystyle t2:=MUL(Y,Z)} و ثم ابنعاث التعليمات A
D
D
W
,
t
1
,
t
2
{\displaystyle ADDW,t1,t2} . في المترجم الذي يستخدم لغة وسيطة، قد يكون هناك مرحلتان لاختيار التعليمات— الأولى لتحويل شجرة التحليل إلى شفرة وسيطة، والمرحلة ثانية في وقت لاحق بكثير لتحويل الشفرة الوسيطة إلى تعليمات من مجموعة تعليمات الآلة المستهدفة.المرحلة الثانية لا تتطلب عبور الشجرة ؛يمكن القيام بها خطيا، وعادة ما ينطوي على استبدال بسيط لعمليات اللغة الوسيطة مع ما يقابلها من عمليات الشفرة(بالإنجليزية: opcodes). إذا كان المترجم هو في الواقع مترجم لغوي, (على سبيل المثال التحويل من لغة Eiffel إلى C) عندئذ، قد تتضمن المرحلة الثانية لتوليد الشفرات بناء شجرة من الشفرة المتوسطة الخطية.

وقت تنفيذ توليد الشفرة


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

المفاهيم ذات الصلة


يمكن فهم المهمة الأساسية المتمثلة في أخذ المدخلات في لغة واحدة وإنتاج المخرجات بلغة غير مختلفة تمامًا من حيث عمليات النحو التوليدي التحليلي لنظرية اللغة الشكلية. وبالتالي، فإن بعض التقنيات التي تم تطويرها في الأصل للاستخدام في المترجمات أصبحت تستخدم بطرق أخرى أيضًا.على سبيل المثال، يأخذ ياك (بالإنجليزية: YACC) المدخلات بصيغة باكوس نور( بالإنجليزية:Backus-Naur form) ويقوم بتحويله إلى محلل في C.على الرغم من أنه تم إنشاؤه في الأصل للحصول على جيل تلقائي من محلل للمترجم، وكثيرا ما يستخدم ياك(yacc) لأتمتة كتابة التعليمات البرمجية التي تحتاج إلى تعديل في كل مرة يتم تغيير المواصفات. انعكاس
بشكل عام، يحاول محلل بناء الجملة والمحلل الدلالي استرداد هيكلة البرنامج من الشفرة المصدرية، بينما يستخدم مولد الشفرة هذه المعلومات الهيكلية (مثل نوع البيانات ) لانتاج شفرة.وبعبارة أخرى، يضيف الأول معلومات بينما يفقد الأخير بعض المعلومات.إحدى نتائج فقدان المعلومات هذا هو أن الانعكاس يصبح صعباً أو حتى مستحيلاً.لمواجهة هذه المشكلة، غالبًا ما يقوم مولِّد الشفرة بتضمين المعلومات النحوية والدلالية بالإضافة إلى الكود اللازم للتنفيذ.

شرح مبسط


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

 
التعليقات

لم يعلق احد حتى الآن .. كن اول من يعلق بالضغط هنا

أقسام شبكة بحوث وتقارير ومعلومات عملت لخدمة الزائر ليسهل عليه تصفح الموقع بسلاسة وأخذ المعلومات تصفح هذا الموضوع [ تعرٌف على ] توليد الشيفرة # اخر تحديث اليوم 2024-04-27 ويمكنك مراسلتنا في حال الملاحظات او التعديل او الإضافة او طلب حذف الموضوع ...آخر تعديل اليوم 21/04/2024


اعلانات العرب الآن