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 بت في الجيل القادم من المعالجات
أي سؤال أنا جاهز و سأكتفي بهذا القدر الضئيل من المعلومات في الجلسة الأولى
في الجلسة القادمة سأتحدث عن العمليات المنطقية الاساسية و الفاصلة العائمة و الأعداد السالبة وكيفية الحصول على بعض العمليات الرياضية من المعاملات المنطقية
الموضوع من تاليفي بالإستعانة ببعض المراجع و الكتب
أي تعديل في العنوان سيكون مشكور لأني واجهت مشاكل في إختياره
سنتحدث في هذه السلسلة عن بنية المعالج بشيء من التفصيل و وستكون على عدة مواضيع يفصل بين كل موضوع و موضوع فترة إسبوع حتى تتم مناقشته بشكل جيد لأنه في حال حدث انقطاع في تدفق المعلومات ستواجه مشاكل في المتابعة
الهدف الأساسي من إختراع أي شيء هو خدمة البشر و كان الهدف من إختراع الحاسب هو تصميم ألة تستطيع أن تنفذ العمليات الحسابية عوضا عن البشر و بدقة اكبر "الغرض الأصلي كان عسكري من اجل المساعدة في حسابات إطلاق الصواريخ"
فكان هدف العلماء بداية هو إيجاد طريقة لإدخال القيم على الألة بحيث تفهمها و كيفية إجراء العملية الحسابية عليها و كيفية إخراج هذه القيم
نظم العد
كلمة نظام العد تحدد طريقة استخدامنا للرموز للعد فنحن نعبر عن القطعة بالرمز 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 بت في الجيل القادم من المعالجات
أي سؤال أنا جاهز و سأكتفي بهذا القدر الضئيل من المعلومات في الجلسة الأولى
في الجلسة القادمة سأتحدث عن العمليات المنطقية الاساسية و الفاصلة العائمة و الأعداد السالبة وكيفية الحصول على بعض العمليات الرياضية من المعاملات المنطقية
الموضوع من تاليفي بالإستعانة ببعض المراجع و الكتب
أي تعديل في العنوان سيكون مشكور لأني واجهت مشاكل في إختياره