طريق المعرفة
عزيزي الزائر أنت غير مسجل لدينا ؟
من فضلك ، قم بالتسجيل حتي تستطيع الدخول للمنتدي.


الأستاذ / جمـال إبراهيم عوض الله .Prof.Gamal Ibrahim Awadallah
 
الرئيسيةمكتبة الصورالتسجيلدخول

شاطر | 
 

 كيف يعمل الحاسوب ؟

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل 
كاتب الموضوعرسالة
Prof.gamal
Admin
Admin
avatar

ذكر عدد الرسائل : 1311
العمل : معلم وقـائـد كشـفـي
تاريخ التسجيل : 25/01/2008

مُساهمةموضوع: كيف يعمل الحاسوب ؟   الأربعاء مايو 21, 2008 8:14 am

الدارة الكهربائية إما موصولة(يمر بها تيار) أو مفصولة(لا يمر بها تيار)، كالمصباح مضاء أو مطفأ. نرمز في الحاسوب لمرور التيار بالواحد وعدمه بالصفر (لا علاقة لكمية التيار هنا فلا نقول أن 1 هي 1 أمبير و لا واحد فولت ولا نقول إذا كان 5 فولت 1 فإن 1000 فولت تمثل أكثر من واحد بل تعمل الدارة في مدى محدد للفولتية ضمنه واحد ودونه صفر) وهما حالاتن فريدتان صفر أو واحد لا يوجد بينهما حالة ولا يوجد واحد كبير وآخر صغير هذه الطريقة تسمى الطريقة الرقمية وعكسها الموجات التناظرية حيث كلما زاد الجهد الكهربائي زاد مقدار ما تمثله لهذا تقبل هذه الموجات التشويش بينما الموجات الرقمية هي إما واحد أو صفر. لا يوجد واحد واضح وآخر غير واضح.



يمكن لهذا النظام أن يمثل أي عدد كما نفعل نحن بالأرقام {0، 1، 2، 3، 4، 5، 6، 7، 8، 9} في نظامنا العشري ونشكل منها كل الأعداد وذلك باستعمال أكثر من منزلة تكون قيمة الرقم فيها عشر أمثال مما لو كان في المنزلة السابقة أي أن 3 في المنزلة الثانية 30 والثالثة 300. في نظام الصفر والواحد الذي نسميه النظام الثنائي يكون للعدد مثلي قيمته لو كان في المنزلة السابقة مثلاً 1 تعني 1 و 10 تعني مثلي الواحد أي 2 وهكذا
000001b= 1d
000010b= 2d
000100b= 4d
001000b= 8d
010000b=16d
100000b=32d

وإذا كان هناك أكثر من رقم نجمع ويمكنك عمل ذلك بسرعة وذلك بكتابة قيمة المنزلة فوق العدد ثم جمع تلك التي كتب تحتها واحد
001011b= 001000b+000010b+000001b=8d+2d+1d=11d
32 16 8 4 2 1
0 0 1 0 1 1b= 1d+2d+8d = 11d

للتحويل بالعكس نقسم على أكبر رقم نتوقعه من قوى الإثنين : 11 ÷ 32 = 0 والباقي 11 نصع الناتج ثم نأخذ الباقي ونقسمه على نصف الرقم 11 ÷ 16 = 0 والباقي 11 نضع الناتج ونتابع 11 ÷ 8 = 1 والباقي 3 ثم 3 ÷ 4 = 0 والباقي 3 ثم 3 ÷ 2 = 1 والباقي 1 ثم 1 ÷ 1 = 1 الآن نضع النواتج بجانب بعضها فنحصل 001011. جمع الأرقام الثائية لا يختلف عن العشرية كثيراً صفر + صفر = صفر ، صفر + واحد = واحد ، واحد + واحد = صفر وباليد واحد. هذا المثال يوضح ذلك
3d + 13d = ?
3d = 000011b
13d = 001101b
1111
000011b
001101b +
----------
010000b --> 16d

