كيفية تحويل النص إلى hex
- اكتب نصك أو الصقه. جميع اللغات، ومنها العربية، والرموز التعبيرية مدعومة.
- اختر ترميز الأحرف (UTF-8 هو المعيار)، وحالة الأحرف، وطريقة الفصل بين البايتات. فعّل خيار سطر جديد كل 16 بايت للحصول على تنسيق تفريغ hex.
- انسخ سلسلة hex أو نزّلها كملف نصي.
كيف يتحول النص إلى hex؟
تخزّن الحواسيب النصوص على شكل بايتات. يبحث المحوّل عن قيمة البايت لكل حرف في الترميز المختار ويكتبها كرقمين hex. في ASCII وUTF-8، الحرف A يساوي 65 = 41، والحرف a يساوي 97 = 61، والمسافة تساوي 32 = 20، لذا تصبح «Hi!» هي 48 69 21.
| الحرف | عشري | Hex |
|---|---|---|
A … Z | 65 … 90 | 41 … 5A |
a … z | 97 … 122 | 61 … 7A |
0 … 9 | 48 … 57 | 30 … 39 |
| مسافة | 32 | 20 |
! | 33 | 21 |
| سطر جديد | 10 | 0A |
مقارنة بين UTF-8 وLatin-1 وUTF-16
قد يُنتج الحرف نفسه بايتات مختلفة حسب الترميز. يُعد UTF-8 الخيار الصحيح للويب وJSON ومعظم الملفات، وهو يدعم العربية؛ لذا لا تستخدم ترميزًا آخر إلا إذا كان النظام المستقبِل يتطلبه.
| النص | UTF-8 | Windows-1252 | UTF-16 LE |
|---|---|---|---|
A | 41 | 41 | 41 00 |
é | C3 A9 | E9 | E9 00 |
€ | E2 82 AC | 80 | AC 20 |
| 😀 | F0 9F 98 80 | غير متاح | 3D D8 00 DE |
تحويل النص (string) إلى hex برمجيًا
- Python: تُرجع
'Hello'.encode().hex()القيمة48656c6c6f؛ وتضيف.hex(' ')مسافات بين البايتات. - Node.js:
Buffer.from('Hello').toString('hex') - JavaScript في المتصفح:
[...new TextEncoder().encode('Hello')].map((b) => b.toString(16).padStart(2, '0')).join('') - Linux وmacOS:
echo -n 'Hello' | xxd -p
الأسئلة الشائعة
هل تحويل النص إلى hex هو نفسه تحويل ASCII إلى hex؟
نعم بالنسبة إلى الحروف الإنجليزية والأرقام وعلامات الترقيم: ينتج ASCII وUTF-8 البايتات نفسها. أما أحرف مثل «ع» وé وß وЖ و中 أو الرموز التعبيرية فليست جزءًا من ASCII؛ ويرمّز UTF-8 كلًّا منها في 2–4 بايت.
لماذا ينتج الحرف الواحد عدة بايتات hex؟
في UTF-8 تشغل أحرف ASCII وحدها بايتًا واحدًا. فالحرف é يصبح C3 A9، و€ يصبح E2 82 AC، ومعظم الرموز التعبيرية تشغل أربعة بايتات، والحروف العربية بايتين. اختر UTF-16 أو Latin-1 إذا كان النظام المستهدف يتطلب أحد هذين الترميزين.
أي فاصل يجب أن أستخدم؟
بدون فاصل لقيم hash والسلاسل المضغوطة، والمسافات لتفريغات hex سهلة القراءة، والنقطتين لعناوين MAC وبصمات الشهادات، و0x48, 0x65 للمصفوفات في C أو C# أو Java، و\x48 للسلاسل النصية الحرفية في C أو Python أو سكربتات shell.
كيف أعيد تحويل hex إلى نص؟
اضغط زر التبديل: ينتقل hex إلى خانة الإدخال ويُفك ترميزه بالترميز نفسه. وتقبل أداة فك الترميز جميع الفواصل المتاحة هنا.