طريقة الاستخدام
- اختر «ترميز» لتحويل النص إلى ثنائي، أو «فك الترميز» لإعادة الثنائي إلى نص.
- اكتب النص أو الأرقام الثنائية أو الصقها، أو افتح ملفًا. تتحدّث النتيجة فور الكتابة.
- اختر «الفاصل» بين مجموعات البتات الثماني: «مسافة» أو «بلا» أو «فاصلة» أو «سطر جديد».
- غيّر «ترميز النص» إن لم يكن نصك بترميز 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.is | 01000010 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 أرقام لأن الأصفار البادئة حُذفت منها، فأبقها مفصولة بمسافات أو فاصلات حتى تعرف أداة فك الترميز أين ينتهي كل بايت.
هل تحويل النص إلى ثنائي هو نفسه تحويل عدد إلى ثنائي؟
هل يُرفع نصي إلى أي مكان؟
لا. يجري التحويل بالكامل داخل متصفحك، فلا يغادر النص والملفات التي تحوّلها جهازك أبدًا.