نظام العد الثنائي هو اللغة الرسمية اللتي يتحدثها أي جهاز رقمي في العالم وخاصة أجهزة الكمبيوتر .
و لبناء همزة وصل بينك و بين الكمبيوتر، وجب عليك تعلم هذه اللغة و إتقانها خاصة إذا كنت تميل لمجال الإختراق 🙂
نظام العد الثنائي و مفهومه :
نظام العد الثنائي Binary code هو في الأصل وصف لحالة التيار الكهربائي في دارة كهربائية معينة ، إما أن يكون التيار متدفقا أو غير متدفق ، ففي الحالة الأولى يعبر عن مروره ب رقم 1 و في الحالة الثانية برقم 0 ، و لهذا سمي بالثنائي لأنه لا يحتمل إلا وضعيتين .
إن جميع المعلومات اللتي يقوم معالج جهاز الكمبيوتر بتحليلها هي بالأساس حالات تيار كهربائي تترجم الي مجموعة من الأرقام متكونة من 0 و 1 كهذا المثال 00011011 ، و هذه الحالات مسؤول على ظهورها مكون إلكتروني يسمى الترونزيستور Transistor وظيفته الأساسية تضخيم إشارات التيار الكهربائي بالإضافة إلى العمل كمحول في الدارة الكهربائية .
نظام العد الثنائي و مفهوم البت و البايت :
كما ذكرنا سابقا فإننا نعبر عن حالة التيار ااكهربائي بقيمتين هما 0 و 1 ، و في جهاز الكمبيوتر يقع تخزين هذه القيم في مكان يسمى الوحدة الثنائية binary digit و هي أصغر وحدة للتخزين في جهاز الكمبيوتر ، يصطلح عليها إسم البت bit و تستطيع تخزين قيمة رقمية واحدة إما 0 أو 1 .
أما البايت Byte فهي وحدة شائعة الاستخدام لقياس سعة التخزين في الحاسوب ، بغض النظر عن نوع المعلومات المخزنة أو وسيلة التخزين و يتكون البايت من 8 بت و يستطيع أن يخزن قيما يتراوح بين 00000000 و 11111111 بعدد جملي يصل إلى 28 أي 256 إحتمالا .
نظام العد الثنائي و أنظمة العد الأخرى :
نظام العد الثنائي هو واحد من عديد الأنظمة الأخرى للحساب مثل نظام العد الثماني و العشري و السداسي عشرة إلا أن الفرق بينهم يكمن في هذه النقاط :
- نظام العد الثنائي قائم على وحدتين هما : 0 و 1 .
- نظام العد الثماني يحتوي على 8 وحدات : 0 و 1 و 2 و 3 و 4 و5 و 6 و 7 .
- نظام العد العشري يرتكز على 10 وحدات : 0 و 1 و 2 و 3 و 4 و 5 و 6 و 7 و 8 و 9 .
- نظام العد السداسي عشرة فيه 16 وحدة : 0 و 1 و 2 و 3 و 4 و5 و 6 و 7 و 8 و 9 و 10 و A و B و C و D و E و F .
الحساب في نظام العد الثنائي :
في نظام العد الثنائي يكون تخزين المعلومات في الحاسب على شكل بايت بمعنى 8 بت، و كل مكان بت نعطيه قيمة من 0 إلى 7 .
إذا أردنا مثلا تمثيل هذا البايت 01010110 في جهاز الكمبيوتر فهو سيكون على الشكل الآتي :
أما إذا أردنا تسهيل كتابة البايت وقراءته بشريا فإننا نقوم بتحويله إلى النظام العشري حيث نقوم بضرب كل قيمة بت في 2n “لأن النظام قائم على قاعدة 2 ” ، بحيث n هو مكان تواجد هذا البت ” n باللون الأحمر” ، ومن ثم نقوم بجمع كل القيم اللتي تحصلنا عليها .
نبدأ من اليمين إلى اليسار :
(0 * 20) + (1 * 21) +(1 * 22) + (0 * 23) + (1 * 24) + (0 * 25) + (1 * 26) + (0 * 27)
0 + 2 + 4 + 0 + 16 + 0 + 64 + 0 = 86
إذن فإن القيمة العشرية ل 01010110 هي 86 و تكتب هكذا (2) 01010110 = (10)86
هذه عملية بسيطة لتحويل رمز ثنائي إلى قيمة عشرية و هنالك العديد من التحويلات الأخرى بين جميع الأنظمة العددية اللتي ذكرنها سابقا .
لمزيد التعمق في فهم هذه التحويلات ، نمدكم بهذا الكتاب الرائع “البحر الشاسع لدخول الخوارزميات من بابها الواسع” للتحميل إضغط هنا .
وحدات القيس في نظام العد الثنائي :
توجد العديد من وحدات القيس في نظام العد الثنائي نذكرها على التوالي :
- 1 كيلوبايت KB أو KiB يساوي 210 يساوي 1,024 بايت .
- 1 ميجابايت MB أو MiB يساوي 220 يساوي 1,048,576 بايت .
- 1 جيجابايت GB أو GiB يساوي 230 يساوي 1,073,741,824 بايت .
- 1 تيرابايت TB أو TiB يساوي 240 يساوي 1,099,511,627,776 بايت .
- 1 بيتابايت PB أو PiB يساوي 250 يساوي 1,125,899,906,842,624 بايت .
- 1 إكسابايت EB أو EiB يساوي 260 يساوي 1,152,921,504,606,846,976 بايت .
- 1 زيتابايت ZB أو ZiB يساوي 270 يساوي 1,180,591,620,717,411,303,424 بايت .
- 1 يوتابايت YB أو YiB يساوي 280 يساوي 1,208,925,819,614,629,174,706,176 بايت .
و إليكم هذا الجدول لمزيد التوضيح :