T

Text Machine

เครื่องมือข้อความทรงพลัง ในเบราว์เซอร์ของคุณ

ตัวแปลงข้อความ ↔ Hex

แปลงข้อความเป็นเลขฐานสิบหกและแปลง hex กลับเป็นข้อความได้ในเบราว์เซอร์ของคุณโดยตรง การรองรับ UTF-8 อย่างเต็มรูปแบบหมายความว่าทุกอักขระจะถูกเข้ารหัสอย่างถูกต้อง — เลือกตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ และแบบไบต์ที่คั่นด้วยช่องว่างหรือต่อเนื่องกันได้

ตัวพิมพ์

ตัวคั่น

ช่องป้อนข้อความ
ผลลัพธ์ Hex

ป้อนข้อมูลด้านบนเพื่อดูผลลัพธ์ที่แปลงแล้วที่นี่

วิธีใช้ ตัวแปลงข้อความเป็นเลขฐานสิบหก

  1. 1

    เลือกทิศทาง

    ใช้ปุ่มสลับเพื่อเลือกระหว่างข้อความเป็น Hex หรือ Hex เป็นข้อความ ปุ่มสลับจะย้ายผลลัพธ์ของคุณไปยังช่องป้อนข้อมูลเพื่อให้คุณแปลงกลับในอีกทิศทางได้

  2. 2

    ป้อนข้อมูลของคุณ

    พิมพ์หรือวางข้อความ หรือวางสตริง hex การแปลงจะทำงานโดยอัตโนมัติขณะที่คุณพิมพ์ พร้อมรองรับ UTF-8 อย่างเต็มรูปแบบสำหรับทุกอักขระ

  3. 3

    เลือกรูปแบบ

    สำหรับผลลัพธ์ hex เลือกตัวเลขแบบตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ และเลือกใส่ช่องว่างระหว่างแต่ละไบต์หรือเป็นสตรีมต่อเนื่อง เมื่อถอดรหัส ช่องว่าง จุลภาค และทวิภาคจะใส่หรือไม่ก็ได้

  4. 4

    คัดลอกผลลัพธ์

    ตรวจสอบผลลัพธ์ที่แปลงแล้วและคัดลอกไปยังคลิปบอร์ด พร้อมนำไปวางในที่ที่คุณต้องการ

ข้อความเป็นเลขฐานสิบหก: คู่มือฉบับสมบูรณ์

เลขฐานสิบหกคืออะไร

เลขฐานสิบหก ซึ่งมักย่อว่า hex คือระบบเลขฐานสิบหก ในขณะที่เลขฐานสิบใช้สัญลักษณ์ตัวเลขสิบตัวและไบนารีใช้สองตัว hex ใช้สิบหกตัว คือตัวเลข 0 ถึง 9 สำหรับค่าศูนย์ถึงเก้า แล้วต่อด้วยตัวอักษร A ถึง F สำหรับค่าสิบถึงสิบห้า ดังนั้น A คือ 10, B คือ 11, C คือ 12, D คือ 13, E คือ 14 และ F คือ 15 ตัวพิมพ์ไม่เปลี่ยนค่า ดังนั้น 0xff และ 0xFF จึงเป็นตัวเลขเดียวกัน

hex คืออักษรย่อของไบนารีสำหรับโปรแกรมเมอร์ เลข hex แต่ละหลักตรงกับสี่บิตพอดี เพราะสี่บิตเก็บค่าที่เป็นไปได้สิบหกค่า เลข hex สองหลักจึงอธิบายหนึ่งไบต์ขนาดแปดบิตได้อย่างลงตัว ความพอดีอันสะอาดหมดจดนี้คือเหตุผลที่ไบต์มักถูกเขียนเป็น hex แทนที่จะเป็นสตริงยาว ๆ ของเลขหนึ่งและศูนย์ — เพราะมันกระชับกว่ามากและอ่านง่ายกว่ามาก

สองหลัก hex ต่อหนึ่งไบต์

