محول ASCII إلى Hex

الست عشري هو اختصار المبرمج للبايتات: رقمين من 0-9 وA-F يغطيان كل قيمة من 0 إلى 255 بشكل مضغوط. يأخذ هذا المحول نصا ASCII ويعيد الكود الست عشري لكل محرف، وهو ما تحتاجه عند كتابة مصفوفة بايتات بلغة C، أو فحص حزمة شبكة، أو التحويل بين تنسيقات الترميز في جلسة هندسة عكسية.

كيف يتحول ASCII إلى ست عشري

  1. 1

    الصق نصك

    أي محرف ASCII يصلح: حروف، أرقام، علامات ترقيم.

  2. 2

    يُبحث عن كل محرف كبايت

    مثلا `H` هي 72 في العشري، أي `0x48` في الست عشري.

  3. 3

    تُجمع الأزواج الست عشرية

    يمكنك اختيار فاصل: مسافة، شرطة، فاصلة، أو بلا فاصل.

  4. 4

    انسخ النتيجة

    الصقها في كود مصدري أو محرر ست عشري أو محلل بروتوكول.

مثال محلول

السلسلة Go! تُرمَّز كالتالي:

المحرف العشري الست عشري
G 71 47
o 111 6F
! 33 21

إذن تصبح Go! هي 47 6F 21، أو \x47\x6F\x21 بصيغة الهروب في سلاسل C، أو 0x47, 0x6F, 0x21 كمصفوفة بايتات.

تحويل الناتج إلى تنسيقات أخرى

يُخرج المحول دائما أزواجا ست عشرية بسيطة مفصولة بالفاصل الذي اخترته. يوضح الجدول التالي كيفية تغليف هذه الأزواج للاستخدامات الشائعة.

الاستخدام التنسيق المثال
مصفوفة بايتات في C/C++ 0xXX, 0xXX 0x47, 0x6F
echo في الصدفة مع -e \xXX \x47\x6F
تفريغ ست عشري مفصول بمسافات XX XX 47 6F
سلسلة متصلة XXXX 476F
ترميز URL بالنسبة المئوية %XX %47%6F

فخ شائع

الست عشري لا يفرق بين الأحرف الكبيرة والصغيرة (0x4f و0x4F هما نفس البايت)، لكن كثيرا من المحللات تلتفت لذلك. يُخرج هذا المحول أزواجا بأحرف كبيرة؛ إذا كان الكود المحيط يتوقع أحرفا صغيرة فحوّل الأزواج بعد النسخ.

إدخال من خارج ASCII

في إدخال ASCII الصافي، كل محرف هو بايت واحد والناتج دقيق. المحارف فوق U+007F (حروف مشكولة، رموز تعبيرية، حروف صينية ويابانية وكورية) لا تُعالج بدقة: يُستخدم البايت الأول من ترميز UTF-8 لكل محرف فقط، لذلك تُنتج café الأزواج 63 61 66 C3 ويضيع البايت الثاني من é. للحصول على تفريغ ست عشري دقيق لنص UTF-8، استخدم محولا يدعم UTF-8.

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

القيمة لا تفرق، 0x4F و0x4f هما نفس البايت. لكن بعض الأدوات وأساليب الكود تصر على شكل واحد. يُخرج هذا المحول أحرفا كبيرة، وهو ما تتوقعه معظم أدوات الأنظمة المدمجة؛ بينما تخرج طريقة .hex() في بايثون أحرفا صغيرة إذا كان كودك يحتاج ذلك.

هي اصطلاح من لغة C يخبر المحلل أن الأرقام التالية ست عشرية وليست عشرية. من دون البادئة، قد تكون 47 إما 47 (عشري) أو 71 (ست عشري) حسب السياق.

الناتج يحتوي زوجا ست عشريا واحدا لكل محرف كتبته. الحروف المشكولة والرموز التعبيرية ومحارف CJK تُنتج بايتها الأول من UTF-8 فقط، لذلك لا يمكن فك سداسيها إلى المحرف الأصلي. في ASCII الصافي التطابق دقيق.

نعم، استخدم Hex to ASCII Converter. يقبل الست عشري المتصل والأزواج المفصولة بمسافات وبادئات 0x.

أدوات ذات صلة