لغة نقل السجل

في علوم الحاسوب ، تُعدّ لغة نقل السجلات ( RTL ) نوعًا من التمثيل الوسيط (IR) القريب جدًا من لغة التجميع ، كما هو الحال في المترجمات . تُستخدم هذه اللغة لوصف تدفق البيانات على مستوى نقل السجلات في بنية المعالج . [ 1 ] غالبًا ما تستخدم الأبحاث الأكاديمية والكتب الدراسية شكلًا من أشكال RTL كلغة تجميع محايدة للبنية. يُستخدم مصطلح RTL كاسم لتمثيل وسيط محدد في العديد من المترجمات، بما في ذلك مجموعة مترجمات جنو (GCC)، وزيفير، ومشروعي المترجمات الأوروبيين سيركو وكومب سيرت .

تاريخ

تم وصف الفكرة الكامنة وراء RTL لأول مرة في تصميم وتطبيق مُحسِّن ثقب الباب القابل لإعادة التوجيه . [ 2 ]

مجلس التعاون الخليجي

في GCC، يتم توليد RTL من تمثيل GIMPLE ، ويتم تحويله عبر مراحل مختلفة في الطرفية الوسطى لـ GCC ، ثم يتم تحويله إلى لغة التجميع. [ 3 ]

عادةً ما تتم كتابة RTL الخاصة بـ GCC بشكل يشبه تعبير S في لغة Lisp :

( مجموعة ( reg: SI 140 ) ( زائد: SI ( reg: SI 138 ) ( reg: SI 139 )))

يُشير هذا التعبير الجانبي إلى "جمع محتويات السجل 138 مع محتويات السجل 139 وتخزين النتيجة في السجل 140". يُحدد SI نمط الوصول لكل سجل. في هذا المثال، هو "SImode"، أي "الوصول إلى السجل كعدد صحيح واحد بحجم 32 بت".

يعتمد تسلسل RTL المُولّد جزئيًا على خصائص المعالج الذي يُولّد له GCC التعليمات البرمجية. مع ذلك، فإن معنى RTL مستقل إلى حد كبير عن المعالج المستهدف: إذ يُمكن عادةً قراءة وفهم جزء من RTL دون معرفة المعالج الذي وُلد من أجله. وبالمثل، لا يعتمد معنى RTL عادةً على لغة البرمجة الأصلية عالية المستوى للبرنامج.

لغة نقل السجلات هي نظام للتعبير الرمزي عن تسلسلات العمليات الدقيقة بين سجلات وحدة رقمية. وهي أداة ملائمة لوصف التنظيم الداخلي للحواسيب الرقمية بطريقة موجزة ودقيقة. كما يمكن استخدامها لتسهيل عملية تصميم الأنظمة الرقمية. [ 4 ]

مراجع

  1. ماهاني، نيجين (16 يناير 2013). "تفعيل نمذجة مستوى نقل السجلات ومستوى المعاملات في لغة آدا" . رسائل ACM SIGAda Ada . 32 (2): 9-16 . doi : 10.1145/2429574.2429576 . تاريخ الاسترجاع: 8 سبتمبر 2024 .
  2. "ديفيدسون وفريزر؛ تصميم وتطبيق مُحسِّن فتحة الباب القابل لإعادة التوجيه ؛ ToPLaS v2(2) 191-202 (أبريل 1980)" (ملف PDF) . مؤرشف من الأصل (ملف PDF) بتاريخ 23 فبراير 2024. تم الاطلاع عليه بتاريخ 3 يناير 2009 .
  3. "RTL (مجموعة مترجمات GNU (GCC) الداخلية)" . gcc.gnu.org . تم الاطلاع عليه بتاريخ 14-01-2026 .
  4. مانو، موريس م. (1992). هندسة نظم الحاسوب ( الطبعة الثالثة). برنتيس هول. ص 94. ISBN   0131755633.