لغات البرمجة ومعالجتها - هندسة البرمجيات - ثالث ثانوي

28 الدرس الثاني لغات البرمجة ومعالجاتها تاريخ مختصر لتطور لغات البرمجة A Brief History of the Development Programming Languages رابط الدرس ا قمي www.ien.edu.sa شهد العالم تغيُّرًا كبيرًا منذ أن تم بناء أول جهاز حاسب وحتى يومنا هذا ، وتطورت مكونات وتقنيات الحاسب بشكل كبير، كما تطورت قدرات المعالجة الحاسوبية المتقدمة. ورغم هذا التقدم، ما زالت الكثير من مفاهيم تشغيل الحاسب التي صاغها فون نيومان (on Neumann في عام 1945 سارية حتى يومنا هذا. لغات الجيل الرابع لغات عالية المستوى لغة التجميع شكل 1.8 تطور لغات البرمجة لغة الآلة المكونات المادية تم اختراع لغات البرمجة لغرض التواصل بين الإنسان والآلة. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

تاريخ مختصر لتطوير لغات البرمجة

شرح تاريخ مختصر لتطوير لغات البرمجة

لغة الآلة Machine Language يجب إعطاء الحاسب الأوامر على شكل سلسلة أرقام ثنائية تتكون من الرقمين 0 و 1، ويُطلق على اللغة التي تُقدم بها هذه الأوامر اسم لغة الآلة (Machine Language) ، ولا يستطيع الإنسان فهم هذه اللغة، ولا يُمكن للمبرمج كتابة البرامج وتنفيذها بشكل مباشر باستخدام هذه اللغة، حيث يتطلب الأمر معرفة عميقة بمكونات الحاسب، خاصةً أن لغة الآلة تختلف باختلاف بنية وحدة المعالجة المركزية Central Processing Unit - CPU) في الحاسب. يتكون البرنامج بلغة الآلة من سلسلة من التعليمات الصادرة للمعالج لتنفيذ العمليات الأساسية على شكل الوحدات الثنائية Binary Bits). لغة التجميع Assembly Language • لغة التجميع هي لغة برمجة تقع من حيث سهولتها بين لغة الآلة ولغات البرمجة عالية المستوى، ويطلق عليها أيضًا اسم لغة البرمجة الرمزية. • تتشابه لغة التجميع مع لغة الآلة، ولكنها تُعدُّ أكثر سهولة في البرمجة حيث تتيح للمبرمج استبدال الرقمين (0، 1) بالرموز. يتم تحويل أوامر لغة التجميع التي يُمكن فهمها من قبل الإنسان إلى سلسلة من الأعداد التي تتكون من الرقمين 0 و 1 لكي يفهمها الحاسب وينفذها. في لغة التجميع على سبيل المثال، يتم استخدام كلمة ADD متبوعة برقمين للقيام بعملية الجمع. تُعَدُّ هذه الأوامر سهلة للفهم والحفظ، ولكن يجب ترجمتها إلى سلسلة من الأرقام الثنائية (0 و1) داخل الحاسب لتنفيذ العملية المطلوبة، وتتم عملية الترجمة هذه بواسطة برنامج يُسمى المجمع (Assembler). تتكون أوامر لغة التجميع من مقاطع رمزية تتوافق مع أوامر لغة الآلة. تحديات استخدام لغة التجميع Challenges of Assembly Language . رغم كونها لغة منخفضة المستوى، إلا أن استخدامها يمكِّن من برمجة العمليات البسيطة ذات التسلسلات الثنائية بسهولة. • تختلف لغة التجميع المستخدمة حسب بنية كل حاسب. • تقتصر أوامر تنفيذ الوظائف في لغة التجميع على العمليات البسيطة كالجمع والضرب والمقارنات، وتفتقر للأوامر التي يُمكن أن تدعم تنفيذ وظائف أكثر تعقيدًا ، مما يُجبر المبرمج على كتابة برامج طويلة ومعقدة يصعب فهمها وتصحيحها. • لا يُمكن نقل برنامج من جهاز حاسب إلى آخر له بنية مختلفة. 29 وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

