المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : كيف يعمل المعالج 101



الصفحات : [1] 2

CR@N$H
06-10-2010, 00:41
https://img26.imageshack.us/img26/9083/bism3.gif (https://img26.imageshack.us/my.php?image=bism3.gif)

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

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

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

نظم العد

كلمة نظام العد تحدد طريقة استخدامنا للرموز للعد فنحن نعبر عن القطعة بالرمز 1 و نعبر عن التفاحتين بالرمز 2 وهكذا

النظام العشري

في نظام العد الذي نعتمد عليه نحن البشر هناك عشر رموز هي 0-1-2-3-4-5-6-7-8-9 بغض النظر عن اللغة التي نعتمد عليها ومن خلال هذه الرموز العشر "والتي سمي النظام بسببها نظام عشري" نستطيع أن نشكل أي عدد نريد و ذلك حسب ما توضح هذه الصورة كيف تشكل العدد 23

https://img716.imageshack.us/img716/4290/56615402.jpg (https://img716.imageshack.us/my.php?image=56615402.jpg)

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

https://img202.imageshack.us/img202/225/48729848.jpg (https://img202.imageshack.us/my.php?image=48729848.jpg)

النظام الثنائي

و هو نظام يعتمد على رمزين فقط هما 0 و 1 لوصف جميع الأعداد و هو المستخدم في الحاسب و هذا الجدول يشرح طريقة العد من 0 إلى ال15 باستخدام هذه الأرقام


0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7
1000 8
1001 9
1010 10
1011 11
1100 12
1101 13
1110 14
1111 15


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


السؤال هنا لماذا تم استخدام هذا النظام تحديدا لماذا لم يعمل الحاسب بالنظام العشري أو النظام الستيني مثلا "النظام الستيني هو النظام المستخدم في الساعة"

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

الأن بعد أن عرفنا كيف يتعامل الحاسب مع الأرقام نصل إلى السؤال كيف يتعرف على الأحرف و الرموز؟

في الحقيقة الحاسب لا يعرف أي شيء سوى الأرقام و ما حدث هو ترميز هذه الأحرف بأرقام و هذا الترميز موحد و يدعى بجدول الASCII "حاليا يتم الإعتماد على ما يسمى بالUnicode ولكنها متوافقة مع جدول الASCII القديم"


https://www.cs.utk.edu/~pham/ascii_table.jpg

نلاحظ من الجدول أن لكل حرف رقم خاص به و حتى الأرقام لها رقم خاص بها فمثلا الرقم 1 يأخذ القيمة 49 و الحرف A يأخذ القيمة 65 وهكذا
من يتعامل مع لغات البرمجة يعرف أن عليه استخدام تعليمة للتحويل بين المتحولات النصية و الرقمية و بالعكس وحتى العمليات التي تحدث على الأحرف كالتحويل بين الأحرف الكبيرة و الصغيرة ما هي إلا عملية جمع أو طرح فمثلا للتحويل بين الA "أو أي حرف كبير أخر" إلى a "الحرف الصغير المقابل للحرف الكبير" نقوم بجمع الرقم 32 "ثابت" إلى 65 "رقم ASCII للحرف الكبير " فنحصل على 97 "رقم الASCII للحرف الصغير" وهكذا و عملية التحويل العكسية تكون عن طريق عملية الطرح

طبعا من يقوم بتحويل الأرقام إلى رموز لتظهر على الشاشة هي بطاقة الإظهار و ليس المعالج

البت و البايت و مضاعفتهما

طبعا كلمة البت و البايت معروفة جدا لكني سأتحدث عن معناهما لشمولية الموضوع
كل خانة من العدد الثنائي تسمى bit لذلك هو يحتمل على إحدى القيمتين "0 أو 1" وكل 8 بتات تعطينا بايت
لذلك البايت الواحد يستطيع ان يحتوي أي قيمة من 00000000 (0) إلى 11111111 (255) و لأخذ العلم اقل حجم يمكن التخزين فيه هو 1 بايت
الأن إن إحتجنا إلى تخزين رقم أكبر نستعين ببايت أخر و تصل السعة الكلية من 0 إلى 65535 و تسمى عند إذن كلمة Word في حال الحاجة إلى زيادة القيمة التخزينية للرقم نضيف 2 بايت ليصبح الحجم الكلي 4 بايت و يسمى عندئذ ب Daul Word يحتوي على 32 بت و يتسع أرقام من 0 إلى 4294967295 وهكذا في كل مرة نضاعف عدد الخانات المستخدمة و لا يجوز الزيادة بايت بايت بل يجب أن تتضاعف
وحاليا يمكن أن تخزن القيم بمتحولات بطول 128 بت و سوف تزيد إلى 256 بت في الجيل القادم من المعالجات