أما الطرح أو الأعداد السالبة فيتم التعامل معهما بوضع علامة خاصة في آخر بت فإذا كانت قيمته 0 فهو موجب أو صفر أما إذا كانت 1 فإن العدد هو سالب المتممة الثانية للقيمة المخزنة. والمتممة الثانية هي المتممة الأولى + 1 ؛ والمتممة الأولى (تسمى النفي/المعكوس الثنائي رمزها في لغة سي ~) هي قلب كل صفر إلى واحد وكل واحد إلى صفر. هذا مثال يفترض 7 منازل للقيمة ومنزلة للإشارة.
00001101b=13d
11110011b= ??
~11110011b=00001100b
11110011b=-(00001100b+1)=-(00001101b)=-13d

تتسأل بالطبع لماذا اختاروا هذه الطريقة الغريبة ؟ السبب بسيط لأن الرقم السالب بهذه الطريقة إذا جمع مع الموجب سيعطي صفراً (ويزيد واحد باليد لا يحسب لأن هناك 8 منازل في مثالنا)
13d + (-13)d = 0
1 1111111
00001101b
11110011b +
------------
1 00000000b

تشبه هذه الطريقة عداد (المسننات مثل عداد الكيلومترات في السيارة) ، عندما يكون على الصفر وتحركه خطوة للوراء يصبح 9999 أو خطوتين 9998 وهكذا عداد الصفر والواحد عندما يكون 00000000b وتعيده خطوة للوراء 11111111b أو خطوتين 11111110b وهما يمثلان -1 و -2.



الضرب والقسمة عمليتان تأخذان الكثير من الوقت ولكن كحالة خاصة يمكن القيام بهما بسرعة فالضرب والقسمة في 2 مرفوعة لأي قوة (صحيحة) هو إزحة لليسار واليمين على الترتيب بعدد من المنازل تساوي القوة ناقص واحد وهي تشبه الضرب في 10 والقسمة عليه في النظام العشري مثلاً:
11d x 8d = 11d x 23d
0001011b << 2d = 1011000b = 88d


هذا بالنسبة للأعداد الصحيحة أما النسبية فيتم التعامل معها عبر تمثيل يسمى بالفاصلة العائمة float-point وهي تشبه التمثيل الهندسي للأرقام مثلاً سرعة الضوء 0.3x109 كم/س و شحنة الإلكترون 0.16x10-18 كولوم وهكذا ... لاحظ أن المنزلة الأولى بعد الفاصلة لا تمثل عشراً بل تعتمد قيمتها على القوة التي نرفع لها العشرة فيكون العدد مكوناً من القوة exponent وهي عدد صحيح والجزء النسبي mantissa.


العمليات التي يمكن القيام بها مثل عمليات "و" و "أو" و "أو الحصرية" تقسم إلى نوعين منطقية وثنائية المنطقية نأخذ قيمة كل رقم هل هي صفر أم لا أما الثنائية فنتعامل مع كل منزلة في الطرفين. تستخدم ‘أو‘ (في سي |) لوضع واحد في منزلة محددة سواء أكانت قيمته السابقة 1 أم 0 أما أو الحصرية XOR (في لغة سي ^)فهي تعطي واحد إذا كان أحد الطرفين واحد وليس كلاهما، تستخدم لقلب tuggle الواحدات إلى أصفار والعكس بتطبيقها على صف من الواحدات (أو لتصفير المنازل بتطبيقها على نفسها). أما ‘و‘ (في سي &)فهي تعطي واحد إذا كان كلا الطرفين واحد. وتستخدم لعمل قناع حاجب mask. انظر هذا المثال:
110110b 110110b 110110b
001100b | 001100b & 001100b ^
-------- -------- --------
111110b 000100b 111010b




_________________
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://gamalo.coolbb.net
megaman
Admin
Admin
avatar

ذكر عدد الرسائل : 527
العمر : 24
العمل : طالب
تاريخ التسجيل : 26/01/2008

مُساهمةموضوع: رد: كيف يعمل الحاسوب ؟   الجمعة فبراير 03, 2012 10:22 pm

مع جزيل الشكر
وبارك الله فيك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
 
كيف يعمل الحاسوب ؟
استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

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