DevToys Web Pro iconDevToys Web Proบล็อก
ให้คะแนนเรา:
ลองใช้ส่วนขยายเบราว์เซอร์:

ตัวแปลงฐานตัวเลข

การกำหนดค่า

  • จัดรูปแบบตัวเลข

  • โหมดขั้นสูง

    แสดงการเข้ารหัส 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) เครื่องมือบนเบราว์เซอร์เด่นเรื่องการแปลงแบบเฉพาะกิจและการสำรวจ ขณะที่โซลูชันแบบโค้ดให้การทำงานอัตโนมัติ การตรวจสอบความถูกต้อง และการผสานเข้ากับสายงานประมวลผลข้อมูล สำหรับแอปพลิเคชันระดับองค์กร ฟังก์ชันแปลงแบบเนทีฟให้ประสิทธิภาพ การจัดการข้อผิดพลาด และการรองรับตัวเลขขนาดใหญ่และฐานกำหนดเองที่ดีกว่า