الأدوات
AR

ما هو النظام السداسي عشر؟

النظام السداسي عشر، أو hex (ويُسمّى أيضًا النظام الست عشري)، هو نظام العدّ ذو الأساس 16. يكتب الأعداد باستخدام 16 رمزًا – 0–9 وA–F – وهو الاختصار المعتمد لتمثيل البيانات الثنائية في الحوسبة، من ألوان الويب إلى عناوين الذاكرة.

النظام السداسي عشر في جملة واحدة

النظام السداسي عشر نظام عدّ موضعي أساسه 16: كل رقم يساوي 16 ضعف الرقم الذي على يمينه، وتُكتب القيم من 10 إلى 15 بالحروف من A إلى F. وللدلالة على أن العدد بنظام hex، يكتب المبرمجون 0x1A (في C وJava وJavaScript وPython)، و#1A2B3C لألوان CSS، و1Ah في لغة التجميع (assembly)، أو 1A₁₆ في الرياضيات.

أرقام hex من 0 إلى 15

عشريHexثنائيعشريHexثنائي
000000881000
110001991001
22001010A1010
33001111B1011
44010012C1100
55010113D1101
66011014E1110
77011115F1111

العدّ بنظام hex

يجري العدّ في hex كما في النظام العشري، لكن الانتقال إلى منزلة جديدة يحدث بعد F بدلًا من 9: … 8، 9، A، B، C، D، E، F، 10، 11 … 19، 1A … 1F، 20 … FF، 100. هنا 10 تعني ستة عشر، و100 تعني 16 × 16 = 256. ويغطي رقمان hex بايتًا واحدًا (00–FF = 0–255)، وتصل أربعة أرقام إلى FFFF = 65,535، وثمانية أرقام إلى FFFFFFFF = 4,294,967,295.

لماذا تستخدم الحواسيب النظام السداسي عشر؟

تخزّن الحواسيب كل شيء بالنظام الثنائي، لكن السلاسل الطويلة من الأصفار والآحاد صعبة القراءة على البشر ومن السهل الخطأ في كتابتها. ولأن 16 = 2⁴، فإن رقم hex واحدًا يمثّل أربعة بتات بالضبط (nibble)، ورقمين hex يمثّلان بايتًا واحدًا. والتحويل بين hex والثنائي مجرد استبدال بسيط رقمًا برقم، كما أن hex أقصر بأربع مرات: 1101 1110 1010 1101 هي ببساطة DEAD. أما النظام العشري فليست له علاقة مباشرة كهذه بالنظام الثنائي، ولهذا نادرًا ما يُستخدم لتمثيل البيانات الخام.

التحويل من hex إلى العشري وبالعكس

تنفّذ أدوات التحويل لدينا كل ذلك فورًا وتعرض كل خطوة.

أين يُستخدم النظام السداسي عشر؟

مقارنة بين الأنظمة السداسي عشر والعشري والثماني والثنائي

النظامالأساسالأرقامكتابة 255الاستخدام الشائع
الثنائي20–111111111العتاد، أعلام البتات
الثماني80–7377صلاحيات الملفات في Unix (chmod 755)
العشري100–9255الأعداد اليومية
السداسي عشر160–9، A–FFFالبايتات والألوان والعناوين وقيم الهاش

الأعداد السالبة في hex

لا يملك hex بحد ذاته رمزًا خاصًا للإشارة، لذا تُخزَّن الأعداد السالبة عادةً بصيغة المتمم الثنائي: حيث يدل البت الأعلى في القيمة ذات الحجم الثابت على أنها سالبة. فكبايت بإشارة، 7F تساوي 127، و80 تساوي −128، وFF تساوي −1؛ وكعدد صحيح من 32 بت، FFFFFFFF تساوي −1. وفي الرياضيات وفي آلتنا الحاسبة يمكنك أيضًا كتابة إشارة السالب ببساطة: −1A = −26.

الأسئلة الشائعة

لماذا يستخدم النظام السداسي عشر الحروف؟

يحتاج الأساس 16 إلى ستة عشر رقمًا يتكوّن كل منها من رمز واحد، لكن لا توجد سوى عشرة أرقام. لذا تمثّل الحروف A–F القيم 10–15. والأحرف الكبيرة والصغيرة لها المعنى نفسه: ff = FF = 255.

ماذا تعني 0x قبل العدد؟

تدل على أن العدد مكتوب بالنظام السداسي عشر في C وC++ وJava وJavaScript وPython وكثير من اللغات الأخرى: 0x10 تساوي 16 وليس عشرة. أما CSS فتستخدم # للألوان بدلًا منها، وغالبًا ما تضيف شيفرة التجميع (assembly) اللاحقة h في النهاية (10h).

هل النظام السداسي عشر هو نفسه Base64؟

لا. يكتب hex كل بايت كحرفين من 0–9 وA–F، لذا يتضاعف حجم البيانات لكنها تبقى سهلة القراءة بايتًا بايتًا. أما Base64 فيستخدم 64 حرفًا ويضع كل 3 بايتات في 4 أحرف، وهو أكثر إحكامًا (زيادة بنحو 33%) لكنه غير مقروء على مستوى البايت.

آخر تحديث: