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

💖 هل يعجبك؟شارك الرابط مع أصدقائك

المواد من ويكيبيديا

لغة برمجة- نظام تسجيل رسمي مصمم لتسجيل برامج الحاسوب. تحدد لغة البرمجة مجموعة من القواعد المعجمية والنحوية والدلالية التي تحدد مظهرالبرامج والإجراءات التي سيقوم بها المؤدي (عادةً جهاز كمبيوتر) تحت سيطرته.

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

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

وفي الوقت نفسه، في الأربعينيات من القرن الماضي، ظهرت أجهزة الكمبيوتر الرقمية الكهربائية وتم تطوير لغة يمكن اعتبارها أول لغة برمجة حاسوبية عالية المستوى - "بلانكالكول"، ابتكرها المهندس الألماني ك. تسوزه بين عامي 1945 و1945.

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

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

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

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

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

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

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

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

تحسين

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

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

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

توحيد لغات البرمجة

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

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

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

أنواع البيانات

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

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

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

النظام الخاص الذي يتم من خلاله تنظيم البيانات في البرنامج هو نوع النظاملغة برمجة؛ يُعرف تطوير ودراسة أنظمة النوع بنظرية النوع. يمكن تقسيم اللغات إلى تلك التي لديها الكتابة الثابتةو الكتابة الديناميكية، و لغات لا نوع لها(على سبيل المثال، رابعا).

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

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

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

هياكل البيانات

تسمح أنظمة الكتابة في اللغات عالية المستوى بتعريف الأنواع المعقدة والمركبة، ما يسمى بهياكل البيانات. عادة، يتم تشكيل أنواع البيانات الهيكلية كمنتج ديكارتي للأنواع الأساسية (الذرية) والأنواع المركبة المحددة مسبقًا.

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

لقد أدت عملية التطور إلى بعض العيوب التي سنراها الآن كمزايا لاستخدام لغة التجميع مقارنة بلغة عالية المستوى.

  • سرعة.
  • كفاءة الحجم.
  • المرونة.
من ناحية أخرى، كونها لغة أكثر بدائية، فإن لغة التجميع لها بعض العيوب مقارنة باللغات عالية المستوى.

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

دلالات لغات البرمجة

هناك عدة طرق لتحديد دلالات لغات البرمجة.

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

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

الأصناف الأكثر انتشارًا هي الثلاثة التالية: التشغيلية، والمشتقة (البديهية)، والدلالية (الرياضية).

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

نموذج البرمجة

يتم إنشاء لغة البرمجة وفقًا لنموذج أو آخر من نماذج الحوسبة الأساسية ونموذج البرمجة.

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

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

على الرغم من أن معظم اللغات تركز على النموذج الحتمي للحوسبة، الذي حددته بنية الكمبيوتر الخاصة بفون نيومان، إلا أن هناك أساليب أخرى. يمكننا أن نذكر اللغات ذات نموذج الحوسبة المكدسة (Forth، Factor، PostScript، وما إلى ذلك)، وكذلك الوظيفية (Lisp، Haskell، REFAL، استنادًا إلى نموذج الحوسبة الذي قدمه عالم الرياضيات السوفييتي A. A. Markov Jr.، إلخ. ) والبرمجة المنطقية (Prolog).

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

حاليًا، يتم أيضًا تطوير لغات البرمجة التصريحية والمرئية بشكل نشط، بالإضافة إلى أساليب وأدوات لتطوير اللغات الخاصة بالمشاكل (انظر البرمجة الموجهة للغة).

طرق تنفيذ اللغات

يمكن تنفيذ لغات البرمجة على أنها مترجمة ومفسرة ومضمنة.

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

إذا كان البرنامج مكتوبًا بلغة مترجمة، فإن المترجم الفوري ينفذ (يفسر) النص المصدر مباشرة بدون الترجمة الأولية. في هذه الحالة، يظل البرنامج باللغة الأصلية ولا يمكن تشغيله بدون مترجم. يمكن أن يسمى معالج الكمبيوتر، في هذا الصدد، مترجمًا لرمز الآلة.

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

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

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

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

ومع ذلك، تعمل البرامج المفسرة بشكل أبطأ بشكل ملحوظ من البرامج المترجمة، ولا يمكن تنفيذها بدون برنامج مترجم.

يتيح لك هذا النهج، إلى حد ما، الاستفادة من مزايا كل من المترجمين الفوريين والمترجمين. وتجدر الإشارة إلى أن هناك لغات تحتوي على مترجم ومترجم (فورث).

لغات البرمجة منخفضة المستوى

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

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

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

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

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

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

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

الرموز المستخدمة

تم تصميم لغات البرمجة الحديثة لاستخدام ASCII، أي إمكانية الوصول إليها للجميع رسم بيانيتعد أحرف ASCII شرطًا ضروريًا وكافيًا لكتابة أي تركيبات لغوية. المديرينيتم استخدام أحرف ASCII إلى حد محدود: يُسمح فقط بإرجاع أول السطر CR وتغذية السطر LF وعلامة التبويب الأفقية HT (أحيانًا أيضًا علامة التبويب الرأسية VT وتغذية الصفحة FF).

استخدمت اللغات المبكرة، التي ظهرت في عصر الأحرف ذات 6 بت، مجموعة محدودة أكثر. على سبيل المثال، تحتوي أبجدية فورتران على 49 حرفًا (بما في ذلك المسافة): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 = + - * / () . ،$" :

