لغة الحاسوب : شرح مفصل للأنظمة الرقمية


 
السلام عليكم ورحمة الله تعالى وبركاته 
زوار ومتتبعي محترفي الويب , اهلا بكم



:: الأنظمة الرقمية ::



ملاحظه :
- هذه الإشارة ( ^ ) أقصد بها الأُس .. أي إذا كتبت (4^2 ) تعني 2 مرفوعه للقوة 4



.. مقدمـــة ..
سأتطرق في الجزء الأول من هذا الموضوع إلي شرح الأنظمة الرقمية التالية :
-النظام العشري Decimal System
-النظام الثنائي Binary System
-النظام الثماني Octal
-النظام السادس عشري Hexadecimal
-النظام العشري المشفر ثنائياً BCD أو Binary-Coded-Decimal


إن كل نظام سمي بعدد مكوناته من الأرقام أي أن النظام الثنائي يحوي على رقمين هما  0 و1 والعشري على عشرة من 0 الى غاية 9 وهكذا وسيتضح أكثر من خلال السطور القادمة إن شاء الله . . .


.. .. .. .. .. .. .. .. .. .. .. .. .. ..


الأرقام عبارة عن | رموز | تُستعمل لتمثيل كميات معينه , والنظام الرقمي الأكثر شيوعاً والأقدم هو
:: النظام العشري Decimal System :: , قاعدة 10 [ لأنه يتكون من عشرة رموز]
وسمي كذالك بالنظام الرقمي العربي , نسبة إلى مخترعيه العرب اللذين أدخلوه إلى أوروبا قبل 800 سنه , وكل الدول المتحضرة تبنته رسمياً , هو النظام الأكثر استعمالا في حياتنا اليومية , وتكيفنا الذهني معه أكثر من غيره من الأنظمة
النظام العشري يستعمل عشرة رموز أو أرقام [ 0,1,2,3,4,5,6,7,8,9 ] وربما يرجــــع ذلك إلى أن الإنسان له عشرة أصابع , يستعملها بطريقة عفوية أو معتمدة للعد, منذ أقدم العصورعندما نعد عشريا , نبدأ بالرقم الأقل قيمة [0] الصفر, ثم [1] واحد, [2] .…الخ حتى الوصول إلى [9] تسعه , وهو الرقم الأكبر قيمة , أي عد إضافي ينتج انتقال إلى اليمين , (Carry) منتجاً الرقم عشره [ 10]
في الرقم[ 10] يكون الرقم [1] يحتل موقع أو خانة العشرات (10^1=10), بينما الـ [ 0 ] الصفر يحتل خانة الآحاد (10^0=1) . . .
لاحظوا معي هنا الإختلاف بين الـ 9 و الـ 10 , حيثُ أنه عندما انتهينا من الأرقام ( اخر رقم هو 9) رجعنا للرقم الأول و هو 0 و أضفنا واحد بجواره ليصبح العدد عشرة
0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10
و لو واصلنا العد لوصلنا الى الـ 19 و ثم نرجع الرقم 9 الى صفر و نضيف واحد الى الرقم 1 فيصبح الرقم 20 و هكذا. . . 10 , 11, 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19
20 , 21, 22 , 23 , .......إلخ
:: للتوضيح الفكره أكثر .. لاحظوا معي الأعداد الملونه بهذا الشكل :
0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
10 , 11, 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19
20 , 21, 22 , 23 , .......إلخ
الأرقام في خانة الآحاد تتكرر من 0 إلى 9 .. وهكذا : ) .. . اتمنى وضحت فكرة نظام العد العشري . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. ..

الآن .. ننتقل إلى .. :: النظام الثنائي Binary System :: ..

النظام الرقمي الثنائي , قاعدة 2 [ لأنه يتكون من رمزين] , يستعمل فقط رقمين وهما الصفر والواحد (0,1) , وكل من هذان الرقمين يدعى ( بِتْ , bit) , البت تتغير قيمته حسب الموقع الموجود به , في أقصى اليسار من أي عدد ثنائي يوجد البت الأكثر ثقلا ويسمى MSB وفي أقصى يمين البت الأقل ثقلا ويسمى LSB

LSB = Least Significant Digit
MSB = Most Significant Digit