لغة الآلة

شرح لغة الآلة

لغة التجميع

شرح لغة التجميع

تحديات استخدام لغة التجميع

شرح تحديات استخدام لغة التجميع

30 يوضح الجدول التالي برنامجا للجمع تمت كتابته بلغة برمجة عالية المستوى وما يكافئه في لغة التجميع ولغة الآلة، وذلك لجهاز حاسب مزود بوحدة معالجة مركزية 6502 ذات 8 بت. يُمكن استخدام برامج اللغة عالية المستوى على معظم أجهزة الحاسب، بينما تعمل لغة التجميع ولغة الآلة فقط على جهاز حاسب بنفس عمارة وحدة المعالجة المركزية. جدول :1.1 حساب عملية جمع لغة عالية المستوى لغة التجميع لغة الآلة 10101001 00000000 LDA #0 sum = 0 10000101 00000000 STA sum 10100101 00000000 LDA sum 00011000 00000000 CLC 01101001 00000101 ADC #5 sum = sum + 5 10000101 00000000 STA sum 10100101 00000000 LDA sum 00100000 11100001 JSR print print (sum) لغات البرمجة عالية المستوى High-Level Programming Languages أدت أوجه القصور في لغة الآلة ولغة التجميع إلى تضافر الجهود لتحقيق تواصل أفضل بين الإنسان والآلة، مما أدى إلى ظهور أول لغة برمجة عالية المستوى في الخمسينيات من القرن الماضي. تستخدم لغات البرمجة عالية المستوى أوامر برمجية تشبه لغة الإنسان، ثم يتم ترجمتها إلى لغة الآلة بواسطة الحاسب نفسه باستخدام برامج خاصة تُسمى مترجمات اللغة. تُستخدم المترجمات (Compliers) والمفسرات (Interpreters) مع أنواع مختلفة من لغات البرمجة. فورتران كوبول باسكال البايثون سي شارب (PYTHON) (PASCAL) (COBOL) (FORTRAN) 1991 1970 1960 1957 1964 1958 1972 1995 (C#) 2000 ليسب بيسيك برولوغ (PROLOG) جافا (JAVA) (BASIC) (LISP) سي (C) جافا سكريبت (JAVASCRIPT) شكل 1.9: تطور لغات البرمجة وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

حساب عملية جمع

شرح حساب عملية جمع

لغات البرمجة عالية المستوى

شرح لغات البرمجة عالية المستوى

تطور لغات البرمجة عالية المستوى The Evolution of High-Level Programming Languages و w و يحدد المطور لغة البرمجة المناسبة لتطوير التطبيقات بسهولة وذلك بناء على معرفته ومهاراته وتفضيلاته، مع الأخذ بالاعتبار البيئة التقنية المطلوبة لتنفيذ الحل البرمجي. تحتوي كل لغة برمجة على مجموعة فريدة من الكلمات المحجوزة ( الكلمات التي تحتويها تلك اللغة) ، وعلى الصيغ الخاصة التي يجب على المطوّر أن يستخدمها لكتابة التعليمات البرمجية. جدول 1.2 المعلومات الأساسية للغات البرمجة لغة البرمجة المطور فورتران أصل الكلمة لمؤسسة الدولية - ترجمة الصيغة للحواسيب (IBM) (FORTRAN) (FORmula TRANslation) معهد ماساتشوستس | مُعالج القائمة ليسب للتقنية (MIT) (LISP) (LISt Processor) CODASYL لغة الأعمال الموجهة المشتركة كوبول (COBOL) بيسيك (BASIC) و كلية دارتموث (Dartmouth) الخصائص مناسبة لحل المشاكل الرياضية والعلمية، ولكنها غير مناسبة لإدارة ملفات البيانات. لغة خاصة بالذكاء الاصطناعي. مناسبة لتطوير التطبيقات التجارية Common Business Oriented) وتطبيقات الإدارة العامة. Language) لغة تعليمات رمزية لجميع الأغراض لغة برمجة متعددة الاستخدامات. للمبتدئين (Beginners All Purpose Symbolic Instruction Code) البروفيسور نيكولاس | سُميت على اسم عالم الرياضيات بليز | تشتهر بإدخال تقنيات البرمجة باسكال ويرث (PASCAL) (Nicholas Wirth) دينيس ريتشي (Dennis Ritchie) (C) 1.0 (Bell Labs) ومختبرات بيل أنظمة Sun جافا (JAVA) باسكال Blaise Pascal) المنظمة، وتعتمد على تصميم البرنامج بطريقة منهجية ودقيقة. سي سابقة تدعى بي (B) تمت تسمية لغة (C) على اسم لغة استخدمت لتطوير نظام التشغيل يونكس (UNIX) ، وتناسب أنظمة التشغيل المختلفة. سُميت نسبة إلى نوع من القهوة (جافا) لغة برمجة موجهة للكائنات تستخدم لتطوير التطبيقات التي يمكن تشغيلها على مجموعة كبيرة من أجهزة الحاسب أو أنظمة التشغيل المختلفة. 31 وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

