المترجمات



  المترجمات Translators

·         تقوم المترجمات بعمل دور الوسيط بين اللغة التي يستخدمها المبرمج واللغة التي يفهمها الحاسب (لغة الآلة).

·         المترجمات تعمل على تحويل البرامج المكتوبة بأي لغة برمجة إلى لغة الآلة.

 

   خطوات عمل البرنامج:

1.      تحديد المشكلة المراد عمل برنامج لحلها.

2.      تصميم طريقة حل لهذه المشكلة (خوارزمية).

3.      تصميم خريطة سير العمليات كنموذج لعمل البرنامج .

4.      اختيار لغة مناسبة من لغات البرمجة لكتابة البرنامج .

5.      اختبار دقة كفاءة البرنامج ومعالجة مابه من أخطاء .

بعد الانتهاء من كتابة البرنامج يسمى ماكتبناه بكود المصدر sore cod .

عند ترجمة البرنامج يتم تحويله إلى ملف قابل لتنفيذ(ملف تنفيذي) على دفعه واحدة أو بالمرور إلى عدة مراحل على حسب نوع المراحل.


  أنواع  المترجمات

أولا: Assembler المجمع

المجمع هو المترجم المخصص لترجمة لغة التجميع Language Assembler إلى لغة الإله .

 
   طريقة عمل المجمع :

1.      يقوم بالتعرف على لغة التجميع التي هي بذاتها قريبة من لغة الآلة.

2.      المتغيرات في لغة التجميع لا تكون أماكن محجوزة في الذاكرة ولكنها عبارة عن رموز محددة تكفئ قيمة هذه المتغيرات .

3.      المعالج يتعرف على هذه الرموز بسهولة تامة .

4.      المجمع يقوم بترجمة لغة التجميع إلى لغة ألآله بسرعة فائقة.

5.      سرعة ترجمة البرنامج يؤدي إلى سرعة فائقة في تنفيذ البرنامج.

6.      المجمع يوفر إمكانية اكتشاف الأخطاء.

7.      تصحيح الأخطاء يتم بسهولة وكفاءة عالية بواسطة إعادة التجميع Re-Assembly.

8.   المجمع يوفر أدوات مساعدة للكتابة البرامج بلغة التجميع مثل إمكانية الوصول إلى أي جزء من الكود بسهولة كبيرة ووجود تركيبات ومتغيرات سابقة التجهيز .

 

 ملاحظة :

المجمع لا يحول  البرنامج إلى لغة الآلة في الغالب ولكن يحول البرنامج إلى ملف شيئي object

ثم يتم تحويل الملف الشيئي عن طريقة ما يسمى بالرابط إلى الملف التنفيذي .
 

 
  لغات المستوى العالي

هي مجموعة تراكيب وتعليمات مكتوبة باللغة الانجليزية عند كتابة برنامج تكون هذه التراكيب جمل مفهومة ويكون مطلوب تحويل هذه الجمل إلى لغة يفهمها الحاسب .

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

وتوجهت أنظار وجهود الباحثين إلى تطوير لغات جديدة في البرمجة تعتمد على فكرة استخدام اللغة الانجليزية وأدا ذلك إلى ظهور أنواع جديدة من المترجمات لتفعيل استخدام اللغات فقام الباحثون بابتكار المفسرات Interpreter)  ) لتحويل أو ترجمة اللغات المستخدمة أو  ما سميت لاحقا بلغات المستوى العالي  إلى لغة الآلة . أمثلة على لغات المستوى العالي : C , C++,VB , باسكال , فوتران...,

 

   مميزات لغات المستوى العالي

1.      سهولة كتابة كود البرنامج بهذه اللغات.

2.      سهولة فهم كود البرنامج ومعرفة الغض منه.

3.      الإمكانيات الكبيرة لهذه اللغات تساعد على كتابة البرامج الكبيرة والأكثر تعقيداً.

4.      المرونة الكبيرة في التعامل مع أنواع البيانات المختلفة.

5.      ظهور هذه اللغات أدى اللي زيادة إنتاجية المبرمج.

6.      توفير الوقت والجهد على لمبرمجين .

7.      عدم الحاجة لحفظ الرموز والاحتفاظ بمراجع عند كتابة أي برنامج كما في لغات التجميع.

8.      ملائمة عمل هذه اللغات  على جميع أنواع الأجهزة المختلفة  وان حدث اختلاف يكون طفيف للغاية.
 

 
     المفسرات Interpreter

