تخطَّ إلى المحتوى الرئيسي

محوّل ثنائي إلى نص مجانًا

حوِّل النص إلى النظام الثنائي (أصفار وآحاد) والعكس. يدعم ترميز UTF-8. شاهد عدد البايتات والبتات لأي نص.

يعمل دون اتصال بعد التحميل
التنسيق:
فصل البايتات بـ:
مخرجات ثنائية
01001000 01100101 01101100 01101100 01101111
5 حرف5 بايت40 بت

الاستخدامات الشائعة

  • تعلم النظام الثنائي لعلوم الحاسوبافهم كيف تخزن أجهزة الكمبيوتر النصوص كنظام ثنائي — انظر بالضبط كيف تتعامل الحروف مع بايتات ASCII بـ 8 بت.
  • الأحاجي والأصفار الثنائيةتشفير الرسائل السرية في الشكل الثنائي لحجرات الهروب والألغاز وألعاب فك الأصفار.
  • التمثيل الثنائي في الشبكاتانظر كيف يتم تمثيل بيانات النصوص في الشكل الثنائي على الطبقة الشبكية — مفيدة لتحليل البروتوكول.
  • إخفاء نصوص ثنائيإخفاء رسائل نصية في تيارات بيانات ثنائية — مقدمة لمفاهيم الترميز الإخفائي.
  • فهم نقل البيانات الثنائيةانظر كيفية ترميز النصوص إلى بايتات ثنائية للنقل عبر الخطوط المسلسلة والبلوتوث والراديو.

كيف يعمل

يعمل التحويل بالكامل في متصفحك باستخدام TextEncoder وTextDecoder المدمجين في واجهات الويب — محرك ترميز UTF-8 نفسه الذي يستخدمه كل متصفح حديث. لا تُستورد أي مكتبة؛ فالتقسيم وتحويل الأساس وتحليل البايتات كلها JavaScript مكتوبة يدويًا تعمل محليًا.

  1. 1
    يرمّز TextEncoder نصك
    عند تحويل النص إلى بايتات، يربط TextEncoder.encode() في المتصفح كل حرف — بما في ذلك الرموز التعبيرية والكتابات غير ASCII — بتسلسل بايتات UTF-8 الخاص به. وهو مسار الكود نفسه الذي تستخدمه المتصفحات داخليًا عند إرسال بيانات النماذج.
  2. 2
    مقسّم مكتوب يدويًا ينسّق البايتات
    تُحوَّل قيمة كل بايت إلى الأساس المختار (ثنائي عبر toString(2)، ست عشري عبر toString(16)، ثماني عبر toString(8)، أو عشري) وتُحشى بعرض ثابت. ويتحكم خيار التجميع في فصل البايتات بمسافات أو أسطر جديدة أو فواصل nibble (أزواج 4 بت) أو دون فاصل.
  3. 3
    المحلّل يعيد بناء البايتات للاتجاه العكسي
    عند العودة من الشكل المرمَّز إلى النص، يزيل محلّل مكتوب يدويًا الفواصل ويقسم الإدخال إلى أجزاء ثابتة العرض (8 أحرف للثنائي، و2 للست عشري، و3 للثماني) أو رموز مفصولة بمسافات للعشري. يُحلَّل كل جزء بـ parseInt() بالأساس الصحيح، ويُتحقق من أنه ضمن النطاق 0–255، ويوضع في Uint8Array.
  4. 4
    يتحقق TextDecoder من UTF-8 ويُخرجه
    يُمرَّر Uint8Array إلى TextDecoder('utf-8', { fatal: true })، الذي يطلق خطأ إذا لم يكن تسلسل البايتات UTF-8 صالحًا — فيلتقط حالات مثل إدخال ثنائي يكوّن تسلسلًا متعدد البايتات غير صالح. يُعرض عدد الأحرف والبايتات والبتات أسفل الإخراج.

أدوات ذات صلة

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