أنواع لغات البرمجة: اللغات الدنيا Low –Level Languages لغة الآلة: Machine language: وهي اللغة الوحيدة التي يفهمها الحاسوب مباشرة دون وسيط، وتعليمات هذه اللغة هي مجموعة من الأرقا الثنائية إما ( 1، 0 ) ظهرت هذه اللغة مع بداية ظهور الحاسوب وكان المرمجون بلغة الآلة يحتاجون إلى معرفة مكونات الحاسوب وإمكانياته، مما أدى إلى فهم صعوبة تلك اللغة وخاصة ان لكل حاسوب لغة آلة خاصة به، فلا يمكن نقل البرنامج من حاسوب معين إى حاسوب آخر فاقتصر استخدامها على الشركات الصانعة للحواسيب. ولغة الآلة هي اللغة التي يستخدمها الحاسب للاتصال بين وحداته الداخلية المختلفة، وتمتاز هذه اللغة بأنها لاتحتاج لإلي ترجمة. فهي نفس اللغة التي صمتت بها الدوائر الإلكترونية التي تقوم بتنفيذ العمليات داخل وحدة التشغيل المركزية، لقد كان البرنامج المكتوب بهذه اللغة عبارة عن سلسلة طويلة من الأرقام المتكونة من الصفر والواحد وهذا يتطلب وقتاًوجهداً كبيرين، بالإضافة إلى الأخطاء التي يمكن الوقوع فيها ومثال عليها 551151، وهي اللغة الوحيدة التي يفهمها الحاسوب مباشرة دون وسيط. تتألف تعليمات لغة الآلة من سلاسل من الأصفار والواحد (0،1). استخدمت هذه اللغة مع بداية ظهور الحاسوب، لغة الآلة هى لغة الحاسب وتتكون من النظام الثنائى (1.0) وهذا يتضمن و يكون احتمال الخطا فيها كبير جدا. لغة التجميع: Assembly Language: هي مرحلة متقدمة من لغة الآلة واسهل نسبيا منها، صممت للتغلب على صعوبة استخدام لغة الآلة، تم استبدال الأرقام الثنائية برمز وهو عبارة عن حرفين أو ثلاثة أحرف، تحتاج هذه اللغة لبرنامج مترجم لترجمتها للغة الآلة التي يفهمها الحاسوب، من أبرز عيوبها هو ارتباطها بالآلة، فكل آلة لها لغة تجميع خاصة بها، ويقصد بالآلة هنا تحديد المعالج Processor أو المعالج الدقيق Microprocessor. لتجنب كتابة برنامج بلغة الآلة وضعت بعض الرموز لتدل على مختصرات لغوية او اعداد عشرية فمثلا: للاضافة نرمز (ADD) للطرح نرمز (SUB) للضرب نرمز (MUL) • وعندما يتولى الحاسب ترجمه هذه الامور الى لغته فإنه يستعين ببرنامج خاص يغرف باسم البرنامج المترجم الذى يستخدم للترجمة من المستخدم للحاسب والعكس. لغة التجميع تشبه لغة الآلة ولكنها تمتاز عنها بسهولة الترميز بالحروف الأبجدية، وسهولة إكتشاف إلاخطاء، وتعديل البرامج نسبيا، وتحتاج هذه البرامج إلي ترجمة حتي يتم تحويلها إلي لغة الآلة، ويسمى البرنامج الذى يقوم بهذه الوظيفة بالمترجم المتدني (Assembler) ومثال عليها sub10، ويطلق عليها اسم اللغة الرمزية وهي مرحلة متقدمة من لغة الآلة وأسهل منها نسبيا. وقامت الشركات الصانعة للحواسيب بتصميمها للتغلب علي صعوبة استخدام لغة الآلة. وتم استبدال الأرقام الثنائية برموز، ريتألف الرمز من حرفين أو ثلاثة حروف يسهل علي المبرمج تذكرها وكتابتها ويطلق علي هذه الرموزMnemonic. وتختلف الرموز المستخدمة بأختلاف طراز لغة التجميع والشركة المنتجة للحاسوب. اللغات العليا:High Level language يطلق علي لغة الآلة ولغة التجميع اللغات الدنيا نظرا لقربها من التصميم الداخلي للحاسوب، ولتجنب مساوئ اللغات الدنيا صممت لغات برمجة أكثر تطورا وأقرب إلي اللغة الإنسانية ودعيت لغات البرمجة العليا، فقد سميت بها الاسم لبعدها عن لغة الآلة، ولا يتطلب من المبرمجين المعرفة بالتفاصيل الدقيقة لجهاز الحاسوب، ولكن يتطلب منه لالمام اعام باسلوب عمل الحاسوب ومنطقه، أما امعرفة التفصيلية فتكون لجوانب المشكلات والمسائل الخاصة بالتطبيقات مكونات لغة البرمجة: لغة البرمجة هي مجموعة من القواعد والاصطلاحات يستخدمها الإنسان ( المبرمج ) لكتابة برنامج يفهمه الحاسوب، ويحول البرنامج بواسطة مترجم اللغة compiler أو المفسر interpreter إلي لغة الالة Machine language. 1- كلمات محجوزة reserved words، 2- أسماء يختارها المبرمج، ج- مجموعة التعليمات والأوامر: التعليمة هي مجموعة من الرموز الخاصة بلغة البرمجة لتنفيذ عملية ما مثل قراءة قيمة READ. عندما يفهم الحاسوب التعليمة، تقوم وحدة التحكم بإرسال الإشارات اللازمة إلي الوحدات المعنية بالموضوع لتنفيذ العملية المطلوبة من التعليمة. وتقسم التعليمات من الناحية الوظيفية إلي الأنواع التالية: -1 تعليمات الإدخال: تقوم هذه التعليمات بقراءة أو إدخال البيانات إلي متغيرات البرنامج عن طريق وحدة الإدخال، مثل READ INPUT, -2 تعليمات المعالجة: ويطلق عليها أيضا اسم التعليمات الحسابية ووظيفتها القيام بمختلف العمليات الحسابية وسائر عمليات المعالجة الأخري التي تتولي تنفيذها وحدة الحساب والمنطق. -3 تعليمات التحكم: وتشمل التعليمات التي تؤدي إلي تفسير تسلسل تنفيذ جمل البرنامج نتيجة إجراء الاختبارات المختلفة التي تتولي تنفيذها وحدة الحساب والمنطق. -4 تعليمات الإخراج: وهي التعليمات التي تقوم بإخراج البيانات المعالجة علي شكل معلومات من الذاكرة الرئيسية إلي وحدة الإخراج كالشاشة أو الطابعة، مثل التعليمة WRITE. -5 تعليمات تعريفية: تطور أساليب البرمجة: تطور الحاسب وتطور إمكانياته الهائلة سواء لتخزين كميات ضخمة من البيانات أو سرعة اداؤه في تناول هذه البيانات تابع ذلك ازدياد الطلب علي البرمجيات أو سرعة وبالتالي علي المبرمجين. واصبحت لغات الحاسب التقليدية في حاجة الي التطوير لتصميم وبناء البرامج الحديثة. ولذلك تطورت لغات الحاسب لتمد البرامج بالوسائل والادوات الحديثة التي تساعده في تصميم برامجه وتسهل عليه كتابتها في وقت قياسي. واستخدمت ايضاً طرق جديدة للبرمجة حيث تنظم اللغات التي شملها التطور لغة السي C التي مرت بعدة مراحل من التطور، فاللغة السي c تطورت لتناسب اجهزة الحاسب الشخصي ولتواكب البرمجة الهيكلية Structured Programming والبــــــــــرمجة الـــــــــــشيئية المــــــوجهة Object Oriented Programming.