المواقع أو الخانات في النظام العشري ( أحاد , عشرات , مئات , ألوف , عشرات الألوف .... الخ ) بينما في النظام الثنائي ( أحاد , اثنان , أربعات , ثمانيات , ستة عشرات , اثنان وثلاثينات , أربعه وستينات , مائه وثمانية وعشرينات .... الخ).
في نظامنا العشري , إذا وجد الرقم تسعه في الخانة الثالثة , فهو يعني 900 أي 9×100 , كذلك الأمر في النظام الثنائي , فإذا وجد الواحد في الخانة الثالثة فهو يعني أربعه أي 1×4 . فعملية التحويل من عشري إلى ثنائي وبالعكس لهي في غاية السهولة. . . .. صبراً سوف نتطرق للتحويلات .. في السطور القادمة إن شاء الله .. : ) أي الجزء الثاني من الموضوع
:: أمثلة :: لأعداد نظام ثنائي : ( 0100 , 1111, 1011 )
.. .. .. .. .. .. .. .. .. .. .. .. .. ..

ننتقل .. إلى .. :: النظام الثماني Octal :: ..
النظام الرقمي الثماني , قاعدة 8 , يستعمل ثمانية رموز ( 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ) يختلف عن النظام العشري بأنه لا وجود الرقمين, ( 8 , 9 ) فأعلى رقم في النظام الثماني هو السبعة .
.. .. .. .. .. .. .. .. .. .. .. .. .. ..

ننتقل .. إلى .. :: النظام السادس عشري Hexadecimal :: .. ويسمى كذلك Hex
هو النظام الأكثر استعمالاً في الأجهزة الإلكترونية , وبالحاسب على وجه الخصوص , يسمى بنظام قاعدة 16 كذلك , يتألف من ستة عشر رمزاً وهما الأرقام من (0 إلى 9)
بالإضافة إلى الأحرف ( A , B , C , D , E , F)
الرقم الأكبر هو الحرف(F) والذي يوازي( 15 عشرياً) , والأقل قيمة هو الصفر ويعد في هذا النظام من الصفر إلى F
:: أمثله :: لأعداد سادس عشريه : (A23F , 23FF , F4 , DF)
.. .. .. .. .. .. .. .. .. .. .. .. .. ..

:: النظام العشري المشفر ثنائياً (BCD) Binary-Coded-Decimal ::
ليس نظاماً رقمياً بحد ذاته , بل يمزج ما بين العشري والثنائي , وتعتمد عليه بعض الآلات الحاسبة . وكثير من الشرائح الإلكترونية , فكيف يعمل نظام  BCD ؟
 كيفية التحويل بين الأنظمة الرقمية .. .. وهنا سأفصل بالتفصيل الممل : )


إن كل الأنظمة الرقمية التي سندرسها , هي أنظمه موقعيه ( قاعدة 2, 8, 10, 16 )
وتُطبق عليها القوانين التالية
(1) كل موقع أو خانه يضرب قيمة (العدد) × ( بالقاعدة) .
(2) الانتقال من موقع إلى التالي (يكبر) الثقل بعامل( يساوي) القاعدة .
(3) (عدد) الأرقام المستعملة في النظام ( مساوي) للقاعدة.
(4) الرقم (الأكبر) قِيَمُه (يساوي) القاعدة (ناقص واحد).



.:: نبدأ بالنظام العشري Decimal System ::.

.. مــ 1 ــثال ..

لنأخذ العدد 10( 735 ) على صعيد المثال:
الرقم 5 هو الرقم الأقل قيمة LSD --- >Least Significant Digit
والرقم 7 هو الرقم الأكثر قيمة MSD --- >Most Significant Digit
وهذا الرقم 735 يتضمن أنه هناك ( 7) مِئاتْ , ( 3 ) عشراتْ و ( 5 ) وحدات. ويمكن أن يعبر عنه بالصورة التالية :





.. مــ 2 ــثال ..
الرقم 10(134 ) يتضمن أنه هناك ( 1) مِئاتْ , ( 3 ) عشراتْ و ( 4 ) وحدات. ويمكن أن يعبر عنه بالصورة :





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



.. .. .. .. .. .. .. .. .. .. .. .. .. ..

:: النظام الثنائي Binary System ::

في نظامنا العشري , إذا وجد الرقم (9) في الخانة الثالثة , فهو يعني 900 أي 9×100 , كذلك الأمر في النظام الثنائي , فإذا وجد الواحد في الخانة الثالثة فهو يعني أربعه أي 1×4 . فعملية التحويل من عشري إلى ثنائي عملية جداً سهله : ) و بما أن اساس النظام الثنائي هو( 2 ) فنستبدل الرقم (10) بـ 2 .. لاحظوا المثال التالي:

