كيفية استخدام حاسبة hex
- أدخل عددين بنظام hex، مثل
8ABوB78. يُسمح بإشارة السالب وبالبادئات مثل0x. - اختر العملية. تتحدّث النتيجة فورًا بنظام hex والعشري والثنائي؛ وفي القسمة يظهر الباقي أيضًا.
- للنتائج السالبة ولعملية NOT، اختر عدد البتات (8 أو 16 أو 32 أو 64 بت) لرؤية القيمة بالمتمم الثنائي.
كيفية جمع الأعداد السداسية عشرية
اجمع الأرقام عمودًا بعمود بدءًا من اليمين، تمامًا كما في النظام العشري. الفرق الوحيد: عندما يصل مجموع العمود إلى 16 أو أكثر، اكتب المجموع ناقص 16 واحمل 1 إلى العمود التالي. مثال: 8AB + B78.
| العمود | الأرقام | المجموع | يُكتب | المحمول |
|---|---|---|---|---|
| 16⁰ | B + 8 | 11 + 8 = 19 | 3 | 1 |
| 16¹ | A + 7 + 1 | 10 + 7 + 1 = 18 | 2 | 1 |
| 16² | 8 + B + 1 | 8 + 11 + 1 = 20 | 4 | 1 |
| 16³ | المحمول | 1 | 1 | – |
بقراءة الأرقام المكتوبة من الصف الأخير صعودًا (بدءًا من أعلى منزلة) نحصل على 1423. للتحقق بالنظام العشري: 2219 + 2936 = 5155 = 1423 بنظام hex.
طرح الأعداد السداسية عشرية والنتائج السالبة والمتمم الثنائي
يعتمد الطرح على الاستلاف: إذا كان الرقم العلوي أصغر، استلف 16 من العمود التالي. B78 − 8AB: يحتاج 8 − B إلى استلاف، فيصبح 8 + 16 − 11 = 13 = D؛ ثم يحتاج 7 − 1 − A إلى استلاف، فيصبح 6 + 16 − 10 = 12 = C؛ وأخيرًا B − 1 − 8 = 2، إذن النتيجة هي 2CD.
إذا كان العدد الثاني أكبر، تكون النتيجة سالبة. تعرضها الآلة الحاسبة بإشارة سالب (5 − 8 = −3) وأيضًا على شكل نمط البتات الذي يخزّنه الحاسوب: في المتمم الثنائي بطول 8 بتات يكون −3 هو 2⁸ − 3 = 253 = FD، وفي 16 بت FFFD. ويدويًا، احصل على سالب العدد بعكس جميع بتاته ثم إضافة 1: 03 = 0000 0011 ← 1111 1100 ← 1111 1101 = FD.
العمليات على مستوى البت: AND وOR وXOR وNOT والإزاحة
تقارن العمليات على مستوى البت (bitwise) بين العددين بتًا بتًا، ولهذا يستخدمها المبرمجون مع الأعلام (flags) والأقنعة (masks) والصلاحيات. أمثلة باستخدام 3C = 0011 1100 و0F = 0000 1111:
| العملية | القاعدة | النتيجة |
|---|---|---|
3C AND 0F | 1 فقط حيث يكون كلا البتين 1 | 0C |
3C OR 0F | 1 حيث يكون أحد البتين على الأقل 1 | 3F |
3C XOR 0F | 1 حيث يختلف البتان | 33 |
NOT 3C (8 بت) | عكس كل بت | C3 |
3C << 1 | الإزاحة لليسار = الضرب في 2 | 78 |
3C >> 2 | الإزاحة لليمين = القسمة على 4 | 0F |
الأسئلة الشائعة
كيف تُضرب الأعداد السداسية عشرية؟
بالطريقة نفسها المتبعة في النظام العشري، لكن كل ناتج جزئي يُكتب بالأساس 16. وغالبًا ما يكون الأسهل التحويل إلى العشري ثم الضرب ثم التحويل مجددًا: 1A × 10 = 26 × 16 = 416 = 1A0. والضرب في 10 بنظام hex (أي 16) يضيف صفرًا في آخر العدد فحسب، تمامًا كالضرب في 10 بالنظام العشري.
ماذا يحدث عند قسمة الأعداد السداسية عشرية؟
تُجري الآلة الحاسبة قسمة صحيحة وتعرض خارج القسمة والباقي: 1423 ÷ 10 = 142 والباقي 3. وتُعرض القسمة على صفر كخطأ.
لماذا تعطي NOT نتائج مختلفة باختلاف عدد البتات؟
تعكس NOT كل بت في قيمة ذات حجم ثابت، لذا تعتمد النتيجة على عدد البتات: NOT 3C تساوي C3 في 8 بتات، لكنها FFC3 في 16 بت. ويختار الخيار «تلقائي» أصغر عدد قياسي من البتات (8 أو 16 أو 32 أو 64 بت) يتسع للعدد.
هل تتعامل حاسبة hex مع الأعداد الكبيرة؟
نعم. تستخدم جميع العمليات أعدادًا صحيحة بدقة غير محدودة، لذا تُحسب القيم ذات 64 بت و128 بت وحتى الأطول منها بدقة تامة، دون الفيض (overflow) أو التقريب الذي يحدث في الآلات الحاسبة العادية.