ตัวแปลงฐานตัวเลข
การกำหนดค่า
จัดรูปแบบตัวเลข
โหมดขั้นสูง
แสดงการเข้ารหัส RFC 4648 (Base16, Base32, Base64)
เลขฐานสิบหก
เลขฐานสิบ
เลขฐานแปด
เลขฐานสอง
รายละเอียดทางเทคนิค
ตัวแปลงฐานตัวเลขทำงานอย่างไร
เครื่องมือนี้ทำอะไร
ตัวแปลงฐานตัวเลขจะแปลงตัวเลขระหว่างระบบเลขต่าง ๆ รวมถึงฐานสิบ ฐานสอง ฐานสิบหก และฐานแปด ตัวแปลงระบบตัวเลข/ตัวแปลงฐาน/ตัวแปลงฐานสิบหกนี้รองรับการแปลงระหว่างฐานที่รองรับทั้งหมด ทำให้คุณสามารถแปลงฐานสิบเป็นฐานสิบหก ฐานสิบหกเป็นฐานสิบ ฐานสองเป็นฐานสิบ และกลับกันได้ เมื่อคุณต้องการตัวแปลงฐานสิบหก (hex converter) ตัวแปลงเรดิกซ์ (radix converter) หรือตัวแปลงฐานสอง (binary converter) เครื่องมือแปลงฐานนี้จะให้ผลลัพธ์ทันที ตัวแปลงรองรับฐานมาตรฐาน: ฐานสอง (ฐาน 2), ฐานแปด (ฐาน 8), ฐานสิบ (ฐาน 10) และฐานสิบหก (ฐาน 16) นอกจากนี้ยังรองรับฐานกำหนดเองตั้งแต่ 2 ถึง 36 ทำให้แปลงไปและกลับจากเรดิกซ์ใด ๆ ได้ เครื่องมือนี้จะแสดงตัวเลขในหลายรูปแบบพร้อมกัน โดยแสดงค่าในฐานที่ใช้กันทั่วไปทั้งหมด รองรับทั้งจำนวนบวกและจำนวนลบ และรองรับจำนวนเต็มขนาดใหญ่ (จำกัดตามข้อจำกัดของเบราว์เซอร์/รันไทม์)
กรณีการใช้งานทั่วไปของนักพัฒนา
นักพัฒนาใช้ตัวแปลงฐานตัวเลขเมื่อทำงานกับการเขียนโปรแกรมระดับล่าง การดีบักข้อมูลไบนารี หรือทำความเข้าใจการแทนค่าแบบฐานสิบหก ตัวแปลงฐานสิบหกมีประโยชน์เมื่ออ่าน memory dump ทำงานกับโค้ดสี หรือดีบักโปรโตคอลเครือข่าย นักพัฒนาจำนวนมากใช้ตัวแปลงฐานสองเมื่อทำงานกับการดำเนินการแบบบิต (bitwise) ทำความเข้าใจรูปแบบไฟล์ไบนารี หรือวิเคราะห์โครงสร้างข้อมูล ตัวแปลงระบบตัวเลขมีคุณค่าเมื่อดีบักปัญหาเอนโค้ดดิ้ง ทำงานกับการเข้ารหัสอักขระ หรือแปลงระหว่างรูปแบบการแทนค่าที่ต่างกัน นักพัฒนาใช้เพื่อยืนยันการคำนวณ ทำความเข้าใจการแทนข้อมูล หรือแปลงค่าให้เหมาะกับระบบต่าง ๆ เครื่องมือนี้ช่วยเมื่ออ่าน hex dump ทำงานกับจุดรหัส Unicode หรือทำความเข้าใจว่าตัวเลขถูกจัดเก็บในหน่วยความจำอย่างไร
รูปแบบข้อมูล ชนิด หรือรูปแบบย่อย
ตัวแปลงรองรับระบบเลขมาตรฐาน: ฐานสอง (0-1), ฐานแปด (0-7), ฐานสิบ (0-9) และฐานสิบหก (0-9, A-F) รองรับฐานกำหนดเองตั้งแต่ 2 ถึง 36 โดยใช้ตัวเลข 0-9 และตัวอักษร A-Z สำหรับค่า 10-35 เครื่องมือสามารถแปลงระหว่างฐานใด ๆ สองฐานได้โดยตรง หรือแสดงตัวเลขในฐานที่ใช้กันทั่วไปทั้งหมดพร้อมกัน ตัวอย่างเช่น เลขฐานสิบ 255คือ 11111111ในฐานสอง, 377ในฐานแปด และ FF ในฐานสิบหก ตัวแปลงรองรับสัญกรณ์ฐานสิบหกทั้งตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก และสามารถทำงานกับตัวเลขที่มีการจัดรูปแบบได้ (ช่องว่างและจุลภาคจะถูกลบออกโดยอัตโนมัติ) อินพุตฐานสิบหกสามารถใช้คำนำหน้า 0xได้ (เช่น 0xFFเทียบเท่ากับ FF)
ข้อผิดพลาดที่พบบ่อยและกรณีขอบ
ความผิดพลาดที่พบบ่อยอย่างหนึ่งคือสับสนระหว่างฐานสิบหกกับฐานสิบ: ค่า hex อย่าง FFมักถูกเข้าใจผิดว่าเป็นเลขฐานสิบ อีกประเด็นคือเลขศูนย์นำหน้า: ในบางบริบท เลขศูนย์นำหน้ามีความสำคัญ (เช่น ในสัญกรณ์ฐานแปดที่ 077แตกต่างจาก 77) ขณะที่ในบางบริบทก็ไม่สำคัญ ค่าในฐานแปด 077(มีศูนย์นำหน้า) จะถูกตีความเป็นฐานแปด 77 ซึ่งเท่ากับฐานสิบ 63 ในขณะที่ 77ที่ไม่มีศูนย์นำหน้าคือฐานสิบ 77 จำนวนลบอาจถูกแทนค่าแตกต่างกันในแต่ละฐาน เครื่องมือนี้แปลง “ค่าตัวเลข” ไม่ได้แปลงขนาดคำไบนารีหรือการแทนค่าแบบ two's complement—จำนวนลบจะถูกแปลงเป็นจำนวนเต็มแบบมีเครื่องหมาย (signed integers) ตัวแปลงรองรับกรณีเหล่านี้ แต่ผู้พัฒนาควรตระหนักถึงการแทนค่าแบบ signed กับ unsigned โดยเฉพาะเมื่อทำงานกับข้อมูลไบนารี ความแม่นยำอาจเป็นปัญหาเมื่อแปลงตัวเลขที่ใหญ่มาก หรือเมื่อทำงานกับการแทนค่าแบบทศนิยมลอยตัว (floating-point) เมื่อแปลงระหว่างฐาน ให้แน่ใจว่ารูปแบบอินพุตตรงกับที่คุณคาดไว้ โดยเฉพาะสัญกรณ์ฐานสิบหก (มีหรือไม่มีคำนำหน้า 0x)
เมื่อใดควรใช้เครื่องมือนี้แทนการเขียนโค้ด
ใช้ตัวแปลงฐานตัวเลขนี้สำหรับการแปลงอย่างรวดเร็ว การดีบักข้อมูลไบนารี/ฐานสิบหก หรือทำความเข้าใจการแทนค่าตัวเลข เหมาะสำหรับการแปลงแบบครั้งคราว การเรียนรู้ระบบเลขต่าง ๆ หรือการตรวจสอบการคำนวณ สำหรับโค้ดที่ใช้งานจริง ให้ใช้ฟังก์ชันแปลงตัวเลขในภาษาที่คุณใช้ ซึ่งสามารถจัดการการแปลงฐานได้อย่างมีประสิทธิภาพและให้ความปลอดภัยด้านชนิดข้อมูล ภาษาส่วนใหญ่มีฟังก์ชันในตัวสำหรับการแปลงฐาน (เช่น parseInt/toString ใน JavaScript หรือ format specifiers ใน C) เครื่องมือบนเบราว์เซอร์เด่นเรื่องการแปลงแบบเฉพาะกิจและการสำรวจ ขณะที่โซลูชันแบบโค้ดให้การทำงานอัตโนมัติ การตรวจสอบความถูกต้อง และการผสานเข้ากับสายงานประมวลผลข้อมูล สำหรับแอปพลิเคชันระดับองค์กร ฟังก์ชันแปลงแบบเนทีฟให้ประสิทธิภาพ การจัดการข้อผิดพลาด และการรองรับตัวเลขขนาดใหญ่และฐานกำหนดเองที่ดีกว่า