tigtools

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

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

ทำงานในเบราว์เซอร์ของคุณ ไม่ต้องสมัคร

ช่องว่างและขีดล่างจะถูกละเว้น เครื่องหมายลบนำหน้าทำให้ตัวเลขเป็นค่าลบ ยอมรับคำนำหน้า 0b, 0o และ 0x

ฐานสองฐาน 2
ฐานแปดฐาน 8
ฐานสิบฐาน 10
ฐานสิบหกฐาน 16

วิธีใช้งาน

  1. เลือกฐานของตัวเลขที่คุณมี: ฐานสอง ฐานแปด ฐานสิบ ฐานสิบหก หรือฐานอื่นตั้งแต่ 2 ถึง 36
  2. พิมพ์หรือวางตัวเลข คำนำหน้าเช่น 0x และตัวคั่นเช่น _ ใช้ได้
  3. ดูตัวเลขในทุกฐานพร้อมกันและคัดลอกฐานที่คุณต้องการ
  4. ใช้แถวสุดท้ายเพื่อแปลงเป็นฐานอื่น ๆ เช่น ฐาน 36 สำหรับ ID แบบสั้น

วิธีการทำงาน

ระบบเลขเชิงตำแหน่งเขียนค่าด้วยตัวเลขที่คูณกับกำลังของฐาน ในเลขฐานสอง (ฐาน 2) แต่ละหลักคือบิต ในเลขฐานแปด (ฐาน 8) แต่ละหลักแทน 3 บิต และในเลขฐานสิบหก (ฐาน 16) แต่ละหลักแทน 4 บิต โดยใช้ตัวอักษร A–F แทน 10 ถึง 15 ฐานที่สูงกว่า 16 ใช้อักษรต่อเนื่องกันไปจนถึงฐาน 36 ซึ่งใช้เลข 0–9 และอักษร A–Z ทั้งหมด

ตัวแปลงใช้การคำนวณด้วย JavaScript BigInt จึงแปลงตัวเลขที่มีความยาวเท่าใดก็ได้อย่างแม่นยำ เลขทศนิยมลอยตัวทั่วไปสูญเสียความแม่นยำเมื่อเกิน 9,007,199,254,740,991 (2^53 − 1) ซึ่งเป็นเหตุผลที่ตัวแปลงบางตัวให้ผลลัพธ์ผิดพลาดสำหรับค่า 64 บิต

อินพุตถูกตรวจสอบทีละหลักเทียบกับฐานที่เลือก อักขระที่ไม่ถูกต้องตัวแรกจะถูกรายงานพร้อมตำแหน่ง เช่น เลข 2 ในเลขฐานสอง หรืออักษร G ในเลขฐานสิบหก ตัวอักษรพิมพ์เล็กหรือพิมพ์ใหญ่ถือว่าเหมือนกัน ช่องว่างและขีดล่างจะถูกละเว้น คุณจึงวางค่าเช่น 1111_0000 หรือ DE AD BE EF ได้ ยอมรับคำนำหน้า 0b (ฐานสอง), 0o (ฐานแปด) และ 0x (ฐานสิบหก) หากตั้งฐานอินพุตเป็นเลขฐานสิบและตัวเลขขึ้นต้นด้วยคำนำหน้าเหล่านี้ คำนำหน้าจะเป็นตัวกำหนดฐาน

จำนวนลบจะถูกแปลงเป็นเครื่องหมายลบตามด้วยค่าสัมบูรณ์ (−255 คือ −FF ในเลขฐานสิบหก) เครื่องมือนี้ไม่แสดงรูปแบบ two's complement ซึ่งขึ้นอยู่กับความกว้างบิตคงที่ เช่น 8, 32 หรือ 64 บิต ไม่รองรับเศษส่วน: แปลงเฉพาะจำนวนเต็มเท่านั้น

ตัวอย่าง

การอ่านค่าสีฐานสิบหกหรือค่าไบต์

0xFF คือ 255 ในเลขฐานสิบ และ 1111 1111 ในเลขฐานสอง ซึ่งเป็นค่าสูงสุดของหนึ่งไบต์ เช่นในสี #FF0000 ที่ FF หมายถึงสีแดงเต็มค่า

สิทธิ์ไฟล์ Unix

สิทธิ์เลขฐานแปด 755 คือ 111 101 101 ในเลขฐานสอง: อ่าน เขียน และเรียกใช้งาน (7) สำหรับเจ้าของ และอ่านกับเรียกใช้งาน (5) สำหรับกลุ่มและผู้ใช้คนอื่น ในเลขฐานสิบคือ 493

ค่า 64 บิตขนาดใหญ่

จำนวนเต็ม 64 บิตแบบไม่มีเครื่องหมายที่มีค่ามากที่สุด FFFF FFFF FFFF FFFF ในเลขฐานสิบหก คือ 18446744073709551615 ในเลขฐานสิบ ระบบจะแปลงอย่างแม่นยำทีละหลักโดยไม่ปัดเศษ

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

ฉันจะแปลงเลขฐานสองเป็นเลขฐานสิบด้วยมือได้อย่างไร

คูณแต่ละบิตด้วยค่าประจำหลัก โดยนับจาก 0 ทางขวา แล้วนำผลคูณมารวมกัน สำหรับ 1011: 1×8 + 0×4 + 1×2 + 1×1 = 11

ทำไมเลขฐานสองและเลขฐานสิบหกจึงจัดกลุ่มทีละสี่หลัก

เลขฐานสิบหกหนึ่งหลักแทนบิตได้ 4 บิตพอดี การจัดกลุ่มเลขฐานสองทีละสี่หลักจึงตรงกับหลักของเลขฐานสิบหก เช่น 1101 1110 คือ DE จึงแปลงระหว่างสองระบบนี้ด้วยสายตาได้ง่าย

มีขนาดตัวเลขสูงสุดหรือไม่

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

แปลงจำนวนลบหรือเศษส่วนได้ไหม

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

ฐาน 36 ใช้ทำอะไร

ฐาน 36 ใช้ 0–9 และ A–Z ซึ่งเป็นรูปแบบตัวอักษรและตัวเลขที่ไม่แยกตัวพิมพ์เล็กพิมพ์ใหญ่และกะทัดรัดที่สุด ใช้สำหรับ ID แบบสั้นและตัวย่อ URL เช่น 1,000,000 ในฐาน 36 คือ LFLS

ความเป็นส่วนตัว

การแปลงคำนวณในเบราว์เซอร์ของคุณ ตัวเลขที่คุณป้อนจะไม่ถูกอัปโหลด จัดเก็บ หรือรวมอยู่ในข้อมูลวิเคราะห์