.. مثــال ..
أمامنا عدد من خمسه بت أي خمس خانات
2(10010) ونريد تحويله إلى عشري . نأخذ الخانة الأكثر ثقلاً وهي الخامسة.



نرى أنها تحتوي على البت 1 , وهذا معناه أن هناك واحد ستة عشرات أي 1×16 أي 16 ...... في الخانة الرابعة هناك البت صفر , الآن نقوم بنفس العملية , والناتج صفر لأن كل ما يضرب بصفر نتيجته صفر. نفس الأمر في الخانة الثالثة النتيجة صفر , في الخانة الثانية هناك واحد ومعناه 1×2 أي 2 وفي الأخير صفر.

إذا ًهناك 16 و 2 فكل ما عليك هو جمعهما لتحصل على 18 , و ها أنت قد حولت العدد الثنائي 10010 إلى عشري. . . (( سهل : ) صح )) --- > أمثله أخرى . . . ( : في ناس يحبوا الأمثله مثلي : )

.. مثـــال ..
الرقم 2( 111 ) ثنائي صحيح .. نحوله إلى عشري صحيح ؟!





جميل جـــداً ! الرقم 111 ( واحد واحد واحد) يساوي 7 في النظام العشري .. ^_^ ..

نُجرب رقم آخر .. وليكنْ 2( 1010101 ) --- > رقم مميزْ ^_^


.
.

.. إن شاء الله وضحت فكرة التحويل من ثنائي إلى عشري ..

.. هذا فلاش لتوضيح الطريقة ..
للمشاهدة .. قم بالضغط على الرابط ولحفظ الفلاش على الجهاز
بالزر الأيمن ---- > حفظ الهدف باسم

- :: عملية تحويل العدد الصحيح من النظام الثنائي إلى العشري ::-

.. ملاحظه مُهمة ..
في الأمثلة السابقه .. ذكرت فقط أمثلة على العدد الصحيح أما العدد الكسري ( يعني الذي يحوي فواصل فالأس للعدد الذي بعد الفاصله ).. يكون بإشارة السالب ..

وإليكم ملف فلاش للتوضيح
- ::عملية تحويل العدد الكسري من النظام الثنائي إلى العشري ::-

.. .. .. .. .. .. .. .. .. .. .. .. .. ..

الآن سؤال يـسدح أقصد يطرح نفسه --- > كيف نحول من عشري إلى ثنائي ؟!
الجواب :
الطريقة أسهل هنا .. كيف ؟! الآن تابعوا الخطوات التالية بتركيز
نفترض أنني أريد تحويل العدد العشري الصحيح 10(37) إلى ثنائي :
لتحويله نقسمه على 2 , فاذا كانت الناتج يحتوي على كسور فيكون الرقم الاول من الرقم الثنائي هو 1 و اذا لم يتحوي على كسور فيكون الرقم صفر ( لأنه في عملية التحويل لا مجال للكسور. )



الباقي هو الرقم الثنائي للعدد العشري 37 , ونقوم بأخذ الباقي بالترتيب من الأسفل إلى الأعلى
إذاً الرقم الثنائي لـ 2(100101) = 37 --- نقرأ العدد من اليسار هكذا :: واحد , صفر , صفر , واحد , صفر , واحد ::


.. مثـــال .. آخر
تحويل العدد العشري 10( 400 ) إلى رقم ثنائي :




والآن نأخذ الباقي من أسفل إلى أعلى كاتالي :
وهذا هو الرقم الثنائي لـ10 ( 400 ) --- > 2(110010000)



.. إن شاء الله تكون وضحت فكرة التحويل من عشري لثنائي والعكس ..
.. فلاش للتوضيح ..
-::عملية تحويل العدد العشري الصحيح إلى الثنائي ::-

.. ملاحظه .. مُهمة جـــداً ..
عندنا نأتي للتحويل علينا أن ننتبه إلى الرقم العشري
إذا كان صحيح أو كسر .. فالعدد العشري الصحيح الخالي من الكسور .. نحوله إلى أي نظام آخر بالقسمة على القاعدة لذلك النظام .. كما في الأمثله السابق ذكرها ..
:: لكن :: العدد العشري الكسري .. مثل 10 ( 0.6875 ) فتختلف طريقة التحويل !!!
:: هنا :: نقوم بضرب العدد في قاعدة النظام .. و(( ليس قسمتها )) ونقوم بأخذ العدد الصحيح للنواتج ( أي الرقم الذي يسبق الفاصله العشرية ) من أعلى إلى أسفل .. (( عكس )) ما كنا نقوم به في القسمة وإليكم مثال للإيضاح
الفكرة :