ไบต์มีแปดบิตและเก็บค่าใดก็ได้ตั้งแต่ 0 ถึง 255 ในรูป hex ช่วงนั้นเขียนเป็นสองหลักพอดี ตั้งแต่ 00 ถึง FF โดยที่ FF เท่ากับ 255 หลักซ้ายแทนสี่บิตสูง ถ่วงน้ำหนักด้วยสิบหก และหลักขวาแทนสี่บิตต่ำ ถ่วงน้ำหนักด้วยหนึ่ง การหาค่าของไบต์ทำได้โดยคำนวณหลักซ้ายคูณ 16 บวกหลักขวา

เครื่องมือนี้เขียนแต่ละไบต์เป็นคู่ hex สองหลักเสมอ โดยเติมศูนย์นำหน้าเมื่อจำเป็น ดังนั้นไบต์ที่มีค่า 5 จึงปรากฏเป็น 05 ไม่ใช่แค่ 5 การรักษาความกว้างสองหลักแบบคงที่หมายความว่าไบต์เรียงตรงกันและการดัมป์ hex อ่านได้อย่างไม่กำกวม คุณแสดงตัวเลขเป็นตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ก็ได้ และคั่นไบต์ด้วยช่องว่างหรือต่อกันก็ได้

จากอักขระสู่ hex ทีละขั้นตอน

การแปลงอักขระเป็น hex มีสองขั้นตอน คือ หาค่าไบต์ของมัน แล้วเขียนค่านั้นในฐานสิบหก สำหรับอักขระ ASCII ค่าไบต์ก็คือจุดรหัสที่คุ้นเคย A พิมพ์ใหญ่คือ 65 ในเลขฐานสิบ ในการแปลง 65 เป็น hex ให้หารด้วย 16 ได้ว่า 65 คือ 4 คูณ 16 (ซึ่งคือ 64) เหลือเศษ 1 หลักสูงจึงเป็น 4 และหลักต่ำเป็น 1 ได้เป็น 0x41

นี่คือเหตุผลที่ A = 0x41 เป็นหนึ่งในค่าที่ได้รับการจดจำมากที่สุดในวงการคอมพิวเตอร์ วิธีเดียวกันให้ a พิมพ์เล็กรหัส 97 เป็น 0x61 (6 คูณ 16 คือ 96 เศษ 1) และอักขระช่องว่างรหัส 32 เป็น 0x20 (2 คูณ 16 คือ 32 เศษ 0) เมื่อทำย้อนกลับ ให้คูณหลัก hex ตัวแรกด้วย 16 แล้วบวกตัวที่สองเพื่อกู้คืนรหัสฐานสิบ แล้วจึงค้นหาอักขระ

ตัวอย่างประกอบ: การเข้ารหัส "Hex"

นำตัวอักษรสามตัวคือ H, e, x ผ่านการแปลง H คือรหัส 72 หารด้วย 16 ได้ 4 เศษ 8 จึงเป็น 0x48 ตัว e คือรหัส 101 ซึ่งคือ 6 คูณ 16 (96) เศษ 5 จึงเป็น 0x65 ตัว x คือรหัส 120 ซึ่งคือ 7 คูณ 16 (112) เศษ 8 จึงเป็น 0x78

เมื่อเขียนเป็นการดัมป์ตัวพิมพ์ใหญ่ที่คั่นด้วยช่องว่าง คำว่า "Hex" จะกลายเป็น 48 65 78 ในแบบตัวพิมพ์เล็กที่ไม่มีตัวคั่นคือ 486578 การถอดรหัสคือการทำเลขคณิตย้อนกลับ 48 คือ 4 คูณ 16 บวก 8 ซึ่งคือ 72 ซึ่งคือ H, 65 คือ 101 ซึ่งคือ e, 78 คือ 120 ซึ่งคือ x — กู้คืนคำเดิมได้

ASCII เทียบกับ UTF-8 และอักขระหลายไบต์

