من أين أبدأ تعلم البرمجة ؟ سلسلة (2)

الجواب على السؤال الاكثر شيوعا

صالح الدعيلجمنذ 5 سنوات

​​سلام مجددا

مستمرين في الإجابة على سؤال من أين أبدأ تعلم البرمجة , ,وللإجابة على هذا السؤال

سنقسم الجواب لعدة خطوات تصاعدية  :-

الخطوة الأولى :

تبدأ من معرفة سبب إختراع الحاسب الآلي

حتى نفهم منطق الآلة , أول شيء يجب أن نعلم إن الحاسب الآلي لم يوجد من عدم

بل هو إختراع مكمل لما قبله من الإختراعات البشرية القائمة على علم الحساب بشكل ميكانيكي

, لكنه بلا شك إختراع أحدث ثورة معلوماتية تقنية هائلة بسبب إعتماده على توجيه التيار الكهربائي ( ترانزستور )

- طبعا الحاسوب في وقتنا هذا متطور أكثر لكن -  مثل ما قلنا كان سبب إختراعه هو إجراء العمليات الحسابية

وطالما هنالك حساب فهنالك منطق أيضاً والذي يقودنا بلاشك إلى علم المنطق الرياضي . الذي هو 1 + 1 = 1

* معلوماتك صحيحة يساوي 2 لكن الموضوع مختلف هنا في علوم الحاسب . كيف مختلف ؟

الخطوة الثانية :

 لك تتخيل إن هذه الآلة العجيبة فقط تستخدم نظام عد ثنائي يعني فقط مكون من خانتين

واحد و صفر بغرض توجيه التيار الكهربائي بحيث (واحد  يعني " تشغيل/فتح ") و ( صفر " إطفاء/إغلاق " )

إذا كل المسألة في كيفية توجيه هذا التيار هل علم المنطق لوحده كافي بالطبع لا فنحن بحاجة

إلى علم الاحتمالات و الخوارزميات حتى نتمكن من تحكم وتنظيم تدفق التيار الكهربائي .

الخطوة الثالثة :

إذا نستنتج أن عمليات الحاسب الآلي - للجانب البرمجي -  تكاد تكون محصورة في هذه الثلاث عمليات :-

1 - المدخلات 2 - المعالجة 3 - المخرجات

كانت تتم المدخلات بلغة تسمى لغة الآلة وهي لغة الصفر والواحد

ماذا لو احتجنا أن نقوم بعملية أكبر من عملية الجمع أو طباعة عدد ؟

هذا السؤال قاد المهندسين وعلماء الحاسوب إلى إبتكار ما يسمى بـ " لغات البرمجة "

وهي ببساطة تعتمد على مترجم ومفسر يقوم بترجمة وتفسير المنطق البشري بواسطة معادلات رياضية

- منها المعقد جدا ومنها ما دون ذلك -  إلى منطق الآلة

لنأخذ أبسط عملية معالجة على سبيل المثال :-

 

بالمنطق البشري :-

(2+3=5) ثلاثة زائد اثنان يساوي خمسة

وهي الجمع بين عددين 2 و 3 تمثل المدخلات

عملية الجمع تمثل نوع المعالجة

الناتج النهائي 5 يمثل المُخرج

 

بمنطق الآلة :-

تحول جميع الأرقام إلى نظام العد الثنائي *توجد لها معادلات وطرائق رياضية بعضها سهل والآخر معقد

0010 + 0011 = 0101 

 

*الآلة هنا لا تعرف ما الصفر ولا الواحد وإنما الصفر رمز لعدم السماح بمرور التيار الكهربائي

والواحد رمز للسماح بمرور التيار الكهربائي حتى يميز علماء الحاسب مرور التيار من عدمه

 

بمنطق لغة البرمجة  :-

قم بإنشاء متغير في الذاكرة اسمه  أ من نوع رقم صحيح يسند إليه رقم 3

قم بإنشاء متغير في الذاكرة اسمه ب  من نوع رقم صحيح يسند إليه رقم 2

قم بإنشاء متغير في الذاكرة اسمه ج من نوع رقم صحيح تسند إليه نتيجة المعالجة وهي عملية جمع قيم  أ + ب

اطبع ج وهنا تظهر النتيجة النهائية على الشاشة 5

في عملية التشغيل يتم إرسال هذه النصوص المنطقية إلى المترجم الذي بدوره يترجم للآلة

ثم يعود لنا بالاستجابة التي تعتمد على سرعة المعالجات بطباعة المخرج على الشاشة

 

الخلاصة :-

يجب أن تعلم أن هنالك لغة وحدة تفهمها الآلة وهي لغة الصفر والواحد

والآلة تحتوي على وحدة معالجة وذاكرة تقوم بمعالجة المدخلات وتخزينها ثم طباعتها على هيئة مخرجات

يجب أن تعلم أن مهمة لغات البرمجة هي ترجمة ما يريده الإنسان من الآلة معتمدة

في ذلك على مترجمات ومفسرات وضعها المطورون الأوائل بناء على علوم أخرى رياضية

كالخوارزميات والإحتمالات والمنطق . و استمر بعدهم من العلماء على تطوير 

 المترجمات والمفسرات ولازالت الى الان في تطور مستمر .

 

 

*كانت هذه المقالة صعبة جدا في الاختزال ولكنها موجهة لغير المتخصصين في علوم الحاسب الآلي

فأردت قدر الإمكان توصيل صورة ذهنية واضحة لمبدأ عمل الحاسوب بشكل مبسط 

 

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

 

 

في أمان الله



 

4
إعجاب
2046
مشاهدات
1
مشاركة
2
متابع

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !