ما هو المعالج المسبق؟

بشكل عام ، عندما يشير شخص ما إلى معالج في الحوسبة ، فإنهم يقصدون نوعًا من شرائح السيليكون التي تقوم بإجراء العمليات الحسابية. يرمز P في CPU و GPU و APU و NPU والعديد من الأشكال الأخرى للرقائق المنطقية إلى "المعالجة" ، أي وحدة المعالجة المركزية. كل واحد منهم هو نوع معين من المعالجات ، تم تحسينه لوظيفته المحددة. ومع ذلك ، ليس للمعالج المسبق أي علاقة بالمعالجات المادية مثل وحدة المعالجة المركزية أو وحدة معالجة الرسومات. بدلاً من ذلك ، إنه مصطلح برمجة ، يتعلق تحديدًا باللغات المترجمة.

ما هو المترجم؟

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

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

إذن ماذا يفعل المعالج المسبق؟

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

في لغة C ، على سبيل المثال ، من الممارسات القياسية استخدام عدد من المكتبات القياسية. تحدد هذه المكتبات سلسلة من الوظائف التي توفر وظائف قياسية. لاستيراد هذه المكتبات ، يتم استخدام الكلمة الأساسية "#include" متبوعة باسم مكتبة. يبحث المعالج المسبق في الشفرة عن عبارات مثل "#include" ويستبدلها. في حالة "#include" ، يُدرج المعالج المسبق المحتويات الكاملة للمكتبة المحددة.

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

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

خاتمة

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



Leave a Comment

كيفية استنساخ القرص الصلب

كيفية استنساخ القرص الصلب

في العصر الرقمي الحديث، حيث تعد البيانات أحد الأصول القيمة، يمكن أن يكون استنساخ القرص الصلب على نظام التشغيل Windows عملية حاسمة بالنسبة للكثيرين. هذا الدليل الشامل

كيفية إصلاح فشل تحميل برنامج التشغيل WUDFRd على نظام التشغيل Windows 10؟

كيفية إصلاح فشل تحميل برنامج التشغيل WUDFRd على نظام التشغيل Windows 10؟

هل تواجه رسالة الخطأ أثناء تشغيل جهاز الكمبيوتر الخاص بك والتي تفيد بفشل تحميل برنامج التشغيل WUDFRd على جهاز الكمبيوتر الخاص بك؟

كيفية إصلاح رمز خطأ تجربة NVIDIA GeForce 0x0003

كيفية إصلاح رمز خطأ تجربة NVIDIA GeForce 0x0003

هل تواجه رمز الخطأ 0x0003 لتجربة NVIDIA GeForce على سطح المكتب لديك؟ إذا كانت الإجابة بنعم، فاقرأ المدونة لمعرفة كيفية إصلاح هذا الخطأ بسرعة وسهولة.

كيفية إزالة وحدة معالجة الرسومات من جهاز كمبيوتر يعمل بنظام Windows في عام 2023

كيفية إزالة وحدة معالجة الرسومات من جهاز كمبيوتر يعمل بنظام Windows في عام 2023

هل تحتاج إلى إزالة GPU من جهاز الكمبيوتر الخاص بك؟ انضم إلي حيث أشرح كيفية إزالة وحدة معالجة الرسومات من جهاز الكمبيوتر الخاص بك في هذا الدليل التفصيلي خطوة بخطوة.

كيفية تثبيت محرك أقراص NVMe SSD في سطح المكتب والكمبيوتر المحمول

كيفية تثبيت محرك أقراص NVMe SSD في سطح المكتب والكمبيوتر المحمول

هل اشتريت محرك أقراص NVMe M.2 SSD جديدًا ولكنك لا تعرف كيفية التثبيت؟ تابع القراءة لمعرفة كيفية تثبيت NVMe SSD على الكمبيوتر المحمول أو سطح المكتب.

ما هي القنبلة المنطقية؟

ما هي القنبلة المنطقية؟

القنبلة المنطقية هي حادثة أمنية حيث يقوم المهاجم بعمل مؤجل. استمر بالقراءه لمعرفة المزيد.

ما هو SoC؟

ما هو SoC؟

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

ما هو التشفير غير المتماثل؟

ما هو التشفير غير المتماثل؟

تستخدم خوارزميات التشفير غير المتماثل مفتاحين مختلفين. يستخدم أحد المفاتيح للتشفير والآخر لفك التشفير.

Steam Deck: كيفية تنسيق بطاقة SD

Steam Deck: كيفية تنسيق بطاقة SD

يأتي Steam Deck بثلاثة خيارات تخزين: 64 جيجا بايت eMMC ، و 256 جيجا بايت NVMe SSD ، و 512 جيجا بايت NVMe SSD. اعتمادًا على مكتبة الألعاب الخاصة بك وحجم الألعاب

كيفية البحث عن عنوان MAC للطابعة

كيفية البحث عن عنوان MAC للطابعة

نعرض لك طريقتين للعثور على عنوان MAC لطابعة Canon Pixma MG5200.