نقوم بأخذ الأرقام الصحيحة التي تسبق الفاصلة .. من الأعلى إلى الأسفل كالتالي:
وتكتب الأرقام بعد الفاصلة ولا تنسوا كتابة الـ **** الأساس 2..
ليصبح لدينا 2(0.1011)
وهذا هو الرقم الثنائي للعدد العشري الكسري
10 ( 0.6875 ) = 2(0.1011)

.. فلاش للتوضيح ..

..:: النظام الثماني Octal ::..
.. كيف نحول من عشري إلى ثماني ؟!
طريقة جداً سهله .. وتشبة إلى حد كبير .. ما سبق شرحه ..
ولكن الفرق أننا نقوم بالقسمة المتتالية للعدد العشري على ثمانية ( 8 ) وبالشكل التالي :
لنفترض أنني أريد تحويل العدد 10(267 ) إلى ثماني :
أقسم 267 على 8 فالجواب 33 والباقي 3 (LSD) --- > هذا الرمز يعني الأقل ثقلاً
أقسم 33 على 8 فالجواب 4 والباقي 1
أقسم 4 على 8 فالجواب 0 والباقي 4 (MSD) --- > هذا يعني الأكثر ثقلاً

(الباقي ) هو الرقم الثماني للعدد العشري 267
ونبدأ بترتيبه من الأسفل ---- > إلى --- > الأعلى يعني من الأكثر ثقلاً إلى الأقل ثقلاُ ... ( 4 , 1 , 3 ) , حيث الرقم الأكثر ثقلا هو الباقي الأخير ألا وهو الأربعه .
إذا 10(267) عشري ---- يساوي---- > 8 (413) ثماني .



.. .. .. .. .. .. .. .. .. .. .. .. .. ..

للتذكير والتأكيد ... ^_^
 
.. ملاحظه .. مُهمة جـــداً ..
عندنا نأتي للتحويل علينا أن ننتبه إلى الرقم العشري
إذا كان صحيح أو كسر .. فالعدد العشري الصحيح الخالي من الكسور مثل 10( 400) .. نحوله إلى أي نظام آخر بالقسمة على القاعدة لذلك النظام .. كما في الأمثله السابقة ..
:: لكن :: العدد العشري الكسري .. مثل 10 ( 0.513 ) فتختلف طريقة التحويل !!!
:: هنا :: نقوم بضرب العدد في قاعدة النظام .. و(( ليس قسمتها )) ونقوم بأخذ العدد الصحيح للنواتج ( أي الرقم الذي يسبق الفاصله العشرية ) من أعلى إلى أسفل .. (( عكس )) ما كنا نقوم به في القسمة وإليكم مثال للإيضاح
الفكرة :
.. نقوم بتحويل العدد العشري الكسري 10( 0.513 ) إلى عدد ثنائي كالتالي :



نقوم بأخذ ( الأرقام الصحيحة التي تَسبق الفاصله العشرية .. من الأعلى إلى الأسفل كالتالي:
( 4 , 0 ,6 , 5 , 1 , 7 ) ونكتبها هكذا بعد الفاصلة
8(0.406517) ولا تنسوا كتابة الـ**** الأساس 8

.. .. .. .. .. .. .. .. .. .. .. .. .. ..

..:: النظام السادس عشري Hexadecimal ::..
كيف نحول من عشري إلى سادس عشري ؟!
لنحول العدد العشري 10(1991 ) :
نقسم 1991 على 16 جواب 124 والباقي 7 (LSD)
نقسم 124 على 16 جواب 7 والباقي 12
نقسم 7 على 16 جواب 0 والباقي 7 (MSD)

ثم نقوم بأخذ .. الباقي .. من أسفل إلى أعلى ولكن الرموز في النظام السادس عشري لا يحتوي على الرقم 12 كما ذكرنا سابقاً .. فهو يحوي على الأرقام من ( 0 إلى 9 ) بالإضافة إلى الأحرف ( A , B , C , D , E , F )
والتي لها قيم معينه .. كمايلي :
(A = 10)
(B =11)
(C =12)
(D =13)
(E =14)
(F =15)

والآن .. يصبح العدد العشري 10(1991) = 16(7C7)



.. .. .. .. .. .. .. .. .. .. .. .. .. ..

كيف نحول من سادس عشري إلى عشري ؟!

نحول الرقم السادس عشري A23F)16 ) كالتالي :



