النص إلى النظام الثماني

النظام الثماني هو القريب المنسي للنظام الست عشري: نظام عدّ في الأساس 8 حيث يمثّل كل رقم ثلاث بتات بالضبط. تُكتب صلاحيات ملفات يونكس (755 و644) بالنظام الثماني، ولكل حرف رمز ثماني تمامًا كما له رمز عشري ورمز ست عشري. الصق النص وسيعيد هذا المحوّل الرمز الثماني لكل بايت؛ والصق رموزًا ثمانية مفصولة بمسافات لتسترجع النص الأصلي.

كيفية تحويل النص إلى النظام الثماني

  1. 1

    أدخل النص

    أحرف بسيطة؛ يُفترض ترميز UTF-8 للمدخلات غير ASCII.

  2. 2

    يصبح كل بايت رمزًا ثمانيًا واحدًا

    `A` = 65 عشري = `101` ثماني. `Z` = 90 = `132`. المسافة = 32 = `40`.

  3. 3

    تُفصل الرموز بمسافات

    تُوصَل رموز البايتات بمسافات مفردة (`Hi` تصبح `110 151`). ولا تُضاف أصفار في البداية.

  4. 4

    فك الترميز بلصق النظام الثماني

    بدّل إلى «ثماني ← نص» والصق قيمًا ثمانية مفصولة بمسافات؛ تصبح كل قيمة من 0 إلى 255 بايتًا واحدًا.

أمثلة سريعة على النظام الثماني

الحرف العشري الثماني الثنائي
A 65 101 1000001
a 97 141 1100001
0 48 60 0110000
المسافة 32 40 0100000
\n 10 12 0001010

لماذا يظل النظام الثماني مهمًا

تفضّل معظم الأنظمة الحديثة النظام الست عشري لأن رقمين ست عشريين يساويان بايتًا واحدًا بدقة. لكن النظام الثماني يبقى في بعض المواضع:

  • صلاحيات ملفات يونكس: chmod 755 تعني المالك = 7 (rwx)، المجموعة = 5 (r-x)، الآخرون = 5 (r-x). كل رقم هو ثلاث بتات صلاحيات.
  • تسلسلات الهروب في C/Python: \101 داخل سلسلة نصية هو A. والصفر البادئ في أعداد C الصحيحة (int x = 0755) يُفسَّر على أنه ثماني، وهو فخ معروف.
  • الأنظمة المدمجة والقديمة: كانت المعماريات القديمة ذات 12 و18 و36 بت تتوافق جيدًا مع النظام الثماني.
  • قيم umask: umask 022 يضبط قناع الصلاحيات الافتراضي على 755.

جدول صلاحيات الملفات

الرقم الثماني الصلاحيات الثنائي
0 --- 000
1 --x 001
2 -w- 010
3 -wx 011
4 r-- 100
5 r-x 101
6 rw- 110
7 rwx 111

إذًا chmod 644 = المالك rw-، المجموعة r--، الآخرون r--، وهي القيمة الافتراضية لملف نصي قابل للقراءة.

مزالق

  • الأصفار البادئة مهمة في C. int a = 010; يضبط a على 8 لا على 10. أزال Python 3 هذا السلوك؛ استخدم دائمًا 0o10 بدلًا منه.
  • يستخدم النظام الثماني الأرقام 0-7 فقط. الرمزان 8 و9 غير صالحين في النظام الثماني. إذا رأيتهما فالمصدر ليس ثمانيًا.
  • تكبر بايتات يونيكود في النظام الثماني. يتحول إيموجي UTF-8 (4 بايت) إلى 4 رموز ثمانية من ثلاثة أرقام، أي اثني عشر رمزًا. في النظام الست عشري تكون ثمانية. يتفوّق النظام الست عشري في معظم أغراض العرض.

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

نادرًا جدًا، إلا إذا كنت تتعامل مع صلاحيات يونكس أو تسلسلات هروب سلاسل C التي تستخدم صيغة \NNN. النظام الست عشري أكثر إيجازًا وأسهل في القراءة بايتًا بايتًا.

لأن كل رقم ثماني يقابل بالضبط ثلاث بتات صلاحيات (قراءة، كتابة، تنفيذ). أُدمج هذا الترميز في AT&T Unix عام 1971 ولم يغادر منذ ذلك الحين، فهو ينطبق بأناقة على نمط البتات الأساسي.

نعم. بدّل إلى «ثماني ← نص» والصق قيمًا ثمانية مفصولة بمسافات (مثل 110 151). تعود كل قيمة من 0 إلى 255 إلى بايت واحد، لذا تُفك أحرف UTF-8 متعددة البايتات من رموز بايتاتها الفردية.

يُرسَل نصك إلى خادمنا فقط لإجراء التحويل ولا يُخزَّن ولا يُسجَّل.

أدوات ذات صلة

رمز أقل من أو يساوي

انسخ علامة ≤ ورموز المقارنة الرياضية المرتبطة بها. يشمل ذلك رموز Unicode وكيانات HTML وترميز LaTeX للجداول الحسابية والأوراق البحثية وصفحات الويب.

رموز أسهم للنسخ

انسخ أسهم Unicode شائعة بنقرة واحدة: أسهم مستقيمة ومزدوجة وقطرية ومعقوفة ودائرية ومثلثة للمستندات والدردشة والتصميم.

نسخ رموز القلب

انسخ مجموعة منتقاة من رموز القلب والإيموجي الملون والزخارف. اطّلع على نقاط ترميز يونيكود الدقيقة قبل اللصق.

أداة كشف الأحرف غير المرئية

اكتشف وحذف الفواصل ذات العرض الصفري، والرموز اليونيكية المخفية، والمنفصلات غير المرئية من أي نص يحتوي على بيانات نقاط الكود والموقع.

مُرمِّز كيانات HTML

حوِّل الأحرف الخمسة الحساسة في HTML إلى كيانات ثابتة، أو فك الكيانات إلى نص داخل متصفحك.

مترجم الكتابة الهيروغليفية

اكتب اسمك بالهيروغليفية المصرية بالرموز التي استخدمها الكتبة للأصوات المفردة. أضف خرطوشًا، وانسخ الرموز أو نزّلها صورة PNG.

الأداة متاحة بلغات أخرى