กฎหนึ่งอักขระต่อสองหลักใช้ได้อย่างลงตัวเฉพาะกับชุด ASCII ดั้งเดิม คือจุดรหัส 0 ถึง 127 เท่านั้น สำหรับทุกสิ่งที่เกินจากนั้น — ตัวอักษรที่มีเครื่องหมายกำกับเสียง อักษรที่ไม่ใช่ละติน สัญลักษณ์ และอิโมจิ — เครื่องมือนี้ใช้ UTF-8 ซึ่งมีความกว้างผันแปร อักขระ ASCII เป็นหนึ่งไบต์ จึงเป็นหนึ่งคู่ hex แต่อักขระอื่นใช้สอง สาม หรือสี่ไบต์ จึงเป็นสอง สาม หรือสี่คู่ hex

ยกตัวอย่าง é ที่มีเครื่องหมายกำกับเสียง คือสองไบต์ UTF-8 0xC3 และ 0xA9 จึงแปลงเป็น hex C3 A9 แทนที่จะเป็นคู่เดียว อิโมจิทั่วไปตัวหนึ่งมีสี่ไบต์และกลายเป็นสี่คู่ hex นี่คือเหตุผลที่ข้อความที่ไม่ใช่ภาษาอังกฤษให้ hex มากกว่าจำนวนอักขระที่มองเห็น และเป็นเรื่องที่ควรจำไว้เมื่อคุณนับไบต์แทนที่จะนับตัวอักษร

การถอดรหัสที่ยืดหยุ่น

ทิศ Hex เป็นข้อความจะอ่านอินพุตทีละสองหลักและจงใจยืดหยุ่นเรื่องการจัดรูปแบบ ช่องว่าง จุลภาค และทวิภาคระหว่างไบต์จะถูกละเว้นทั้งหมด ดังนั้นทั้งสตริงต่อเนื่องอย่าง 486578, การดัมป์ที่คั่นด้วยช่องว่างอย่าง 48 65 78 และการดัมป์ที่คั่นด้วยทวิภาคอย่าง 48:65:78 ต่างถอดรหัสเป็นคำเดียวกัน และรองรับตัวเลขทั้งตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ผสมกันได้ตามต้องการ

ยังมีกฎสองข้อที่ต้องเป็นจริง คือ อินพุตมีได้เฉพาะอักขระ hex ที่ถูกต้อง (0-9 และ A-F รวมถึงตัวคั่นที่ถูกละเว้น) และจำนวนหลัก hex ต้องเป็นเลขคู่ เพราะทุกไบต์ต้องมีสองหลักพอดี ข้อผิดพลาดในการแปลงเกือบจะหมายความว่ามีอักขระที่ไม่ใช่ hex หลุดเข้ามา หรือจำนวนหลักออกมาเป็นเลขคี่ — บางทีอาจมีหลักหนึ่งหายไปจากไบต์ แก้ตรงนั้นแล้วการถอดรหัสก็จะเสร็จสมบูรณ์

hex ถูกใช้ที่ไหนบ้าง

เลขฐานสิบหกมีอยู่ทุกที่ในการเขียนโปรแกรมและการดีบัก ที่อยู่หน่วยความจำ ออฟเซตของไบต์ และการดัมป์ข้อมูลดิบล้วนแสดงเป็น hex เพราะสองหลักแมปเข้ากับหนึ่งไบต์ได้อย่างเรียบร้อย เมื่อคุณตรวจดูไฟล์หรือแพ็กเก็ตเครือข่ายในโปรแกรมแก้ไข hex คุณกำลังอ่านผลลัพธ์แบบเดียวกับที่เครื่องมือนี้สร้างขึ้นพอดี hex ยังเข้ารหัสตัวระบุไบนารีได้อย่างกระชับ เช่น แฮชและ UUID