الاستثناء الملحوظ هو لغة APL، التي تستخدم الكثير من الأحرف الخاصة.

يعتمد استخدام أحرف غير ASCII (مثل أحرف KOI8-R أو أحرف Unicode) على التنفيذ: في بعض الأحيان يُسمح بها فقط في التعليقات وثوابت الأحرف/السلسلة، وأحيانًا في المعرفات. في اتحاد الجمهوريات الاشتراكية السوفياتية، كانت هناك لغات تتم كتابة جميع الكلمات الرئيسية فيها بأحرف روسية، لكن هذه اللغات لم تكتسب شعبية كبيرة (الاستثناء هو 1C: لغة البرمجة المدمجة في المؤسسة).

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

فئات لغات البرمجة

لغات البرمجة المعتمدة على الرياضيات

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

كان الكمبيوتر الشخصي، حتى منتصف الستينيات، عبارة عن آلة باهظة الثمن تستخدم حصريًا لمهام محددة ولا تؤدي سوى مهمة واحدة في كل مرة.

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

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

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

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

ما هي لغات البرمجة؟

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

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

لماذا هناك حاجة إلى لغات البرمجة؟

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

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

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

هناك لغات لديها مستوى منخفضواللغات ذات المستوى العالي.

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

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

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

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

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

ما هي لغات البرمجة المختلفة؟

فورتران

في منتصف الخمسينيات، بدأ العلماء في إنشاء لغات البرمجة. وأول لغة من هذا النوع كانت تسمى فورتران، وتم تطويرها في عام 1957. يتم استخدامه لوصف خوارزمية لحل المشكلات العلمية والتقنية باستخدام الكمبيوتر الرقمي. بالإضافة إلى ذلك، مثل وحدات الحوسبة الأولى، تم استخدام لغة من هذا النوع لتنفيذ العلوم الطبيعية والحسابات الرياضية. وقد بقيت هذه اللغة بشكل محسّن إلى يومنا هذا، ومن بين اللغات الحديثة التي تتمتع بمستوى عالٍ، فهي الأكثر استخداماً في إجراء البحث العلمي. الخيارات الأكثر شيوعًا اليوم: Fortran-I2، Fortran-I4، EASIC Fortran وتعميماتها.

الغول

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

كوبول

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

اللثغة

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

يتكون البرنامج الذي تم إنشاؤه في Lisp من تسلسلات من التعبيرات، أي النماذج. نتيجة البرنامج هي حساب هذه التعبيرات، مكتوبة في شكل قائمة - واحدة من الهياكل الرئيسية لهذا النوع من اللغة. النقطة الرئيسية لبرنامج Lisp هي "الحياة" في الفضاء الرمزي.

أساسي

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

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

حصن

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

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

باسكال

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

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

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

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

تعد لغة البرمجة C هي الأكثر شعبية واستخدامًا بين المبرمجين. ينشأ هذا النوع من لغات البرمجة من لغتين هما BCPL وB. أنشأ مارتن ريتشاردز BCPL في عام 1967 كلغة مخصصة لكتابة برامج النظام والمترجمين. سنخبرك بما هو أدناه. كين طومسون في عام 1970 لخلق المزيد الإصدارات السابقةنظام التشغيل UNIX المستخدم على جهاز الكمبيوتر DEC PDP-7. في كل من اللغتين الأولى والثانية، لم يتم تقسيم المتغيرات إلى أنواع - كل قيمة بيانات كانت تحتوي على كلمة واحدة في الذاكرة.

تم تطبيق لغة البرمجة SI لأول مرة في عام 1972 على جهاز الكمبيوتر DEC PDP-11. لكنه تمكن من اكتساب شعبيته وشهرته نظام التشغيليونيكس. جميع أنظمة التشغيل الرئيسية اليوم مكتوبة بلغة C أو C++. أصبحت لغة البرمجة C متاحة على عدد كبير من أجهزة الكمبيوتر بعد عدة عقود. وبالمناسبة، تجدر الإشارة إلى أنه مستقل تمامًا عن الأجهزة.

أصبحت لغة C لغة برمجة تقليدية في أواخر السبعينيات. هذا النوع من اللغات مزود بأدوات غنية توفر القدرة على كتابة برامج مرنة تستخدم في جميع أنواع أجهزة الكمبيوتر الحديثة.

مقدمة

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

الآن دعونا نتحدث عن ما هو المترجم والمترجم؟

مترجم ومترجم

إن تطوير لغة ملائمة لكتابة البرنامج ليس كافيًا. يجب أن يكون لكل لغة مترجم، وهو برنامج خاص- مترجم.

لذلك، المترجم هو برنامج مصمم لترجمة البرامج المكتوبة بلغة برمجة واحدة إلى برامج بلغة برمجة أخرى. تسمى عملية الترجمة هذه بالترجمة. مثال على المترجم هو برنامج Complitor، وهو أيضًا برنامج. الغرض منه هو ترجمة البرامج المكتوبة بأي لغة إلى برامج في كود الآلة. هذه العملية تسمى التجميع.

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

ومن هذا يمكننا أن نستنتج أن الترجمة الفورية هي برنامج مخصص للترجمات سطرًا تلو الآخر والبرنامج الأصلي.

حسنًا، يبدو أن هذا هو كل ما لدينا اليوم، الآن أنت تعرف ما هي لغات البرمجة، وما هم.



أخبر الأصدقاء