เครื่องมือนี้ทำอะไร
ตัวแปลงเลขฐานแสดงจำนวนเต็มหนึ่งค่าในทุกระบบเลขฐานที่ใช้กันทั่วไปพร้อมกัน ได้แก่ ฐานสอง (base 2) ฐานแปด (base 8) ฐานสิบ (base 10) ฐานสิบหก (base 16) และฐาน 36 พิมพ์ตัวเลขในฐานใดฐานหนึ่ง แล้วฐานอื่นทั้งหมดจะอัปเดตทันทีขณะพิมพ์ แต่ละแถวมีปุ่มคัดลอกของตัวเอง
โปรแกรมเมอร์ต้องแปลงเลขฐานอยู่ตลอด ไม่ว่าจะอ่านรหัสสี hex หรือที่อยู่หน่วยความจำ ตรวจ bit flag และ mask ในฐานสอง ตั้งสิทธิ์ไฟล์ Unix ในฐานแปด (755) หรือย่อ ID ให้สั้นลงด้วยฐาน 36
วิธีใช้งาน
- พิมพ์หรือวางตัวเลขลงในช่องอินพุต หรือคลิก ตัวอย่าง
- ปล่อย ฐานของอินพุต เป็นอัตโนมัติเพื่ออ่านคำนำหน้า
0x,0oและ0bโดยตัวเลขธรรมดาจะถือเป็นฐานสิบ หากต้องการพิมพ์เลขฐานสิบหกอย่างffโดยไม่มีคำนำหน้า ให้เลือกฐานเอง - เปิด จัดกลุ่มตัวเลข เพื่อแบ่งผลลัพธ์ยาว ๆ เป็นกลุ่มที่อ่านง่าย: กลุ่มละ 4 หลักสำหรับฐานสองและฐานสิบหก และ 3 หลักสำหรับฐานสิบและฐานแปด
- คัดลอกแถวใดก็ได้ด้วยปุ่มคัดลอก แถว จำนวนบิต บอกว่าค่านี้ต้องใช้กี่บิต ช่วยในการเลือกชนิดข้อมูลจำนวนเต็ม
ตัวอย่าง
0xFF5733 ซึ่งเป็นสีส้มเฉดหนึ่งใน CSS มีค่าดังนี้:
| ฐาน | ค่า |
|---|---|
| ฐานสิบ | 16734003 |
| ฐานสอง | 111111110101011100110011 |
| ฐานแปด | 77653463 |
| ฐาน 36 | 9yo1f |
ค่านี้ต้องใช้ 24 บิต คือหนึ่งไบต์สำหรับแต่ละสีแดง เขียว และน้ำเงิน
การแปลงเลขฐานทำงานอย่างไร
ในฐาน b แต่ละหลักมีค่าเป็น b เท่าของหลักที่อยู่ทางขวา เลขฐานสิบหก ff คือ 15 × 16 + 15 = 255 การแปลงไปยังฐานอื่นทำได้โดยหารด้วยฐานใหม่ซ้ำ ๆ แล้วอ่านเศษย้อนกลับ เนื่องจาก 16 = 2⁴ และ 8 = 2³ เลขฐานสิบหกแต่ละหลักจึงตรงกับเลขฐานสองพอดี 4 หลัก และเลขฐานแปดแต่ละหลักตรงกับ 3 หลัก นี่คือเหตุผลที่ฐานสิบหกเป็นวิธีเขียนเลขฐานสองแบบกระชับ
คำถามที่พบบ่อย
› แปลงตัวเลขได้ใหญ่แค่ไหน?
แทบไม่มีขีดจำกัด ตัวแปลงใช้จำนวนเต็มความแม่นยำไม่จำกัด (BigInt) ค่าขนาด 64 บิต 128 บิต หรือยาวกว่านั้นจึงแปลงได้ถูกต้องทุกหลัก ต่างจากเครื่องคิดเลขที่สูญเสียความแม่นยำเมื่อเกิน 2^53
› จะป้อนเลขฐานสิบหกหรือฐานสองอย่างไร?
เมื่อตั้ง ฐานของอินพุต เป็นอัตโนมัติ ให้ใส่คำนำหน้า 0x สำหรับฐานสิบหก 0b สำหรับฐานสอง หรือ 0o สำหรับฐานแปด เช่น 0xff หรือ 0b1010 หรือจะเลือกฐานจากเมนูแล้วพิมพ์ตัวเลขโดยไม่มีคำนำหน้าก็ได้
› ตัวเลขติดลบแสดงอย่างไร?
แสดงเป็นเครื่องหมายลบตามด้วยค่าสัมบูรณ์ เช่น -255 คือ -ff ในฐานสิบหก เครื่องมือนี้ไม่แปลงเป็นรูปแบบ two's complement แบบความกว้างคงที่
› วางตัวเลขที่มีตัวคั่นได้ไหม?
ได้ ช่องว่าง ขีดล่าง และจุลภาคจะถูกข้ามไป ทั้ง 1_000_000 และ 1,000,000 จึงใช้ได้ เปิด จัดกลุ่มตัวเลข เพื่อเว้นวรรคในผลลัพธ์อีกครั้ง