تطور لغات البرمجة عالية المستوى

شرح تطور لغات البرمجة عالية المستوى

المعلومات الأساسية للغات البرمجة

شرح المعلومات الأساسية للغات البرمجة

32 ميزات لغات البرمجة عالية المستوى : تتمتع لغات البرمجة عالية المستوى بالعديد من المزايا مقارنة بلغة التجميع حيث: تستخدم صيغة منطقية وبرمجية يُمكن فهمها لقربها من لغة الإنسان. تَتَّسِمُ بعدم ارتباطها بنوع وبنية حاسب معيّن، وبالتالي يُمكن استخدامها على أي جهاز دون الحاجة إلى تعديلات، أو بعد عمل تعديلات طفيفة. و w يُمكن للمطورين تعلم لغات البرمجة عالية المستوى بسهولة وسرعة أكبر. تُعد عملية تصحيح أخطاء البرامج وصيانتها أسهل بكثير. بشكل عام ، تعمل لغات البرمجة عالية المستوى على تقليل وقت وتكلفة تطوير البرامج بشكل كبير بالمقارنة مع لغات البرمجة منخفضة المستوى. لغات برمجة الجيل الرابع Fourth-Generation Programming Languages توجد ضمن لغات البرمجة عالية المستوى فئة يُطلق عليها لغات برمجة الجيل الرابع، والتي عادةً يتم اختصارها بالرمز 4GL، وتُعدُّ هذه اللغات أقرب إلى لغة الإنسان من اللغات عالية المستوى الأخرى ويُمكن استخدامها من قِبَل الأشخاص العاديين غير ذوي الاختصاص كالمبرمجين؛ لأنها تتطلب قدرًا أقل من كتابة التعليمات البرمجية. تعد لغات الجيل الرابع أكثر ملاءمة للمبرمجين، وتُعزّز كفاءة عملية البرمجة باستخدام كلمات وعبارات تشبه اللغة الإنجليزية، إضافةً إلى الرموز والتمثيلات الرمزية والواجهات الرسومية عند الحاجة ، ويعتمد الحصول على أفضل النتائج باستخدام هذه اللغات على التوافق بين الأداة وطبيعة التطبيق. يُمكن مستخدمي الحاسب في لغات الجيل الرابع إجراء تغييرات على البرنامج بشكل سريع من أجل تلبية متطلبات جديدة، مع القدرة على حل المشاكل الصغيرة بأنفسهم، ويُمكن في هذه اللغات إجراء عمليات متعددة باستخدام أمر واحد يُدخله المبرمج لغات البرمجة النصيّة هي نوع من لغات البرمجة يتم عادةً تفسيرها مباشرةً لإعطاء النتائج بدلًا من ترجمتها إلى برنامج بلغة التجميع. يتم استخدام هذه اللغات لأتمتة المهام المتكررة، ولتبسيط العمليات المعقدة، ولإنشاء النماذج الأولية السريعة لأنظمة البرامج. تتضمَّن بعض الأمثلة الشائعة للغات البرمجة النصيّة جافا سكريبت JavaScript) وروبي (Ruby) وبي إتش بي (PHP) وبيرل (Perl) ، وتتميّز هذه اللغات باحتوائها على مكتبات برمجية متعددة تتيح القيام بالمهام المطلوبة من البرامج بشكل فعّال، مما يجعلها مناسبة تمامًا للمهام التي تتطلب نماذج أولية سريعة ومتكررة. تتسم بعض هذه اللغات بمحدودية قدراتها وإمكانية تطويرها كما هو الحال في اللغات المترجمة، وقد لا تناسب التطبيقات عالية الأداء، أو تلك التي تتطلب الكثير من الموارد لتشغيلها. عند الحاجة لاستخراج البيانات، يُمكن للمستخدم إنشاء استعلامات وتقارير باستخدام لغة الاستعلام الهيكلية (SQL) ، وذلك عند الحاجة لبرمجة العمليات الإحصائية والمشاريع العلمية، حيث يُمكن للباحث أو لعالم الرياضيات استخدام برامج مثل: برنامج إس بي إس إس (SPSS) وماتلاب (MATLAB) ولابفيو (LabVIEW) لتحليل هذه البيانات. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