أي سؤال أنا جاهز و سأكتفي بهذا القدر الضئيل من المعلومات في الجلسة الأولى

في الجلسة القادمة سأتحدث عن العمليات المنطقية الاساسية و الفاصلة العائمة و الأعداد السالبة وكيفية الحصول على بعض العمليات الرياضية من المعاملات المنطقية

الموضوع من تاليفي بالإستعانة ببعض المراجع و الكتب
أي تعديل في العنوان سيكون مشكور لأني واجهت مشاكل في إختياره

شلاع العتر
06-10-2010, 00:46
انا هنا ... أسجل أني الاول :)

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

كل التقدير لمجهودك ...

CR@N$H
06-10-2010, 00:50
مشكور أخ جهاد على الرد الجميل رغم قصره
و مشكور على التقييم
ما رأيك بأفضل عنوان للسلسلة

power.7
06-10-2010, 00:51
ماشاء الله عليك أخي خير الدين
موضوع رائع
أكيد سوف تتحدث عن عمليات الand .or. xand .xor .nand .nor
في المواضيع القادمة
وفقك الله

CR@N$H
06-10-2010, 00:56
إن شاء الله ستكون المواضيع القادمة ادسم بكثير وهذا كما يسمى عندنا "فتح تم" أخي جهاد
الموضوع القادم بإذن الله سيكون عن التعليمات الأساسية للمعالج و الثالث سيتحدث عن البنية الفيزيائية له و بعدها نتوسع أكثر فأكثر
أخي power.7
إن شاء الله

dungel
06-10-2010, 07:24
موضوع رائع ارجو ان تتوسع فيه ليكون مرجع وارجو ان يكون شامل
لاننا نفتقر لمواضيع عربيه بها عمل المعالج بشكل واسع
وان شاء الله بالتوفيق

shaker3
06-10-2010, 08:15
بداية جيدة لموضوع ضخم ومعقد بانتظار الاجزاء القادمة
لغة الارقام تبدو صعبة للوهلة الاولى لكن بعد التمعن فيها توصلت ان الارقان تعتمد على اربع خطوات في العد
0
1
10
11
وبما انه لايوجد رقم 2 او 3 او ..... سيكون الانتقال الى 100 ومن ثم المتابعة بنفس الخطوات
100
101
110
111
وهكذا :)

S@M
06-10-2010, 13:05
ممتاز اخى كرانش ..

ننتظر اكتمال السلسلة ...:)

CR@N$H
06-10-2010, 13:57
مشكور مروركم يا شباب
اخ شاكر كلامك صحيح في الحقيقة لم أرد التعمق كثيرا في خواص نظم العد

CR@N$H
06-10-2010, 16:20
بعد عمل تعديل على بعض الفقرات حصل Crash للChrome و ذهب التعديل لذلك قررت تأجيل الإضافة للموضوع الثاني :mad:
ولكني سأضيف شرح بسيط فقط لفكرة الBit و الByte و بعض المفاهيم الأخرى اليوم
شكرا أخي Tech-Zone على التقييم
أتمنى من أي أخ لديه أي اقتراح او استفسار أن يذكره حتى و إن كان إنتقاد حتى أستطيع أن أحسن من مستوى السلسلة في ما سيأتي لاحقا

The Mysterious
06-10-2010, 21:23
بارك الله فيك على الإفادة، بانتظار مزيدك :).
"هذه المشاركة بواسطة الهاتف الجوال"

CR@N$H
06-10-2010, 21:43
بارك الله فيك على الإفادة، بانتظار مزيدك :).
"هذه المشاركة بواسطة الهاتف الجوال"

الله يخليك لينا أخي Bigmaster
اخ محمد مشكور على تقييم واوحد يكفي على كل موضوع صدقني

