في عالمٍ متسارع في التطور، يُعدّ فهمُ اللغة التي تتحدث بها أجهزة الكمبيوتر أمرًا ضروريًا لكلّ من يطمح لِفهم هذا العالم والتفاعل معه، انغمس في عالم النظام الثنائي Binary System، اللغة السرية التي تُحرّك الكمبيوتر نظام العد الثنائي من اهم الانظمة في مجال الكمبيوتر وهنا سيتم شرح النظام الثنائي في الحاسوب.
النظام الثنائي هو نظام عددي يحتوي على عددين 0 و 1، ويمثل المعلومات بحالتين فقط لا ثالث لهما اما متصل او مغلق، ويتكون العدد الثنائي من عناصر تسمى بِتات bits بحيث يمكن أن يكون كل بت بإحدى الحالتين المحتمَلتَين، والتي نمثلهما بالرقمين 1 و 0 وتعني نعم او لا ومن خلال هذه الاحتمالين فقط يتم حفظ وعرض كل البيانات.
شرح نظام العد الثنائي |
في درسنا السابق من دورة أساسيات مهمة لكل مبرمج على منصة سويد فور يو في درس ما هو الكمبيوتر وما هي مكونات الحاسوب و وظائفه المهمة للمبرمجين تعرفنا على مكونات الكمبيوتر وكيفية عملها معًا لتنفيذ مُختلف المهام. واليوم، سنخوض في عالمٍ أكثر عمقًا ونكتشف اللغة السرية التي تُحرّك جميع هذه المكونات وتُمكنها من التواصل مع بعضها البعض، ألا وهي النظام الثنائي.
سنتعرف في هذه المقالة على مفهوم النظام الثنائي وأهميته في عالم الكمبيوتر، وكيف يُمكن تمثيل مختلف أنواع البيانات باستخدام الصفر (0) والواحد (1) فقط. فَانضمّ إلينا في هذه الرحلة المُثيرة لِنكتشف معًا أساس عالم التكنولوجيا الرقمية!
2. النظام الثنائي: اللغة التي يفهمها الكمبيوتر
في حياتنا اليومية، نستخدم النظام العشري (Decimal System) للعدّ والتعبير عن الأرقام. يعتمد هذا النظام على عشرة رموز (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) لتكوين أيّ رقم، وتُحدد قيمة الرقم بِناءً على مَوقع الرمز ضمن الرقم. فعلى سبيل المثال، الرقم "357" يعني (3 × 100) + (5 × 10) + (7 × 1).
أما الكمبيوتر، فله طريقة مُختلفة تمامًا للعدّ وتمثيل الأرقام، فهو يستخدم النظام الثنائي (Binary System). يتكون هذا النظام من رمزين فقط هما 0 و 1، و تُمثّل هذه الرموز حالتين مُختلفتين للإشارة الكهربائية داخل الكمبيوتر: تشغيل (1) أو إيقاف (0).
البت (Bit): حجر الأساس
يُطلق على كل رمز في النظام الثنائي اسم "بت" (Bit)، وهي اختصار لِـ Binary Digit. يُمكن لِلـ "بت" أن يأخذ قيمة واحدة فقط من قيمتين مُمكنتين: 0 أو 1.
البت (Bit) |
تخيل أن لديك مصباحًا كهربائيًا، يمكنك إما تشغيله (1) أو إيقافه (0). هذا المصباح يُشبه "بت" واحد في النظام الثنائي.
البت (Bit) في نظام العد الثنائي |
البايت (Byte): مجموعة من البتات
ولتمثيل بيانات أكثر تعقيدًا من مجرد 0 أو 1، يقوم الكمبيوتر بتجميع عدة بتات معًا في مجموعة تُسمى بايت (Byte). يتكوّن البايت الواحد من 8 بتات.
إذا عدنا إلى مثال المصابيح، فَتخيّل أن لديك 8 مصابيح كهربائية يمكنك التحكم في كل واحد منها بشكلٍ مُستقل (تشغيل/إيقاف). يُمكنك باستخدام هذهِ المجموعة من المصابيح تمثيل 256 حالة مُختلفة (2⁸) ، حيث يمثل كل مصباح بت واحد، وتُمثّل الحالة الإجمالية لجميع المصابيح بايت واحد.
البايت (Byte) |
سنتعرف على البايت بشكل أعمق في الدرس القادم، حيث سنستكشف مُكوّناته وطرق استخدامه في تمثيل مختلف أنواع البيانات.
معالج الكمبيوتر مجموعة كبيرة من الترانزستورات |
معالج الكمبيوتر: مجموعة كبيرة من الترانزستورات
داخل كل جهاز كمبيوتر، يُوجد مُكوّنٌ يُشبه مدينةً صغيرةً مُزدحمةً بِملايين الترانزستورات. هذهِ المدينة هي وحدة المعالجة المركزية (CPU) ، أو ما نُطلق عليه المُعالج.
الترانزستور هو مُكوّنٌ إلكترونيٌّ صغيرٌ يُمكنه التحكم في تدفق التيار الكهربائي. يُمكن تشبيهه بِمفتاح كهربائي يُمكن فتحه (1) أو إغلاقه (0). بِدمج ملايين من هذه الترانزستورات معًا بِطريقةٍ مُحددة، يُصبح بِإمكان المعالج تنفيذ مُختلف العمليات الحسابية والمنطقية بِاستخدام النظام الثنائي.
تخيّل أن كل ترانزستور هو مصباح كهربائيٌّ صغيرٌ يُمكن تشغيله أو إيقافه. بِتغيير حالة هذه المصابيح (الترانزستورات) بطريقةٍ مُنظمة، يُمكن لِلمعالج تمثيل الأرقام والحروف والصور، وتنفيذ التعليمات المُبرمجة عليه.
3. العد في النظام الثنائي: رحلة في عالم الآحاد والأصفار
يُشبه العد في النظام الثنائي تسلق سلمٍ ذي درجاتٍ مُحددة، لكن بدلاً من صعود درجة واحدة في كل مرة كما في النظام العشري، نقوم بِمُضاعفة العدد في كل خطوة.
لنأخذ مثالًا:
النظام العشري: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11...
النظام الثنائي: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011...
هل لاحظت الفرق؟ في النظام العشري، نضيف 1 في كل خطوة، بينما في النظام الثنائي، نُضاعف القيمة السابقة.
كيف نُكوّن الأعداد في النظام الثنائي؟
كل خانة في الرقم الثنائي تُمثّل قوة مُحددة للعدد 2، تمامًا كما تُمثّل كل خانة في الرقم العشري قوة مُحددة للعدد 10.
الخانة الأولى (من اليمين إلى اليسار): تُمثّل 2⁰ = 1
الخانة الثانية: تُمثّل 2¹ = 2
الخانة الثالثة: تُمثّل 2² = 4
الخانة الرابعة: تُمثّل 2³ = 8
وهكذا...
مثال:
لنفترض أن لدينا الرقم الثنائي 1101:
نبدأ من اليمين إلى اليسار.
الخانة الأولى: 1 × 2⁰ = 1
الخانة الثانية: 0 × 2¹ = 0
الخانة الثالثة: 1 × 2² = 4
الخانة الرابعة: 1 × 2³ = 8
نقوم بجمع القيم: 1 + 0 + 4 + 8 = 13
إذًا، الرقم الثنائي 1101 يُعادل الرقم العشري 13.
لماذا يستخدم الكمبيوتر النظام الثنائي؟
السبب الرئيسي هو أن الكمبيوتر يتعامل مع الإشارات الكهربائية، والتي يمكن تمثيلها بِحالتين: تشغيل (1) أو إيقاف (0). يُسهّل النظام الثنائي تمثيل هذهِ الحالات وتخزينها ومعالجتها بِكفاءةٍ داخل الكمبيوتر.
تمثيل البيانات في النظام الثنائي |
4. تمثيل البيانات في النظام الثنائي: كيف يفهم الكمبيوتر العالم؟
لنُكمل رحلتنا في عالم النظام الثنائي، ولنُبحر هذه المرة في أعماق كيفية تمثيل الكمبيوتر لمختلف أنواع البيانات التي تُشكّل عالمنا الرقمي. فَكُل ما نراه ونسمعه على أجهزتنا الرقمية، من نصوص، وصور، وأصوات، ومقاطع فيديو، يتم تمثيله وتخزينه ومعالجته باستخدام لغة الآحاد والأصفار.
4.1 الأرقام: تحويلات سحرية بين العوالم
تُعدّ الأرقام اللبنة الأساسية للعديد من العمليات التي يقوم بها الكمبيوتر، من الحسابات البسيطة إلى التحليلات المُعقدة. ولكن كيف يُمكن لِلكمبيوتر، الذي لا يفهم إلا 0 و 1، التعامل مع الأرقام التي نستخدمها في حياتنا اليومية والتي تعتمد على النظام العشري؟
هنا يأتي دور التحويل بين النظامين العشري والثنائي. فلنُلقِ نظرةً مُفصّلة على كيفية تحويل الأرقام من النظام العشري إلى النظام الثنائي والعكس.
4.1.1 من العشري إلى الثنائي: فكّ شيفرة الأرقام
لِنَفترض أن لدينا الرقم "25" في النظام العشري، ونُريد تحويله إلى النظام الثنائي. سنقوم بِاتباع الخطوات التالية:
- البحث عن أكبر قوة للعدد 2 أصغر من الرقم 25: وهي 2⁴ = 16
- وضع 1 في خانة هذه القوة (الخانة الخامسة من اليمين): 1____
- طرح 16 من 25: 25 - 16 = 9
- تكرار الخطوات السابقة مع العدد 9:
- أكبر قوة للعدد 2 أصغر من 9 هي 2³ = 8
- وضع 1 في خانة هذه القوة (الخانة الرابعة): 11___
- طرح 8 من 9: 9 - 8 = 1
- تكرار الخطوات مع العدد 1:
- أكبر قوة للعدد 2 أصغر من 1 هي 2⁰ = 1
- وضع 1 في خانة هذه القوة (الخانة الأولى): 11001
- وضع 0 في أيّ خانة فارغة: 11001
إذًا، الرقم "25" في النظام العشري يُكتب "11001" في النظام الثنائي.
4.1.2 من الثنائي إلى العشري: فهم لغة الآلة
لنأخذ الآن الرقم الثنائي "10110" ونُحوّله إلى النظام العشري:
نبدأ من اليمين إلى اليسار:
نُضرب كل خانة في قوة العدد 2 المُناسبة:
الخانة الأولى: 0 × 2⁰ = 0
الخانة الثانية: 1 × 2¹ = 2
الخانة الثالثة: 1 × 2² = 4
الخانة الرابعة: 0 × 2³ = 0
الخانة الخامسة: 1 × 2⁴ = 16
نجمع النواتج: 0 + 2 + 4 + 0 + 16 = 22
إذًا، الرقم الثنائي "10110" يُعادل الرقم العشري "22".
4.2 الأحرف: من الحروف إلى الأرقام
كيف يُمكن للجهاز الذي لا يفهم إلا 0 و 1 أن يتعامل مع الحروف التي نستخدمها في الكتابة والتواصل؟
هنا يأتي دور نظام ASCII (American Standard Code for Information Interchange)، وهو نظام ترقيم معياري يُستخدم لتمثيل الحروف والأرقام والرموز بِأرقام ثنائية. يُخصص هذا النظام رقمًا ثنائيًا مُحددًا لكل حرف أو رمز، مما يُتيح للجهاز فهم وتخزين ومعالجة النصوص.
فعلى سبيل المثال:
الحرف "A" يُمثّل بِالرقم الثنائي "01000001"
الحرف "B" يُمثّل بِالرقم الثنائي "01000010"
الرمز "!" يُمثّل بِالرقم الثنائي "00100001"
4.3 الصور: لوحات من البكسلات الثنائية
هل تتخيل كيف يُمكن تمثيل الصور بِاستخدام 0 و 1 فقط؟
تُقسّم الصورة إلى مربعات صغيرة جداً تُسمى "بكسلات" (Pixels). يُمكن تشبيه هذهِ البكسلات بِقطع الموزاييك التي تُشكّل معًا الصورة الكاملة.
يُعطى كل بكسل قيمة ثنائية تُحدد لونه أو درجة سطوعه. فَفي الصور الرمادية مثلاً، يُستخدم 8 بتات لِتمثيل 256 درجة من الرمادي، من الأبيض النقي (00000000) إلى الأسود النقي (11111111). أما في الصور المُلوّنة، فيُستخدم مزيج من البتات لِتمثيل مُختلف الألوان.
بِتجميع ملايين البكسلات معًا ، وإعطاء كل بكسل قيمة ثنائية مُحددة، يُمكن للجهاز تمثيل صورٍ بِدقة عالية وإظهارها على الشاشة.
وهكذا، بِفهم كيفية تمثيل البيانات في النظام الثنائي، نُدرك كيف يقوم الكمبيوتر بِفهم وتخزين ومعالجة جميع المعلومات التي نُدخلها عليه.
5. العمليات الحسابية في النظام الثنائي: حسابات في عالم الآحاد والأصفار
بعد أن أصبحنا مُلّمين بِكيفية تمثيل الأرقام في النظام الثنائي، حان الوقت لِنكتشف كيف يقوم الكمبيوتر بإجراء العمليات الحسابية بِاستخدام هذهِ اللغة. قد تبدو العمليات الحسابية في النظام الثنائي مُعقدةً في البداية، لكنّها في الواقع بسيطةٌ جداً وتعتمد على مجموعة من القواعد الأساسية.
5.1 الجمع: ببساطة 0 + 1
لِنبدأ بِعملية الجمع، وهي أبسط العمليات الحسابية. تعتمد عملية الجمع في النظام الثنائي على القواعد التالية:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 10 (حيث يتم حمل الرقم 1 إلى الخانة التالية)
مثال:
لِنَجمع العددين الثنائيين 101 و 110:
1 0 1 = 1 1 0
+ 1 0 1 1
-----------
1 0 1 1
شرح:
- نبدأ بِجمع الخانة الأولى (من اليمين): 1 + 0 = 1
- ننتقل إلى الخانة الثانية: 0 + 1 = 1
- ننتقل إلى الخانة الثالثة: 1 + 1 = 10 (نكتب 0 ونحمل الرقم 1 إلى الخانة التالية)
- بِما أن لا يوجد خانة رابعة، نكتب الرقم المحمول (1) مُباشرةً: 1011
إذًا، ناتج جمع 101 و 110 هو 1011.
5.2 الطرح: عندما تُصبح 0 أقل من 1
عملية الطرح في النظام الثنائي تُشبه عملية الطرح في النظام العشري، ولكن مع بعض الاختلافات في كيفية الاستعارة (Borrowing). فَعندما نُريد طرح 1 من 0، نحتاج إلى الاستعارة من الخانة التالية.
مثال:
لِنطرح العدد الثنائي 101 من العدد 110:
1 1 0 = 1 1 0
- 1 0 1
-----------
0 1
شرح:
- نبدأ بِطرح الخانة الأولى: 0 - 1 (نحتاج إلى الاستعارة من الخانة التالية)
- تُصبح الخانة الثانية 0 ، ونُضيف لها 2 (قيمة الخانة التالية): 0 + 2 = 2
- نطرح 1 من 2: 2 - 1 = 1
- ننتقل إلى الخانة الثالثة: 0 - 1 (نحتاج إلى الاستعارة)
- بِما أن لا يوجد خانة رابعة، نعتبر أن القيمة المُستعارة هي 2
- نطرح 1 من 2: 2 - 1 = 1
إذًا، ناتج طرح 101 من 110 هو 01.
5.3 الضرب: تكرار بسيط
عملية الضرب في النظام الثنائي تُشبه عملية الضرب في النظام العشري، ولكن مع بعض الخصائص التي تُسهّل العملية:
- 0 × 0 = 0
- 0 × 1 = 0
- 1 × 0 = 0
- 1 × 1 = 1
مثال:
لِنُضرب العددين الثنائيين 101 و 11:
1 0 1 = 1 0 1
x 0 1 1
-------
1 0 1
0 0 0
+1 0 1
-------
1 1 1 1 1
5.4 القسمة: طرح متكرر
عملية القسمة في النظام الثنائي تُشبه عملية القسمة في النظام العشري، حيث نقوم بطرح المقسوم عليه من المقسوم مُتكررًا حتى نصل إلى باقي أقل من المقسوم عليه.
مثال:
لِنَقسم العدد الثنائي 1101 على 10:
1 0 1 = 1 1 0 1
/ 1 0
-------
1 1
1 0
---
0 1
0 0
---
1
تُعتبر عمليات الضرب والقسمة في النظام الثنائي أكثر تعقيدًا من الجمع والطرح، لكنّها لا تزال تعتمد على مبادئ بسيطة. فَعملية الضرب تُشبه عملية الضرب في النظام العشري، ولكن مع الاهتمام بِحمل الأرقام (Carry). أما عملية القسمة، فتعتمد على مبدأ الطرح المُتكرر.
مقارنة بين العمليات في النظامين العشري والثنائي:
- أوجه التشابه: تعتمد العمليات الحسابية في كلا النظامين على مبادئ مُتشابهة، مثل الجمع والطرح والضرب والقسمة.
- أوجه الاختلاف: يختلف النظام الثنائي عن العشري في عدد الرموز المُستخدمة (0 و 1 فقط) وكيفية الاستعارة (Borrowing) في عملية الطرح، وكيفية حمل الأرقام (Carry) في عملية الضرب.
6. النظام الثنائي في قلب الكمبيوتر: كيف تُحرّك الآحاد والأصفار عالمنا الرقمي؟
بعد أن غصنا في عالم النظام الثنائي وكيفية تمثيل البيانات وإجراء العمليات الحسابية بِاستخدامه، حان الوقت لِنكتشف كيف يُستخدم هذا النظام في قلب الكمبيوتر، وتحديدًا في أهم مُكوّنين: وحدة المعالجة المركزية (CPU) والذاكرة العشوائية (RAM).
6.1 وحدة المعالجة المركزية (CPU): عقل إلكترونيٌّ يتحدّث بلغة الآحاد والأصفار
تُعتبر وحدة المعالجة المركزية (CPU) بِمثابة "عقل" الكمبيوتر، فهي المُسؤولة عن تنفيذ جميع التعليمات ومعالجة البيانات. ولكن كيف تتم هذهِ العملية بِاستخدام النظام الثنائي؟
داخل المعالج، توجد ملايين من الترانزستورات، وهي مُكوّنات إلكترونية صغيرة تُشبه المفاتيح الكهربائية التي يُمكن فتحها (1) أو إغلاقها (0). تُشكّل هذه الترانزستورات "بوابات منطقية" (Logic Gates) ، والتي تُنفّذ عمليات منطقية بسيطة مثل AND و OR و NOT بِاستخدام الرموز الثنائية.
بِتغيير حالة هذه الترانزستورات (فتح/إغلاق) ، يقوم المعالج بِتمثيل البيانات وتنفيذ التعليمات بِشكلٍ مُتسلسل. فعلى سبيل المثال، لإجراء عملية جمع بسيطة مثل 1 + 1، يقوم المعالج بِتفعيل سلسلة من الترانزستورات بِطريقةٍ مُحددة تُؤدي إلى إنتاج الناتج "10" في النظام الثنائي.
6.2 الذاكرة العشوائية (RAM): مخزن للآحاد والأصفار
تُستخدم الذاكرة العشوائية (RAM) لِتخزين البيانات والتعليمات التي يعمل عليها الكمبيوتر في الوقت الحالي. وتُخزّن هذه البيانات على شكل سلسلة من البتات (0 و 1).
تخيّل أن الذاكرة العشوائية هي شبكة من الصناديق الصغيرة، يُمكن لكل صندوق أن يحتوي على قيمة واحدة فقط: إما 0 أو 1. عندما يُريد المعالج الوصول إلى بيانات مُعينة، يقوم بِتحديد عنوان الصندوق الذي يحتوي على هذهِ البيانات ويقرأ القيمة المُخزنة فيه.
وبِما أن الذاكرة العشوائية تُفقد بياناتها عند إطفاء الكمبيوتر، فإنّها تُستخدم لِتخزين البيانات المؤقتة التي يحتاجها الكمبيوتر أثناء عمله.
7. تطبيقات النظام الثنائي: من حولنا في كل مكان!
النظام الثنائي ليس مجرد مفهوم نظري مُجرّد، بل هو الأساس الذي تقوم عليه جميع التطبيقات التكنولوجية التي نستخدمها في حياتنا اليومية.
7.1 الشبكات الرقمية: سيلٌ من الآحاد والأصفار
هل تتخيل كيف تنتقل البيانات عبر الإنترنت من قارةٍ إلى أخرى في ثوانٍ معدودة؟ أو كيف يُمكنك مُشاهدة فيديو على هاتفك بِدون تقطيع أثناء اتصالك بِشبكة Wi-Fi؟
كل هذهِ التقنيات تعتمد على النظام الثنائي! فَالبيانات التي تنتقل عبر الشبكات الرقمية تُحوّل إلى سلسلة من البتات (0 و 1) ، والتي تُرسل على شكل إشارات كهربائية أو ضوئية.
فعلى سبيل المثال:
عند إرسال رسالة عبر الإنترنت، تُحوّل الحروف التي كتبتها إلى رموز ASCII ، ثم إلى بتات، ثم تُرسل هذه البتات عبر الشبكة حتى تصل إلى الجهاز المُستقبل، حيث تُحوّل مُجددًا إلى حروفٍ يُمكن قراءتها.
عند مُشاهدة فيديو عبر الإنترنت، تُرسل بيانات الفيديو على شكل سلسلة من البتات تُمثّل الصور والأصوات.
7.2 التخزين الرقمي: مكتبات من الآحاد والأصفار
تُستخدم الوسائط التخزينية الرقمية، مثل الأقراص الصلبة (HDD) و أقراص SSD و أقراص USB و بطاقات الذاكرة، لِحفظ مُختلف أنواع البيانات بِشكلٍ دائم. وتعتمد هذهِ الوسائط أيضًا على النظام الثنائي لِتخزين البيانات.
فَداخل كل وسيط تخزينيّ، توجد مجموعة من الخلايا التخزينية الصغيرة، والتي يُمكن تشبيهها بِمفاتيح كهربائية صغيرة جداً يُمكن فتحها (1) أو إغلاقها (0). بِتغيير حالة هذه الخلايا، يقوم الكمبيوتر بِتخزين البيانات على شكل سلسلة من البتات.
8. خاتمة: النظام الثنائي: أبسط لغة، أعظم تأثير
لقد كانت رحلتنا في عالم النظام الثنائي مُثيرةً ومفيدة، حيث اكتشفنا كيف تُستخدم لغة الآحاد والأصفار لِتمثيل البيانات، وإجراء العمليات الحسابية، وتشغيل أجهزة الكمبيوتر. إن فهم النظام الثنائي هو الخطوة الأولى نحو فهم عالم التكنولوجيا الرقمية الذي نعيش فيه.
و في درسنا القادم من دورة أساسيات مهمة لكل مبرمج على سويد فور يو، سنُكمل رحلتنا وننتقل إلى موضوع السرعات وحدات القياس في عالم الكمبيوتر. سنتعرف على كيف تُقاس سرعة المعالج والذاكرة وغيرها من مكونات الكمبيوتر، وكيف تُؤثّر هذهِ السرعات على أداء الجهاز.
الدرس التالي: السرعات ووحدات القياس في الكمبيوتر دليلك الشامل لوحدات القياس وجميع مكوناته
للاطلاع على خارطة الكورس الحالي كورس أساسيات مهمة لكل مبرمج الجزء الاول المجانية بالكامل
استعدوا لِغوصٍ أعمق في عالم التكنولوجيا مع سويد فور يو!
ما هو رايك في المحتوى ؟
هل لديك اي سؤال أخر؟