درس بسيط في هندسة الحواسيب : كيف يتعامل المعالج مع البيانات ؟

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

أولا : مالحاسوب ؟
الحاسوب هو آلة تدخل فيها البيانات inputs فتعالجها و تخرج لك الـنتائج outputs
سنركز اليوم على المعالجة ، طبعا هناك وحدة خاصة بذلك و هي CPU بمعنى Central Processing Unity أي وحدة المعالجة المركزية ،هذه الوحدة هي دماغ الحاسوب ، بدورها تتركب من جزئين أساسين و هما UAL و UCC . سنرى كل منهما على حدى .
UAL بمعنى Unité Arthimetique et Logique بالعربية الوحدة المنطقية و الرياضية هي الوحدة المسؤولة عن القيام بمختلف العمليات الحسابية .
UCC بمعنى Unité de Commande et de Controle بالعربية وحدة التحكم . هذه تتعامل مع مختلف أجزاء الحاسب ، سنراها في الأسفل .

الوحدة الحسابية و المنطقية :

لاحظ تلك الصورة جيدا .
فقط ملاحظة : الصورة ذات مصدر إنجليزي ـ بالتالي UAL هي ALU  . لاتكترث لـ Registers لأن الكلام عنها لن يكفي في هذا الموضوع ، سأحاول شرحها في موضوع آخر بإذن الله . يمكنك حاليا اعتبارها أماكن مؤقتة و سريعة لتسجل نتائج عملية معينة مثلا .
نرجع إلى الموضوع ، لاحظ جيدا أننا مثلنا UAL بشطل يشبه المثلث ، في الأعلى هناك مدخلان A و B  و في الأسفل هناك مخرج C ، أظن الأمر واضحا ، عندما تفتح الحاسبة لتحسب 5+9 ستكون 5 هي A و 9 هي B و 14 هو C .
الإدخال في الحاسب مختلف تماما عما تظن ، هناك عدة طرق إدخال تبعا على طريقة نعالج الحاسوب ، الطرق الأدخل استخداما هي باستعمال المسجلات ، لاحظ أننا ذكرنا في الأعلى أنها أمكان سريعة و مؤقتة لتخزين بيانات عملية ما ، في حالنا هذه سنعطي المسجل 1 قيمة 5 و المسجل 2 قيمة 9 في الأخير المسجل 3 سيأخذ قيمة النتيجة بعد تنفيذ الأمر الذي يعطيه المبرمج للحاسب ، في حالة الجمع سيعطيه الأمر ADD .



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

يبدو أننا وضحنا كيفية تعامل وحدة المنطق و الحساب مع البيانات لإنجاز عملية معينة . لكن مهلا ! ذكرنا مدخلين فقط و مدخل واحد للنتيجة ، ماذا إذا أردنا حساب 6-5+4 ؟ هنا يظهر دور المسجلات جيدا ، سندخل في البداية مسجلين اثنين ، الأول يحمل قيمة 4 و الثاني قيمة 5 ، و نعطي الأمر ADD لحساب النتيجة ، إذن المسجل 3 يأخذ النتيجة 9 ، بعدها نعيد الرجوع إلى وحدة الحساب و المنطق و يعيد الحاسوب الإدخال ، سيستخدم المسجل 3 الذي يحمل القيمة 9 و مسجلا آخر هو المسجل 4 الذي سيأخذ القيمة 6 ، في النتيجة مسجل آخر و هو المسجل 5 سيأخذ النتيجة و ستكون 3 .
أظن الآن الأمر واضح جدا بالنسبة لتعامل الوحدة مع البيانات ، لكن مع هذا يبدو أنها تقوم بكل العمل وحدها !؟ هنا يجب ذكر دور UCC و الذي لا يمكن لوحدة الحساب و المنطق أن تفعل شيئا بدونه ، حتى وحدات الإخراج كالشاشة تحتاج تلك الوحدة كثيرا لإتمام أو بالأحرى معرفة كيف ستقوم بعملها .


وحدة التحكم UCC :
هذه صورة بسيطة صممتها على السريع توضح الأمر المقصود

UCC و UAL نعرفهما الآن ، لكن ماهي E/S و MC ؟
E/S بمعنى Entrés et Sortis و نقصد بهما الإدخال و الإخراج . وحدات الإدخال كالفأرة و الكيبورد و وحدات الإخراج هي الشاشة و مكبرات الصوت مثلا .
MC و هي Memoire Central ، نقصد بها الذاكرة المركزية ، لكن ماهي هذه الذاكرة ؟ الذاكرة المركزية هي الـ RAM و المسجلات التي تكلمنا عنها في الأعلى .

وحدة التحكم تقوم بترجمة الأوامر ليتمكن كل من العناصر المذكورة أعلاه بالقيام بعمله ، كما تعلم فإن لغة الحاسوب هي البايناري أي النظام الثنائي ، فالحاسب لا يتعامل أبدا مع الكلمات كأن تقول له إفتح فيفتح لك ، لكنه يتعامل مع 0 و 1 ، مثلا الأمر "قم بفتح قارئ الأقراص" قد تعادلها في النظام الثنائي 01101110100001110101010 ، كيف لوحدة الحساب أن تفهم ذلك ؟ فوحدة التحكم تقوم بترجمة مايعنيه الأمر ثم تراسل وحدة الحساب و المنطق لتتمكن هذه الأخيرة من القيام بالعملية الحسابة .

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

تم بحمد الله .
أي استفسار أو تعقيب ضعوه في تعليق بالموضوع .

0 رد على "درس بسيط في هندسة الحواسيب : كيف يتعامل المعالج مع البيانات ؟"

إرسال تعليق