EN.AhMeD
07-10-2010, 01:51
موضوع مفيد ويبسط اعقد عمليات المعالجه المركزيه لمختلف التطبيقات اليوميه

Muhamad Amru Eldan
07-10-2010, 14:24
كيفك اخي احمد ويا ؤيت تعدل موصفات جهازك :) وعلى كل اخي كرانش موضوع حلو بس انا عندي سوال هل ممكن ان يستفيد الانسان بشي بعد قرائه الموضوع اذا لم يكن هناك (عملي) وانت بتعرف شقد مهم العملي

CR@N$H
07-10-2010, 14:39
أخي الإستفادة العملية صعب بالنسبة للكثيرين و خصوصا غير المختصين فهي تفيد في برمجة الشرائح الإلكترونية مثل الPLD , CPLD , FPGA أو حتى الMicrocontrollers & DSP
أما الفائدة النظرية هي في فهم ما يفعله الحاسب عوضا عن استخدامه فقط

bika08
07-10-2010, 20:52
اموت شوقا للجزء الثانى :) ... ممتاز اخى خير الدين و بداية موفقة ان شاء الله فى هذة السلسلة و اتمنى ان نرى الجزء الثانى فى اقرب وقت و بتعمق اكثر

بالتوفيق :o

nayef108
08-10-2010, 01:17
انتظار السلسلة المتممة المعقدة :D
ما شاء الله عليك اخي خير الدين أزخرت المنتدى بإفاداتك الكثيرة
شكرا جزيلا

Maxwell
08-10-2010, 01:43
رائع اخي خير الدين شرح مبسط وواضح للاساسيات, من المهم وجود مواضيع كهذه باللغة العربية وبشرح مبسط

بانتظار بقية الاجزاء

Dr Mohammad
08-10-2010, 13:22
فكرة السلسلة رائعة أخى خير الدين
ما شاء الله أسلوبك بسيط جدا
بانتظار دسامة محترمة فى الأجزاء القادمة ;)

Hameedo
08-10-2010, 22:47
موضوع جيّد أخي خير ، لكن أري أنك اختصرت منه الكثير ، وأشعر أن التفصيل حتي في الأمور الصغيرة سيكون أفضل ، ولا تقلق من طول الموضوع .

استمر يا أخي .. بارك الله فيك .

CR@N$H
08-10-2010, 23:08
لكن أري أنك اختصرت منه الكثير
ابتغيت البساطة و لكني وصلت إلى الإختصار للأسف على كل حال الموضوع الثاني أصبح شبه جاهز و إن شاء الله سيعجبكم و سيغطي ما تاه من تفاصيل هذا الموضوع

eng.ahmedhelal
09-10-2010, 00:26
متميز كالعاده يا كرانش
:)

OMDA
09-10-2010, 04:09
ممتاز اخى خير الدين
وفى انتظار جديدك باذن الله
للاسف سمعه مزرجن :(

DaRk L0rD
10-10-2010, 23:06
رائع اخي CR@N$H ممتاز

ameer_s
11-10-2010, 10:38
موضوع متميز ......

محمد أبوحجلة
11-10-2010, 14:44
السلام عليكم

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

على كل حال بارك الله بك ... وإنتظار الجزء الثاني من السلسلة. ;)

CR@N$H
12-10-2010, 23:29
مشكورين يا شباب
انا أعتذر عن تاخر الموضوع الثاني للغد بسبب مشاكل في الFlash memory التي وضعت عليها ملفات الموضوع بعد نقلها من حاسبي إلى الحاسب المتصل بالإنترنت "في غير منطقة طبعا"
إن شاء الله غدا سيكون موجود على المنتدى
و أعيد و أكرر اني أعتذر و بشدة

ameer_s
13-10-2010, 00:09
ولا يهمك ...

CR@N$H
13-10-2010, 17:57
تم إصدار الموضوع الجديد و الحمد لله
كيف يعمل المعالج 102 (https://www.arabhardware.net/forum/showthread.php?p=1590070)
و أرجو إعادة تسمية هذا الموضوع : كيف يعمل المعالج 101

mostafa341
14-10-2010, 14:20
شكراً اخي خير الدين على هذه المعلومات القيمة و جعله الله في ميزان حسناتك .