คุณคงเคยเห็น hex นอกเหนือจากการดัมป์ไบต์มาแล้วเช่นกัน CSS และเครื่องมือออกแบบเขียนสีเป็นชุดสาม hex อย่าง #FF8800 ซึ่งแต่ละคู่คือความเข้มของสีแดง เขียว และน้ำเงินตั้งแต่ 00 ถึง FF การหลีกเลี่ยงอักขระในหลายภาษาใช้ hex เช่น \x41 ที่หมายถึงตัวอักษร A การแปลงข้อความเป็น hex เป็นวิธีที่รวดเร็วในการตรวจดูค่าไบต์ที่แม่นยำเบื้องหลังสตริง ยืนยันการเข้ารหัส หรือเตรียมข้อมูลสำหรับบริบทที่ต้องการเลขฐานสิบหก

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

ข้อความถูกแปลงเป็นเลขฐานสิบหกอย่างไร
อักขระแต่ละตัวจะถูกเข้ารหัสเป็นไบต์แบบ UTF-8 และทุกไบต์จะถูกเขียนเป็นเลขฐานสิบหกสองหลักตั้งแต่ 00 ถึง FF ตัวอักษรภาษาอังกฤษทั่วไปจะแมปเป็นหนึ่งไบต์ต่อหนึ่งตัว ขณะที่อักขระที่มีเครื่องหมายกำกับเสียง สัญลักษณ์ และอิโมจิจะใช้สองถึงสี่ไบต์
เครื่องมือนี้รองรับอิโมจิและข้อความที่ไม่ใช่ภาษาอังกฤษหรือไม่
รองรับ เนื่องจากเครื่องมือใช้ UTF-8 จึงจัดการอักขระ Unicode ได้ทุกตัว — ทั้งตัวอักษรที่มีเครื่องหมายกำกับเสียง อักษรซีริลลิก กรีก จีน ญี่ปุ่น อาหรับ อิโมจิ และอื่น ๆ อักขระเหล่านี้จะถูกเข้ารหัสเป็นลำดับหลายไบต์ที่ถูกต้องและถอดรหัสกลับได้อย่างตรงเป๊ะ
ตัวถอดรหัสรองรับรูปแบบ hex แบบใดบ้าง
ตัวถอดรหัส Hex เป็นข้อความจะอ่านเป็นไบต์ละสองหลักและยืดหยุ่นเรื่องการจัดรูปแบบ ช่องว่าง จุลภาค และทวิภาคระหว่างไบต์จะถูกละเว้นทั้งหมด ดังนั้นทั้ง hex ธรรมดา ไบต์ที่คั่นด้วยช่องว่าง และดัมป์ที่คั่นด้วยทวิภาคจึงใช้ได้ และรองรับตัวเลขทั้งแบบตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
ทำไมฉันถึงได้รับข้อผิดพลาดในการแปลง
การถอดรหัสจะล้มเหลวหาก hex มีอักขระอื่นนอกเหนือจาก 0-9 และ A-F หรือหากจำนวนหลักเป็นเลขคี่ แต่ละไบต์ต้องมีเลข hex สองหลักพอดี ดังนั้นให้ลบอักขระที่ไม่เกี่ยวข้องออกและตรวจสอบให้แน่ใจว่าจำนวนหลักเป็นเลขคู่ แล้วการแปลงจะสำเร็จ
ข้อมูลของฉันถูกอัปโหลดไปยังเซิร์ฟเวอร์หรือไม่
ไม่ การแปลงทั้งหมดเกิดขึ้นภายในเบราว์เซอร์ของคุณทั้งหมด ข้อความของคุณจะไม่ถูกอัปโหลด บันทึก หรือจัดเก็บไว้ที่ใด จึงเป็นส่วนตัวอย่างสมบูรณ์ และเครื่องมือยังคงทำงานได้แม้ในขณะที่คุณออฟไลน์

เครื่องมือที่เกี่ยวข้อง

ทำงานต่อด้วยเครื่องมือที่มีประโยชน์เหล่านี้

ตัวแปลงข้อความเป็นไบนารี

ตัวแปลรหัสมอร์ส

ตัวแปลงอักษรสะกด NATO

ตัวแปลงอักษรเบรลล์

รหัสซีซาร์

รหัสลับวีฌ์แนร์