مبدأ برمجة المفسر

تم تحميل الصفحة في 0,3621310 ثانية

MSCFC

Master DevLoper
rankrank
إنضم
12 نوفمبر 2016
المشاركات
430
الإعجابات
386
النقاط
91
الإقامة
In My Country :)

برعاية نقطة التطوير


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

SyRiAn KaSp3r

مُراقب أقسام حماية الأجهزة
طاقم الإدارة
إنضم
26 أكتوبر 2012
المشاركات
12,345
الإعجابات
15,886
النقاط
215
الإقامة
In YouR MinD
يعطيك العافية شرح بسيط و سلس :)

بانتظار كل جديد عزيزي ,
 
الإعجابات: MSCFC

Rimond

.:: مُشرف النقطة العامة ::.
rankrank
إنضم
22 مارس 2013
المشاركات
409
الإعجابات
475
النقاط
113
أشكرك جدًا على طرحك أخي الكريم
ولكن لم أفهم هذه الجزئية هل يمكن أن تشرحها مرة أخرى أو توضحها بطريقة اخرى

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

MSCFC

Master DevLoper
rankrank
إنضم
12 نوفمبر 2016
المشاركات
430
الإعجابات
386
النقاط
91
الإقامة
In My Country :)
أشكرك جدًا على طرحك أخي الكريم
ولكن لم أفهم هذه الجزئية هل يمكن أن تشرحها مرة أخرى أو توضحها بطريقة اخرى



شكرًا
المقصود أن المفسر والمترجم عادة يبرمج بلغات عالية المستوى مثل السي والسي بلس بلس لكن في طريقتي هذه يمكن برمجته بأي لغة برمجية بشرط أن تكون متسوط فيها
 

Rimond

.:: مُشرف النقطة العامة ::.
rankrank
إنضم
22 مارس 2013
المشاركات
409
الإعجابات
475
النقاط
113
المقصود أن المفسر والمترجم عادة يبرمج بلغات عالية المستوى مثل السي والسي بلس بلس لكن في طريقتي هذه يمكن برمجته بأي لغة برمجية بشرط أن تكون متسوط فيها
أشكرك على ردك ولكن كيف لمترجم لغة أن يترجم لغة أخرى؟
 

MSCFC

Master DevLoper
rankrank
إنضم
12 نوفمبر 2016
المشاركات
430
الإعجابات
386
النقاط
91
الإقامة
In My Country :)
أشكرك على ردك ولكن كيف لمترجم لغة أن يترجم لغة أخرى؟
الموضوع معقد شوي ركز معاي
المترجم يقوم بتحويل الكود ( حسب الكلمات المحجوزة في اللغة طبعًا ) إلى كود أسمبلي ( لغة التجميع ) ومن ثم إلى لغة الآلة ( الصفر والواحد ) ومن ثم يمكن حفظها إلى ملف EXE يمكن تشغيله في أي وقت
أما المفسر يقوم بنفس العملية لكن النتيجة المتحصل عليها ( كود لغة الآلة ) يقوم بتنفيذه مباشرة دون حفظه
وشكرًا لك على تذكيري بأيام زمان ، من زمان ما سويت هذي الأشياء
دمت بود
 

MSCFC

Master DevLoper
rankrank
إنضم
12 نوفمبر 2016
المشاركات
430
الإعجابات
386
النقاط
91
الإقامة
In My Country :)
الموضوع معقد شوي ركز معاي
المترجم يقوم بتحويل الكود ( حسب الكلمات المحجوزة في اللغة طبعًا ) إلى كود أسمبلي ( لغة التجميع ) ومن ثم إلى لغة الآلة ( الصفر والواحد ) ومن ثم يمكن حفظها إلى ملف EXE يمكن تشغيله في أي وقت
أما المفسر يقوم بنفس العملية لكن النتيجة المتحصل عليها ( كود لغة الآلة ) يقوم بتنفيذه مباشرة دون حفظه
وشكرًا لك على تذكيري بأيام زمان ، من زمان ما سويت هذي الأشياء
دمت بود
مع العلم أن مترجم للغة معينة لا يستطيع ترجمة أي لغة إلا المخصصة له أي c++ يترجم c++ و c لا يترجم c++
 

خيارات الاستايل

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

إرجاع خيارات الإستايل