فيصبح العدد العشري = 10(41535)


.. .. .. .. .. .. .. .. .. .. .. .. .. ..

بالنسبة للتحويلات .. من العشري إلى السادس عشري والعكس .. هي مجرد إضافة للفائدة
لكن الأستاذة .. ذكرت أننا مطالبين بالتحويلات التي ذكرتها سابقاً- النظام العشري Decimal System

- النظام الثنائي Binary System
- النظام الثماني Octal
.. أما .. التحويل من نظام ثماني إلى السادس العشري والعكس فيحتاج إلى الجدول


.. .. .. .. .. .. .. .. .. .. .. .. .. ..

نرجع .. إلى .. النظام العشري المشفر ثنائيا BCD) Binary-Coded-Decimal)
- كما ذكرت سابقاً بأنه ليس نظاماً رقمياً بحد ذاته , بل يمزج ما بين العشري والثنائي , وتعتمد عليه بعض الآلات الحاسبة . وكثير من الشرائح الإلكترونية , فكيف يعمل نظام BCD؟.
الجواب :
- لدي الرقم العشري 10(4975)
- نأخذ الأرقام رقماً رقماً ونحولها إلى ثنائي
- فالـ (4) تساوي 0100
- والـ (9) تساوي 1001
- والـ (7) تساوي 0111
- والـ (5) تساوي 1001
- إذاً 4975 عبارة عن BCD) 0100 1001 0111 1001)
- هو النظام العشري لكن الأرقام به تكتب ثنائيا.
.. إن شاء الله وضحت الفكــرة : )



.. إجراء العمليات الحسابية على الأعداد الثنائية الموجبة ..


:: عملية الجمـــع ::

لو أخذنا عددين ثنائيين A,B وكان كل منهما يتكون من خانة واحدة فقط Bit , وبما أن كل خانة يمكن أن تكون أما 0 أو 1 فإنه يوجد للعددين معاً أربع احتمالات كالآتي:


أما إذا كانت الأعداد الثنائية مكونة من أكثر من خانة واحدة فإن عملية الجمع تنفذ بنفس( طريقة الجمع في النظام العشري) مع مراعاة أن أساس النظام العد المستعمل هو الثنائي( 2 ).

.. هذا فلاش لتوضيح الطريقة ..
للمشاهدة .. قم بالضغط على الرابط ولحفظ الفلاش على الجهاز
بالزر الأيمن ---- > حفظ الهدف باسم


.. فـ... عملية جمع الأعداد الثنائية ... ــلاش ..


.. .. .. .. .. .. .. .. .. .. .. .. .. ..


::عملية الطرح ::

لو أخذنا عددين ثنائيين A,B وكان كل منهما يتكون من خانة واحدة فقط, فإنه توجد الاحتمالات التالية لعملية الطرح تكون كالآتي:

هذا.. فلاش لتوضيح الطريقة ..
للمشاهدة .. قم بالضغط على الرابط ولحفظ الفلاش على الجهاز
بالزر الأيمن ---- > حفظ الهدف باسم

.. فـ... عملية طرح الأعداد الثنائية... ــلاش ..


.. .. .. .. .. .. .. .. .. .. .. .. .. ..

:: عملية الضرب ::

.. هذا فلاش لتوضيح الطريقة ..
للمشاهدة .. قم بالضغط على الرابط ولحفظ الفلاش على الجهاز
بالزر الأيمن ---- > حفظ الهدف باسم


.. فـ... عملية ضرب الأعداد الثنائية... ــلاش ..


.. .. .. .. .. .. .. .. .. .. .. .. .. ..



.. .. .. .. .. .. .. .. .. .. .. .. .. ..

الى هنا ينتهى موضوعنا الجميل ,اتمنى انني قد افدتكم ولو بشيء قليل 

كان معكم اخوكم أشرف من محترفي الويب



إشترك في قناتنا على اليوتيوب وفعل زر الجرس ليصلك كل جديدنا

Mohon Aktifkan Javascript!Enable JavaScript

اعلان اعلان