ميزات لغات البرمجة عالية المستوى

شرح ميزات لغات البرمجة عالية المستوى

لغات برمجة الجيل الرابع

شرح لغات برمجة الجيل الرابع

تصنيفات لغات البرمجة Classifications of Programming Languages هناك عدة تصنيفات للغات البرمجة، ويُمكن تصنيف تلك اللغات من حيث نوع الأوامر المستخدمة، مثل لغات البرمجة الإجرائية (Procedural Programming Languages ولغات البرمجة كائنية التوجه .(Object-Oriented Programming Languages) الأمثلة تستخدم البرمجة الإجرائية مجموعة من التعليمات لإخبار الحاسب بما يجب القيام به خطوة بخطوة، ومن على لغات البرمجة الإجرائية كوبول (COBOL) وفورتران ( Fortran) وكذلك لغة البرمجة سي (C). يعتمد البرنامج في البرمجة كائنية التوجه على وحدات تسمى الكائنات (Objects) ، ومن الأمثلة على لغات البرمجة كائنية التوجه لغات سي شارب (C) وسي بلس بلس (++C) وجافا (Java) والبايثون (Python). يُمكن أيضًا تصنيف لغات البرمجة وفقًا لغرض الاستخدام إلى: 1. لغات برمجة عامة يُمكن نظريًا استخدام أي لغة برمجة عامة لحل أي مشكلة ، ولكن عند النظر بشكل عملي، فقد تم تصميم كل لغة لحل نوع معين من المشاكل. تُقسم هذه اللغات على النحو التالي: • لغات علمية مثل الفورتران • لغات موجهة للأعمال مثل كوبول . لغات متعددة المجالات مثل بيسيك و باسكال. لغات برمجة لأنظمة التشغيل مثل سي. • لغات للذكاء الاصطناعي مثل برولوغ. لغات إدارة قواعد البيانات المتخصصة مثل لغة الاستعلام الهيكلية. = 2. اللغات المتخصصة مثل ليسب (ISP) والتي تستخدم لنوع معين من التطبيقات مثل الروبوتات أو الدوائر المتكاملة. كيف تفهم أجهزة الحاسب لغات البرمجة ؟ المترجم (Compiler) : How Computers Understand Programming Languages يتم تحويل البرنامج الذي تمت كتابته بأي من لغات البرمجة إلى لغة آلة يُمكن للحاسب فهمها وتنفيذها باستخدام برامج ترجمة خاصة. المترجم هو برنامج حاسب يقوم بتحويل كتلة كاملـة مـن التعليمات البرمجية المكتوبة بلغة برمجة عالية المستوى إلى لغة الآلة التي يفهمها معالج الحاسب. المفسر (Interpreter) : وید توجد طريقتان لتشغيل البرامج المكتوبة بلغة عالية المستوى، أكثرها شيوعًا هو ترجمة البرنامج باستخدام المفسر هو برنامج حاسب يقوم بتحويل كل سطر من المترجم ) Compiler) ، وتعتمد بعض اللغات على التعليمات البرمجية من مجموعة التعليمات البرمجية المكتوبة بلغة عالية المستوى إلى لغة الآلة ويُرسلها للتنفيذ استخدام المفسّر (Interpreter) عوضًا عن ذلك. شاهد كيفية تنفيذ هاتين الطريقتين المختلفتين. مباشرة قبل الانتقال إلى السطر التالي من التعليمات البرمجية. 33 وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

