مفهوم الكومبايلر Compiler في لغات البرمجة

مفهوم – الكومبايلر Compiler أو المترجم هو عبارة عن برنامج يقوم بتحويل الشيفرة المصدرية المكتوبة بإحدى لغات البرمجة عالية المستوى إلى تمثيلٍ منخفض المستوى مع المحافظة على معنى وهدف الشيفرة المصدرية.

فعند النظر إلى أي نص برمجيّ من إحدى لغات البرمجة الشهيرة، سنلاحظ أنه مكتوبٌ باستخدام كلمات ورموز غريبة إلا أنها مألوفة بالنسبة لنا، فهي على الأقل بالحروف الإنجليزية وتتضمن بعض التعابير والمصطلحات المتداولة بحياتنا اليومية.

ولكن عند عرض نفس البرنامج على المعالج لن يؤدي لأي نتيجةٍ مشابهة: الحروف والرموز والتعابير المكتوبة باللغة الإنجليزية هي أمور مستحيلة الفهم بالنسبة للمعالج بشكلٍ مباشر، فهو يفهم لغة وحيدة: اللغة الثنائية المؤلفة من سلاسل الأصفار والواحدات.

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

اقرأ ايضًا:

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

وبالتالي فالمحوّل البرمجي أو المترجم بلغتنا العربية، المعروف بالـ Compiler على ألسنة اهل الحاسب، هو برنامج يقوم بتحويل وترجمة برنامج مكتوب بلغة من المستوى العالي ( High-level language التي تكون سهلة الفهم للإنسان لكن الآلة لا تفهمها ) وتحويلها الى لغة ذات مستوى منخفض ( Low-level language التي تكون مفهومة للآلة لكن معقدة الفهم بالنسبة للإنسان ) وتسمى لغة الآلة أو Machine Language.

الفرق بين compiler و interpreter

أولا Interpreter:

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

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

يقوم بترجمة الكود سورس بسرعة لكن ينفذه ببطئ.

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

ثانيا Compiler:

يقوم بتحليل البرنامج بالكامل ثم يترجمه كاملا إلى لغة الآلة.

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

يقوم باكتشاف الأخطاء بعد عمل تحليل للبرنامج بالكامل لهذا تحديد مكان الخطأ صعب بالمقارنة مع interpreter.

اللغات التي تعتمد مبدأ Interpreter :

لغة php
لغة Python
لغة Ruby
لغة JavaScript
لغة Perl

اللغات التي تعتمد مبدأ Compiler:

لغة c و c++
لغة c#
لغة java تجمع بين المبدأين معا وهذا هو ما يجعل البرامج التي كتبت بالجافا تشتغل في جميع أنظمة التشغيل

شاركها

This Post Has One Comment

  1. medhat

    مشكورين على التوضيح

اترك تعليقاً