هي نوع من أنواع المترجمات تقوم بتحويل البرامج المكتوبة بإحدى لغات المستوى العالي إلى لغة الآلة وتعمل  محدده بعينها مثل VB, Java .

 

طريقة عمل المفسر :-

1.      يتم تحويل كود البرنامج إلى لغة الآلة سطراَ سطراَ.

2.      عندما ينتهي  المفسر من ترجمة السطر الأول ينتقل إلى السطر الثاني على الذاكرة وتتكرر هذه العملية حتى انتهاء كل الكود.

3.      الملف الناتج عن عملية التحويل هو ملف تنفيذي يتم تنفيذه مباشرة للحصول على النتائج .

 

ملاحظة :-

تسمى علمية ترجمة كود المصدر (البرنامج) إلى لغة الآلة باستخدام المفسرات بعملية الترجمة وقت التشغيل .

 

خواص المفسرات:-

1.      لا تحتاج إلى برامج مساعدة للحصول على ملف تنفيذي .

2.      تحتوي المفسرات على المكتبات الخاصة بها وهذه المكتبات تحتوي على الدوال التي تقوم بعمليات الإدخال والإخراج وحفظ وفتح الملف .

3.      الملف التنفيذي الناتج في المفسرات يكون قابل للتنفيذ مرة واحدة فقط .


مثال على المفسرات :
10 Time=20
20 Speed=1500
50 Distance=Speed*Time
60 Print Distance
100 end

 
   المترجمات :-

هي النوع الثاني من البرامج المساعدة التي تقوم بتحويل لغات المستوى العالي إلى لغة الآلة وتتم  هذه العملية على مرحلتين:-

1.      يتم تحويل كود البرنامج إلى ملف شيئي obj file)) .

2.      يتم ربط الملف الشيئي مع مكتبة الدوال القياسية بالغة المكتوب بها البرنامج مع ملفات الإدخال والإخراج للحصول على ملف تنفيذي .

 

   الخواص العامة للمترجمات

1.      Compiler  يقوم بتحويل البرنامج دفعة واحدة كاملاَ إلى لغة الآلة .

2.      يتم التحويل في البداية إلى حالة وسطية تسمى شفرات شيئية .

3.      يتم تحويل الملف الوسطي الهيكلي إلى ملف تنفيذي  باستخدام ما يسمى  الرابط.

4.      الملفات التنفيذية الناتجة عن Compiler  تكون سريعة جداَ مقارنة بالمفسرات .

5.      الملفات الشيئية الناتجة عن Compiler  يمكن إن تعمل على نوع من الأجهزة ولا تعمل على باقي الأجهزة .

6.      Compiler  تقوم بالعمل على لغات من المستوى الرفيع مثل C, C++, باسكال .

 
   ظاهرة الروابط مع ظهور المترجمات

  
ظاهرة الروابط مع ظهور المترجمات التي تحول الملفات أو البرامج إلى ملفات تنفيذية على أكثر من مرحلة فتكون المرحلة الأولى هي عملية التحويل إلى ملف شيئي (Obj file) وهذا النوع من الملفات لا يمكن تنفيذه ألا بعد ربطة مع مكتبة الدوال وملفات إدخال وإخراج البيانات يقوم بعلمية الربط هذه ما يسمى ب(linker) الرابط .لإنتاج ملف تنفيذي .


   خطوات ربط الملف الهيكلي Obj file مع مكتبة الدوال:

1.      يتم حفظ  الملف الهيكلي Obj file بمرحلة وسطية في عملية ترجمة البرامج .

2.      يتم تحديد عنوان الملف مع أوساط التخزين .

3.   يتم التبادل المعلومات بين هذا الملف مع كل مكتبة الدوال وملفات الإدخال والإخراج وكذلك مع الأجهزة الطرفية مثل لوحة المفاتيح والشاشة والطابعة .
 

هناك 5 تعليقات:

  1. ممكن اسم المرجع او المصدر للمقال ده

    ردحذف
  2. والله كلام مفيد وجميل جدا حقا استفدنا منها🎓🎓👜

    ردحذف
  3. كلام مفيد لو تكرمت اسم الكتاب او رابط موقع الكتاب الذي ذكرت فيه هذه النصوص

    ردحذف
  4. طب ممكن المرجع كمان

    ردحذف
  5. المعلومات لاباس بها

    ردحذف