تصنيفات لغات البرمجة

شرح تصنيفات لغات البرمجة

تصنيفات لغات البرمجة وفقا لغرض الاستخدام

شرح تصنيفات لغات البرمجة وفقا لغرض الاستخدام

كيف تفهم أجهزة الحاسب لغات البرمجة

شرح كيف تفهم أجهزة الحاسب لغات البرمجة

المترجم

شرح المترجم

المفسر

شرح المفسر

34 عملية ترجمة البرنامج وربطه يقبل المترجِم برنامجًا مكتوبًا بلغة عالية المستوى كملف إدخال أو كبرنامج مصدري Source Code ) ، ويُنتج برنامجًا مكافئًا بلغة الآلة يُسمى برنامج الكائن (Object Code). Я لا يستطيع المترجم تجميع الجمل التي تشير إلى المكتبات القياسية أو الموارد خارج البرنامج المصدري ولهذا تتطلب العملية خطوة إضافية لربط وتحويل هذه الجمل. 6 يتولى برنامج آخر يسمى الرابط (Linker) أو المحمل (Loader) عملية الربط، حيث يربط ملف برنامج الكائن بملفات المكتبة القياسية، ليُنتج البرنامج القابل للتنفيذ، وهو البرنامج النهائي الذي ينفذه الحاسب. برنامج البايثون المصدري x = 10 y = x + 3 print(y) المترجم الترجمة التحميل ربط جميع الأوامر معًا برنامج الآلة المستهدف شكل 1.10 عملية تجميع وتنفيذ برنامج باستخدام مترجم البرنامج المصدري هو برنامج تمت كتابته بلغة برمجة عالية المستوى. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

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

شرح عملية ترجمة البرنامج وربطه

35 البرنامج المصدري المترجم برنامج الكائن الرابط برنامج قابل للتنفيذ 11011001 01000100 00010111 10101011 11111100 ملفات المكتبة 11011001 01000100 00010111 10101011 11111100 المُفسِّر التحليل - التحقق من وجود أخطاء إرسال الأمر الأول للتنفيذ التحليل - التحقق من وجود أخطاء إرسال الأمر الثاني للتنفيذ التحليل - التحقق من وجود أخطاء إرسال الأمر n للتنفيذ 11011001 Lib ref 00010111 10101011 Lib ref شكل :111 مراحل ترجمة وربط البرنامج برنامج البايثون المصدري x = 10 y = x + 2 print(y) if a<b Lib ref do while z=x-y Lib ref شكل :112 عملية تجميع وتنفيذ برنامج باستخدام المفسّر تقوم المترجمات والمفسّرات الفورية بالمهمة ذاتها، وهي تحويل البرنامج المكتوب بلغة البرمجة عالية المستوى إلى لغة الآلة، ولكن وزارة التعليم Ministry of Education 2024-1446 تعمل كل منهما بطريقة مختلفة.

الدرس الثاني: لغات البرمجة ومعالجتها

مراحل ترجمة وربط البرنامج

شرح مراحل ترجمة وربط البرنامج

عملية تجميع وتنفيذ برنامج باستخدام المفسر

شرح عملية تجميع وتنفيذ برنامج باستخدام المفسر

