Menu
CoddyTech

لماذا النظام الست عشري؟

جزء من قسم الأساسيات في رحلة Assembly على Coddy. الدرس 10 من 45.

أنت تعرف الآن أن الحواسيب تستخدم النظام الثنائي. فلماذا نادرًا ما يكتب مبرمجو لغة التجميع بالنظام الثنائي مباشرةً؟

مشكلة النظام الثنائي:

الأعداد الثنائية طويلة جدًا. انظر إلى هذا المثال:

العددثنائي
25511111111
10001111101000
655351111111111111111

كتابة سلاسل طويلة من الأرقام 1 و0 بطيئة، وعرضة للأخطاء، ويصعب قراءتها.

الحل: النظام الست عشري (الأساس 16).

يستخدم النظام الست عشري (أو «hex») 16 رمزًا:

الرقمالقيمة
0-9من 0 إلى 9
A10
B11
C12
D13
E14
F15

لماذا يُعدّ النظام الست عشري مثاليًا للحواسيب:

يمثل كل رقم ست عشري 4 بتات بالضبط (نصف بايت).

البتاتعدد الأرقام الست عشرية المطلوبة
4 بتات (نيبل)رقم ست عشري واحد
8 بتات (1 بايت)رقمان ست عشريان
16 بتًا (2 بايت)4 أرقام ست عشرية
32 بتًا (4 بايت)8 أرقام ست عشرية
64 بتًا (8 بايت)16 رقمًا ست عشريًا

العدد نفسه بثلاث طرق:

عشريثنائيست عشري
25511111111FF
100011111010003E8
655351111111111111111FFFF

لاحظ كم أن النظام الست عشري أقصر من النظام الثنائي.

أين سترى النظام الست عشري في لغة التجميع:

  • عناوين الذاكرة (مثل 0x7FFF أو 0x402000)
  • رموز ASCII (مثل 0x41 للحرف 'A'، و0x0a للسطر الجديد)
  • قيم السجلات في أدوات تصحيح الأخطاء
  • قيم الألوان (مثل 0xFF0000 للأحمر)

تُكتب الأعداد الست عشرية مع بادئة:

البادئةمثالالمعنى
0x0xFFFF بالنظام الست عشري (255 بالنظام العشري)
$$FFالشيء نفسه (يُستخدم في بعض المجمعات)
hFFhالشيء نفسه (أسلوب أقدم)

في هذه الدورة، نستخدم البادئة 0x: 0x0a، 0x41، 0xFF.

جرّب بنفسك

لا يتضمّن هذا الدرس تحدّيًا برمجيًا.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ Assembly

تحقق من التحويل: محوّل أنظمة الأعداد