التصميم الرقمي · الأوزان الثنائية

#02 التصميم الرقمي #02 | Binary و Hex و Signed Numbers

ملاحظات الحل المصححة. الصوت هو التسجيل الأصلي وقد يحتوي على أخطاء أو عبارات ناقصة. عند الاختلاف، يُعتمد الحل المكتوب المصحح.

السؤال

8 bits: unsigned / two’s complement
مرجع رياضي مصحح؛ يُقرأ مع الاشتقاق المكتوب.

ملاحظات الحل المصححة. الصوت هو التسجيل الأصلي وقد يحتوي على أخطاء أو عبارات ناقصة. عند الاختلاف، يُعتمد الحل المكتوب المصحح. التصميم الرقمي #02 | Binary و Hex و Signed Numbers

الحل المكتوب ونص الشرح(يعرض الحل كاملًا)

تجد أدناه جميع الأسطر المكتوبة في الدفتر مع النص الكامل للشرح الصوتي.

  1. 1. الأوزان الثنائية

    ملاحظات الحل المصححة. الصوت هو التسجيل الأصلي وقد يحتوي على أخطاء أو عبارات ناقصة. عند الاختلاف، يُعتمد الحل المكتوب المصحح.
    أوزان الكلمة غير الموقعة ذات الثمانية بتات، من اليسار إلى اليمين، هي 128 و64 و32 و16 و8 و4 و2 و1.
    نجمع فقط أوزان الخانات التي تحمل البت واحدا.

    نص الشرح الصوتي

    في الدرس السابق تحول الجهد إلى بت. الآن نسأل السؤال التالي: كيف تصبح البتات أعدادا؟ Binary نظام عد موضعي. أي إن لكل بت وزنا. الخانة اليمنى وزنها واحد. التي بعدها وزنها اثنان، ثم أربعة، ثم ثمانية، ثم ستة عشر، وهكذا. لذلك فالبايت المكون من ثمانية بتات ليس مجرد مفاتيح متجاورة. إنه سلسلة قرارات موزونة. ومن هنا نستطيع بالأبجدية نفسها، صفر وواحد، وصف العدادات والعناوين والألوان والتعليمات ومحتوى الذاكرة.

  2. 2. قراءة البايت الأول

    النمط 10110101 يمثل 181 دون إشارة: نجمع 128 و32 و16 و4 و1.
    في متمم الاثنين ذي الثمانية بتات يمثل النمط نفسه −75، لأننا نطرح 256 من 181.

    نص الشرح الصوتي

    لنقرأ البايت واحد صفر واحد واحد صفر واحد صفر واحد. نبدأ بالأوزان: مئة وثمانية وعشرون، أربعة وستون، اثنان وثلاثون، ستة عشر، ثمانية، أربعة، اثنان، وواحد. فقط الخانات التي تحتوي على واحد تدخل في المجموع. إذن نأخذ مئة وثمانية وعشرين، ونضيف اثنين وثلاثين، ونضيف ستة عشر، ونضيف أربعة، ونضيف واحدا. النتيجة هي مئة وواحد وثمانون بالنظام العشري. العادة المفيدة هي: لا تحفظ سلسلة binary عشوائيا. ضع الأوزان تحتها، ثم اجمع الأوزان النشطة فقط.

  3. 3. الترميز الست عشري

    نقسم 10110101 إلى 1011 و0101. المجموعة الأولى هي B والثانية 5؛ إذن الترميز هو 0xB5.
    تغيرت طريقة الكتابة فقط، ولم تتغير البتات.

    نص الشرح الصوتي

    Binary دقيق، لكن السلاسل الطويلة منه صعبة على الإنسان. Hexadecimal هو الاختصار الهندسي. رقم hex واحد يمثل أربع بتات، ونسميها nibble. قسّم البايت إلى nibbleين: واحد صفر واحد واحد، وصفر واحد صفر واحد. المجموعة الأولى تساوي أحد عشر بالعشري، ولذلك هي B في hex. المجموعة الثانية تساوي خمسة. لذلك يمكن كتابة البايت نفسه B خمسة بالأساس ستة عشر، أو zero x B five في ترميز البرمجة. لم يتغير شيء في العتاد؛ تغيرت فقط طريقة كتابة النمط.

  4. 4. تصحيح المثال الموقع

    النمط المختلف 11111011 يمثل 251 دون إشارة و−5 في متمم الاثنين.
    لا ننسب هاتين القيمتين إلى الرسم السابق 10110101. يجب تثبيت عرض الكلمة وطريقة الترميز.

    نص الشرح الصوتي

    والآن التحذير المهم. نمط البتات لا يحمل معناه وحده. المعنى يأتي من الاتفاق، أو بلغة البرمجة من نوع البيانات. النمط واحد واحد واحد واحد واحد صفر واحد واحد يعني مئتين وواحدا وخمسين إذا قرأناه unsigned. لكنه في نظام signed two's complement من ثمانية بتات يعني سالب خمسة. نفس البتات، لكن اتفاق مختلف. لذلك يسأل التصميم الرقمي دائما: ماذا يمثل هذا النمط هنا؟

  5. 5. تمثيل سالب خمسة

    موجب خمسة هو 00000101. نعكس البتات فنحصل على 11111010، ثم نضيف واحدا فنحصل على 11111011.
    العملية هي نفي بترديد 256؛ أما نفي −128 فلا يمكن تمثيله ضمن ثمانية بتات موقعة دون تجاوز.

    نص الشرح الصوتي

    إليك مثال two's complement السريع. لتمثيل موجب خمسة في ثمانية بتات نكتب صفر صفر صفر صفر صفر واحد صفر واحد. لصناعة سالب خمسة، نعكس كل بت: واحد واحد واحد واحد واحد صفر واحد صفر. ثم نضيف واحدا، فنحصل على واحد واحد واحد واحد واحد صفر واحد واحد. هذه هي صيغة سالب خمسة في eight bit two's complement. الجمال هنا أن عتاد الجمع يبقى بسيطا. نفس adder يستطيع جمع القيم الموجبة والسالبة، لأن الترميز اختير كي يجعل الحساب يعمل.

  6. 6. المراجعة

    8 bits: unsigned / two’s complement
    مرجع رياضي مصحح؛ يُقرأ مع الاشتقاق المكتوب.
    الأوزان الثنائية والترميز الست عشري والتفسير الموقع مفاهيم مترابطة لكنها مختلفة.
    جامع الثمانية بتات يعمل بترديد 256. الحمل غير الموقع وتجاوز المجال الموقع شرطان مختلفان.

    نص الشرح الصوتي

    إذن النموذج الذهني الثاني هو هذا. Binary يعطي كل خانة بت وزنا. Hexadecimal يحزم كل أربع بتات في رقم مقروء واحد. والأعداد signed تضيف اتفاقا فوق نمط البتات؛ لذلك قد تعني البتات نفسها عددا موجبا كبيرا أو عددا سالبا. في الدرس التالي سنستخدم هذه البتات كمداخل منطقية، ونبني truth tables للبوابات الأساسية: NOT و AND و OR و NAND و XOR.

الفيديو المصدر: التصميم الرقمي #02 | Binary و Hex و Signed Numbers (3:49)