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

ترجم النص إلى شيفرة ثنائية بمجموعة من 8 بتات لكل بايت، أو أعد سلسلة من الأصفار والآحاد إلى نص مقروء. تعمل الأداة مع UTF-8 ومع كثير من مجموعات الأحرف الأخرى.

تعمل بالكامل داخل متصفحك، ولا يُرفع أي شيء.

طريقة الاستخدام

  1. اختر «ترميز» لتحويل النص إلى ثنائي، أو «فك الترميز» لإعادة الثنائي إلى نص.
  2. اكتب النص أو الأرقام الثنائية أو الصقها، أو افتح ملفًا. تتحدّث النتيجة فور الكتابة.
  3. اختر «الفاصل» بين مجموعات البتات الثماني: «مسافة» أو «بلا» أو «فاصلة» أو «سطر جديد».
  4. غيّر «ترميز النص» إن لم يكن نصك بترميز UTF-8، ثم انسخ النتيجة أو نزّلها.

كيف يتحول النص إلى ثنائي

تخزّن الحواسيب النصوص في صورة بايتات. فالترميز النصي مثل UTF-8 يربط كل حرف ببايت واحد أو أكثر، وكل بايت عدد بين 0 و255. وعند كتابة هذا العدد بالأساس 2 يحتاج إلى ثمانية أرقام على الأكثر، أي ثماني بتات. يكتب هذا المحوّل كل بايت في ثماني بتات بالضبط ويحتفظ بالأصفار البادئة، فتأتي المجموعات كلها بالعرض نفسه، ويمكن قراءة الشيفرة الثنائية من جديد دون تخمين أين ينتهي بايت ويبدأ الذي يليه.

تشغل الحروف الإنجليزية العادية والأرقام وعلامات الترقيم بايتًا واحدًا لكلٍّ منها في UTF-8، فيصبح كل حرف مجموعة واحدة من 8 بتات. أما الأحرف الأخرى فتشغل أكثر من ذلك: الحروف اللاتينية ذات العلامات مثل é تستخدم بايتين، ومعظم الأحرف الصينية واليابانية ثلاثة، والرموز التعبيرية أربعة، فيتحول رمز تعبيري واحد إلى 32 بتًا. وإن أردت بايتًا واحدًا لكل حرف في نصوص لغات أوروبا الغربية، فاختر ISO-8859-1 أو Windows-1252 من قائمة «ترميز النص».

ترجمة الثنائي إلى نص

في وضع «فك الترميز»، الصق البتات في مجموعات تفصل بينها مسافات أو فاصلات أو أسطر جديدة. ويجوز أن تُحذف الأصفار البادئة من المجموعات المفصولة، لذا تصلح أيضًا مخرجات الأدوات التي تطبع ASCII بسبع بتات. أما السلسلة المتصلة من الأصفار والآحاد فتُقسَّم إلى مجموعات من 8 بتات، لذا يجب أن يكون طولها من مضاعفات 8. ويُبلَّغ عن أي حرف آخر، أو أي مجموعة أكبر من 11111111 (255)، مع ذكر موضعه.

بعد ذلك تُقرأ البايتات بترميز النص المحدد. اختر الترميز الذي استُخدم لإنشاء الشيفرة الثنائية، أو حوّل المخرجات إلى «ست عشري» لرؤية البايتات الخام.

تحويل النص إلى ثنائي برمجيًا

# Python
' '.join(f'{b:08b}' for b in 'Hi'.encode())      # '01001000 01101001'
bytes(int(g, 2) for g in '01001000 01101001'.split()).decode()   # 'Hi'

// JavaScript
[...new TextEncoder().encode('Hi')]
  .map(b => b.toString(2).padStart(8, '0')).join(' ')   // '01001000 01101001'

المواصفات

الأبجدية0 1
حجم المخرجات8 أرقام لكل بايت (800%)
الحشولا يوجد
المعيارترقيم ثنائي موضعي
حساس لحالة الأحرفلا

أمثلة

المدخلات (UTF-8)المخرجات
Hello, World!01001000 01100101 01101100 01101100 01101111 00101100 00100000 01010111 01101111 01110010 01101100 01100100 00100001
Base64.is01000010 01100001 01110011 01100101 00110110 00110100 00101110 01101001 01110011
你好11100100 10111101 10100000 11100101 10100101 10111101

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

كم بتًا في الحرف الواحد؟

في ASCII، وكذلك للحروف الإنجليزية في UTF-8، يشغل الحرف الواحد بايتًا واحدًا، أي 8 بتات. أما الأحرف الأخرى فتشغل 16 أو 24 أو 32 بتًا في UTF-8. وفي UTF-16 يشغل كل حرف 16 بتًا على الأقل.

هل يمكنني تحويل الثنائي إلى نص دون مسافات؟

نعم، ما دامت السلسلة متصلة ومكوّنة من مجموعات كاملة من 8 بتات. وإن كانت مجموعاتك أقل من 8 أرقام لأن الأصفار البادئة حُذفت منها، فأبقها مفصولة بمسافات أو فاصلات حتى تعرف أداة فك الترميز أين ينتهي كل بايت.

هل تحويل النص إلى ثنائي هو نفسه تحويل عدد إلى ثنائي؟
لا. تكتب هذه الأداة كل بايت من النص على حدة. ولتحويل عدد واحد، مثل 1000، إلى الأساس 2، استخدم محوّل أنظمة الأعداد.
هل يُرفع نصي إلى أي مكان؟

لا. يجري التحويل بالكامل داخل متصفحك، فلا يغادر النص والملفات التي تحوّلها جهازك أبدًا.