لغات البرمجة المترجَمة والمفسرة Interpreted and Compiled Programming Languages تَستخدم معظم لغات البرمجة الحديثة المترجمات لإنتاج البرامج المحسنة بسرعة، ولكن بعض اللغات ما زالت تستخدم المفسّرات عند الحاجة لإنشاء برنامج بسيط لا تُعدّ السرعة المعيار الأهم به. اللغات المترجمة Compiled Languages تستخدم لغات البرمجة سي (C) وسي بلس بلس (++C) و سي شارب (#C) وجافا (Java) مترجمــات اللغـة لإنشاء برامج سريعة وموثوقة. يتم إنشاء البرنامج القابل للتنفيذ لكل نوع من أنواع أجهزة الحاسب، مما يجعل اكتساب المعرفة بأجهزة حواسيب المستخدمين النهائيين واجبًا على المطورين. اللغات المفسّرة Interpreted Languages اعتمدت الإصدارات الأولية للغة جافا سكريبت (JavaScript) ، وكذلك لغتي ليسب (LIS) وبيسيك (BASIC) على المفسّرات، مما يعني أن البرامج التي تُكتب بهذه اللغات تعمل بشكل بطيء، ولكن كان تشغيل برامجها المصدرية على أي جهاز حاسب يحتوي على مُفسِّر لغة البرمجة ممكنًا ، فعلى سبيل المثال، يُمكن تشغيل تطبيق ويب مكتوب بلغة جافا سكريبت على جهاز حاسب يعمل بنظام ويندوز أو على حاسب لوحي يعمل بنظام أندرويد باستخدام متصفح ويب مُدمج مع مُفسِّر. 36 ليسب (ISP) بيسيك (BASIC) المفسر جافا سكريبت (JavaScript) المترجم البايثون (Python) سي (C) سي بلس بلس (++C) سي شارب (C) جافا (Java) شكل 1.13 البايثون لغة مترجمة ومُفسّرة إن البايثون هي لغة مُترجمة ومُفسَّرة. يُترجم تطبيق بايثون كل سطر من التعليمات البرمجية بحيث يُمكن للمُفسِّر قراءته على الجهاز المستخدم. لا يتغير تركيب الجمل الذي يستخدمه المبرمج؛ لأن تطبيق بايثون يحوله إلى الشكل الصحيح للمُفسِّر المستخدم على هذا الجهاز. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

لغات البرمجة المترجمة والمفسرة

شرح لغات البرمجة المترجمة والمفسرة

شكل 1.13بايثون لغة مترجمة ومفسرة

شرح شكل 1.13بايثون لغة مترجمة ومفسرة

بايثون لغة مترجمة ومفسرة

شرح بايثون لغة مترجمة ومفسرة

37 وزارة التعليم Ministry of Education 2024-1446 جدول 1.3 المقارنة بين المترجم والمفسِّر المترجم المفسر يُحوِّل البرنامج المصدري المكتوب بلغة يُحوِّل كتلة من التعليمات البرمجية إلى البرمجة عالية المستوى بأكمله إلى لغة لغة الآلة بحيث يترجمها ثم ينفذها ، ثم ينتقل إلى الكتلة التالية أثناء تشغيل الوظيفة الرئيسة آلة، ويُنتج برنامجا قابلا للتنفيذ. المدخلات البرنامج. يأخذ المترجِم البرنامج المصدري بأكمله يأخذ المفسّر أحد تعليمات البرنامج المصدري كمدخل في كل مرة. كمدخلات. يُنشئ المترجِم ويُخزن ملف برنامج لا يُنشئ المفسِّر ملف برنامج الكائن. المخرجات الكائن كمخرج. يتطلب المزيد من الذاكرة بسبب إنشاء يتطلب ذاكرة أقل. الذاكرة برنامج الكائن. تتم عملية تجميع البرنامج المصدري | تتم عملية التفسير لكل عبارة برمجية بالتوازي مع عملية التنفيذ. عملية التنفيذ بالكامل قبل بدء التنفيذ. التحقق من الأخطاء يعرض المترجم جميع أخطاء اللغة يقرأ المُفسِّر سطرًا واحدًا من التعليمات والتحذيرات عند ترجمة البرنامج ، ولا البرمجية ويعرض أي أخطاء فيه، ويجب يمكن تشغيل البرنامج حتى يتم تصحيح تصحيح الأخطاء قبل الانتقال لقراءة السطر التالي. جميع الأخطاء. | يحتاج إلى برنامج لربط ملف الكائن لا يحتاج إلى عملية الربط، ولا يُنشئ ملفا بملفات المكتبة القياسية لإنشاء الملف قابلا للتنفيذ. ربط الملفات القابل للتنفيذ. يتيح توفّر الملف التشغيلي (exe.) التنفيذ تكون عملية التنفيذ أبطأ؛ لأن الملف القابل للتنفيذ غير متوفر، ويتم تفسير البرنامج بشكل أسرع. السرعة مرة أخرى عند كل عملية تنفيذ. الاعتماد على الأجهزة وأنظمة التشغيل يعتمد الملف القابل للتنفيذ الذي تم إنشاؤه المُفسِّر هو مُكوِّن مستقل عن نظام بواسطة المترجم على الأجهزة التي سيتم التشغيل، فعلى سبيل المثال يُمكن مترجم تشغيله عليها، ولا يُمكن تشغيله على البايثون العمل على نظامي ويندوز وحدات معالجة مركزية ذات عمارة ولينكس بنفس البرنامج المصدري وبنفس مختلفة، أو على أنظمة تشغيل مختلفة. النتائج.

الدرس الثاني: لغات البرمجة ومعالجتها

المقارنة بين المترجم والمفسر

شرح المقارنة بين المترجم والمفسر

38 التعامل مع أخطاء البرامج Dealing with Software Errors تعمل المترجمات والمفسّرات بشكل مختلف عند وجود أخطاء أو خلل في البرامج المصدرية. المفسر: 1. إنشاء البرنامج. .2. يقرأ المُترجم سطرًا واحدًا من التعليمات البرمجية ويعرض أي خطأ في تركيب الجمل، ويجب تصحيح هذا الخطأ قبل الانتقال إلى السطر التالي. 3. يتم تنفيذ جميع أسطر التعليمات البرمجية المصدرية سطرًا تلو الآخر أثناء تنفيذ البرنامج بواسطة المفسّر. المترجم 1. إنشاء البرنامج. .2 يقوم المترجم بتحليل ومعالجة جميع أسطر التعليمات البرمجية ويتأكد من صحتها. 3. عند وجود خطأ تظهر رسالة خطأ. 4. إذا لم يكن هناك خطأ ، يقوم المترجم بتحويل البرنامج المصدري إلى لغة الآلة. يتم ربط ملفات التعليمات البرمجية المتعددة ببرنامج واحد قابل للتنفيذ يُعرف باسم ملف EXE. عملية تصحيح الأخطاء Correction of Errors During the Debugging Process غالبا ما يحتوي البرنامج المصدري في نسخته الأولى على العديد من الأخطاء، وتنقسم هذه الأخطاء إلى ثلاثة أنواع: الأخطاء المنطقية (Logical Errors : أخطاء في منطق البرمجة. • أخطاء وقت التشغيل ( Runtime Errors) : أخطاء تحدث أثناء تنفيذ البرنامج. • أخطاء تركيب الجمل Syntax Errors : أخطاء في تركيب الجمل البرمجية. تحدث الأخطاء المنطقية وأخطاء وقت التشغيل فقط عند تنفيذ البرنامج، بينما تحدث أخطاء تركيب الجمل أثناء الترجمة . يتم تنفيذ البرنامج فقط إذا كان البرنامج المصدري لا يحتوي على أخطاء في تركيب الجمل. تصحيح أخطاء تركيب الجمل: الخطوة الأولى هي قيام المترجم أو المفسّر باكتشاف أخطاء تركيب الجمل، وبالتالي عرض الرسائل التي تشير إلى الخطأ وموقعه. يُمكن لبعض هذه الرسائل المساعدة في تشخيص سبب الخطوة التالية هي تصحيح الأخطاء في البرنامج. • في النهاية تتم ترجمة البرنامج الذي تم تصحيحه بشكلٍ صحيح دون أي رسائل خطأ. الخطأ. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

التعامل مع أخطاء لابرنامج

شرح التعامل مع أخطاء لابرنامج

عملية تصحيح الأخطاء

شرح عملية تصحيح الأخطاء

تصحيح أخطاء تركيب الجمل

شرح تصحيح أخطاء تركيب الجمل

39 وزارة التعليم Ministry of Education 2024-1446 تمرينات ما أوجه القصور في لغة التجميع؟ ارسم مُخطّطا يُظهر الفرق بين عمليتي ترجمة وتنفيذ البرنامج في كل من المترجم والمفسِّر. 1 2

الدرس الثاني: لغات البرمجة ومعالجتها

ما أوجه القصور في لغة التجميع؟

حل ما أوجه القصور في لغة التجميع؟

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

شرح ارسم مخططا يُظهر الفرق بين عمليتي ترجمة وتنفيذ البرنامج في كل من المترجم والمفسر. حل ارسم مخططا يُظهر الفرق بين عمليتي ترجمة وتنفيذ البرنامج في كل من المترجم والمفسر.

40 3 4 اكتب ثلاث مزايا للغات البرمجة عالية المستوى. اربط كل لغة برمجية بالتصنيف الذي تنتمي إليه. البايثون (Python) بيسيك (BASIC) برولوغ (PROLOG) سي (C) 1 2 3 4 لغات كائنية التوجه لغات ذكاء اصطناعي. لغات متعددة الأغراض. لغات برمجة للأنظمة. وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

اكتب ثلاث مزايا للغات البرمجة عالية المستوى

حل اكتب ثلاث مزايا للغات البرمجة عالية المستوى

اربط كل لغة برمجية بالتصنيف الذي تنتمي إليه

شرح اربط كل لغة برمجية بالتصنيف الذي تنتمي إليه حل اربط كل لغة برمجية بالتصنيف الذي تنتمي إليه

5 .1 اختر الكلمة أو العبارة المناسبة لإكمال الجمل أدناه ( يوجد عبارات لا تنتمي لأي من الفراغات المكتبات القياسية اللغات المفسرة أخطاء في تركيب اللغة الذاكرة رابط البرنامج المصدري المترجم أخطاء وقت التشغيل برنامج الكائن 2. يتم استخدام يقبل البرنامج المصدري كمدخل لينتج برنامج مكافئ بلغة الآلة يُسمى بواسطة المفسِّر بصورة أقل مما يستخدمه المترجم. 3. يُعدُّ استخدام تنفيذ البرنامج بصورة أبطأ. .4 لا يستطيع المترجم تحويل الجمل التي تشير إلى الجمل وتحويلها. ميزة من حيث تصحيح الأخطاء بصورة فورية، ولكن يتم 5. يُمكن إنشاء الملف التنفيذي إذا لم توجد 6. يُطلق على الأخطاء التي تحدث أثناء تنفيذ البرنامج اسم .. ولذلك يحتاج إلى ربط هذه في البرنامج المصدري. 41 وزارة التعليم Ministry of Education 2024-1446

الدرس الثاني: لغات البرمجة ومعالجتها

اختر الكلمة أو العبارة المناسبة لإكمال الجمل أدناه ( يوجد عبارات لا تنتمي لأي من الفراغات): يقبل برنامج المصدر كمدخل لينتج برنامج مكافئ بلغة الآلة يُسمى

حل اختر الكلمة أو العبارة المناسبة لإكمال الجمل أدناه ( يوجد عبارات لا تنتمي لأي من الفراغات): يقبل برنامج المصدر كمدخل لينتج برنامج مكافئ بلغة الآلة يُسمى