DevToolPal
ไทย

แปลงข้อความเป็นเลขฐานสองและ Hex

แปลงข้อความเป็นไบต์ UTF-8 ในรูปฐานสอง hex ฐานสิบ หรือฐานแปด และถอดรหัสไบต์กลับเป็นข้อความ

ทำงานในเครื่อง ไม่มีการอัปโหลด

ตัวเลือก

โหมด
รูปแบบ

อินพุต

0 ตัวอักษร · 0 B

เอาต์พุต

0 ตัวอักษร · 0 B

เครื่องมือนี้ทำอะไร

เครื่องมือนี้แสดงไบต์ที่อยู่เบื้องหลังข้อความ และแปลงไบต์กลับเป็นข้อความ พิมพ์คำแล้วดูเป็นฐานสอง (01001000 01101001) ฐานสิบหก (48 69) ฐานสิบ (72 105) หรือฐานแปด (110 151) วางชุดไบต์จาก packet dump, ดีบักเกอร์ หรือแบบฝึกหัดการบ้าน แล้วอ่านกลับเป็นข้อความได้

การแปลงทั้งหมดผ่าน UTF-8 จึงใช้ได้กับทุกภาษาและอีโมจิ ไม่ใช่แค่ ASCII ธรรมดา ทำให้เห็นได้ง่ายว่าทำไม 你好 ยาวหกไบต์ หรือทำไมอีโมจินับเป็นสี่ไบต์ในคอลัมน์ฐานข้อมูล

วิธีใช้งาน

  1. เลือก ข้อความ → ไบต์ เพื่อเข้ารหัส หรือ ไบต์ → ข้อความ เพื่อถอดรหัส
  2. เลือกรูปแบบตัวเลข: ฐานสอง hex ฐานสิบ หรือฐานแปด
  3. ขณะเข้ารหัส เลือกตัวคั่นระหว่างไบต์ (ช่องว่าง ไม่มี จุลภาค หรือขึ้นบรรทัดใหม่) และเลือกว่าตัวอักษร hex เป็นตัวพิมพ์ใหญ่หรือไม่
  4. พิมพ์หรือวางอินพุต ผลลัพธ์จะอัปเดตขณะพิมพ์ และคัดลอกหรือดาวน์โหลดได้

กฎการถอดรหัส

ขณะถอดรหัส เครื่องมือยืดหยุ่นเรื่องรูปแบบการจัดวาง:

  • ไบต์คั่นด้วยช่องว่าง จุลภาค เซมิโคลอน หรือการขึ้นบรรทัดใหม่ ผสมกันอย่างไรก็ได้
  • คำนำหน้าที่ใช้บ่อยจะถูกตัดออก: 0x, \x และ % สำหรับ hex, 0b สำหรับฐานสอง, 0o หรือ \ สำหรับฐานแปด
  • ตัวเลขยาว ๆ ที่ไม่มีตัวคั่นจะถูกแบ่งเป็นไบต์ความกว้างคงที่: 8 หลักสำหรับฐานสอง 2 หลักสำหรับ hex และ 3 หลักสำหรับฐานแปดหรือฐานสิบ
  • ค่าที่เกิน 255 หรือตัวเลขที่ไม่อยู่ในรูปแบบนั้นจะถูกแจ้งพร้อมบรรทัดและคอลัมน์

ตัวอย่าง

การเข้ารหัส Hi 你好 เป็นฐานสองจะได้เก้าไบต์: สองไบต์สำหรับ Hi หนึ่งไบต์สำหรับช่องว่าง และสามไบต์สำหรับอักษรจีนแต่ละตัว ข้อความเดียวกันในรูป hex คือ 48 69 20 e4 bd a0 e5 a5 bd ซึ่งตรงกับที่คุณจะเห็นใน hex editor หรือใน URL เป็น %E4%BD%A0

มีประโยชน์เมื่อไร

นักพัฒนาใช้เพื่อตรวจว่าข้อความถูกจัดเก็บบนดิสก์หรือส่งผ่านเครือข่ายอย่างไร เพื่อเปรียบเทียบความยาวสตริงเป็นไบต์กับเป็นอักขระ และเพื่อดีบักปัญหาตัวอักษรเพี้ยน (mojibake) นักเรียนใช้ฝึกแปลงเลขฐานสองและฐานสิบหกด้วยมือแล้วตรวจคำตอบ

คำถามที่พบบ่อย

› เครื่องมือนี้ใช้การเข้ารหัสอักขระแบบไหน?

UTF-8 ซึ่งเป็นการเข้ารหัสของเว็บ อักขระ ASCII ใช้ตัวละหนึ่งไบต์ ตัวอักษรที่มีเครื่องหมายเน้นเสียงมักใช้สองไบต์ อักษรจีน ญี่ปุ่น หรือเกาหลีใช้สามไบต์ และอีโมจิใช้สี่ไบต์

› วางไบต์ที่มีคำนำหน้า 0x หรือ \x ได้ไหม?

ได้ ขณะถอดรหัส คำนำหน้าอย่าง 0x, \x และ % สำหรับ hex, 0b สำหรับฐานสอง และ 0o สำหรับฐานแปดจะถูกตัดออก และช่องว่าง จุลภาค เซมิโคลอน และการขึ้นบรรทัดใหม่ใช้เป็นตัวคั่นได้ทั้งหมด

› ทำไมจึงได้ข้อผิดพลาดว่าไบต์ไม่ใช่ UTF-8 ที่ถูกต้อง?

ลำดับไบต์บางแบบไม่สามารถปรากฏในข้อความ UTF-8 ได้ เช่น ไบต์ FF ที่อยู่เดี่ยว ๆ หรืออักขระหลายไบต์ที่ถูกตัดขาด ตรวจสอบว่าคุณคัดลอกมาครบทุกไบต์และเลือกรูปแบบถูกต้อง

› ข้อความของฉันถูกอัปโหลดหรือไม่?

ไม่ การเข้ารหัสและถอดรหัสทำงานในเบราว์เซอร์ของคุณ