ตัวแปลงเลขฐาน (ฐานสอง ฐานสิบหก ฐานสิบ)
แปลงระหว่างเลขฐานสอง ฐานแปด ฐานสิบ ฐานสิบหก และฐานใดก็ได้ พร้อมวิธีทำและการดำเนินการระดับบิต
กำลังโหลดเครื่องมือ…
แปลงตัวเลขหนึ่งค่าเป็นฐานสอง ฐานแปด ฐานสิบ ฐานสิบหก และฐานอื่นตั้งแต่ 2 ถึง 36 พร้อมกัน ใช้ตรวจวิธีทำแบบฝึกหัดการแปลงเลขฐาน หรือดูค่าฐานสิบหกและบิต
วิธีใช้
- พิมพ์ตัวเลขใน "ตัวเลข" และเลือกฐานใน "เขียนในฐาน" คำนำหน้า 0x, 0b หรือ 0o จะตั้งฐานให้อัตโนมัติ
- ฐานที่ใช้บ่อยทั้งสี่และ "ฐานอื่น" จะแสดงด้านล่างทันที เศษส่วนจะคำนวณตาม "จำนวนหลักทศนิยม"
- เปิด "แสดงวิธีทำ" และเลือก "แปลงเป็น" เพื่อดูขั้นตอนการหารและค่าประจำหลักเป็นตาราง
- ในแท็บ "บิตและการดำเนินการระดับบิต" เลือก "ความกว้าง" แตะบิตเพื่อสลับค่า และดูผลของ AND, OR, XOR และการเลื่อนบิต
- ใช้ "เลขคณิตฐานสอง" ดูการทดและการยืม และใช้ "ตัวอักษร ↔ รหัส" ดู code point ของ Unicode และไบต์ UTF-8
หลักการทำงาน
- หลักที่มากกว่า 9 เขียนเป็นตัวอักษร: A = 10, B = 11 ไปจนถึง Z = 35 จำนวนเต็มยาวเท่าใดก็แปลงได้แม่นยำ
- เมื่อหลักทศนิยมซ้ำไม่รู้จบ จะมีเส้นขีดเหนือส่วนที่ซ้ำ ส่วน … หมายถึงหลักถูกตัดออก
- ตัวแปลงหลักแสดงจำนวนลบด้วยเครื่องหมายลบ ส่วนแท็บ "บิตและการดำเนินการระดับบิต" แสดงแบบ two's complement ใน 8, 16, 32 หรือ 64 บิต ค่าที่ไม่พอดีจะเก็บเฉพาะบิตต่ำสุด
คำถามที่พบบ่อย
- แปลงเลขฐานสองเป็นฐานสิบอย่างไร
- คูณแต่ละหลักด้วยค่ากำลังของ 2 ประจำหลักแล้วบวกกัน เช่น 1011 คือ 8 + 0 + 2 + 1 = 11
- แปลงเลขฐานสิบเป็นฐานสิบหกอย่างไร
- หารด้วย 16 ไปเรื่อย ๆ จนผลหารเป็น 0 แล้วอ่านเศษจากล่างขึ้นบน 255 ได้เศษ 15 และ 15 จึงเป็น FF "แสดงวิธีทำ" จะแสดงตารางแบบเดียวกัน
- two's complement แทนจำนวนลบอย่างไร
- กลับบิตทั้งหมดของค่าบวกแล้วบวก 1 ใน 8 บิต −42 คือ 00101010 กลับบิตเป็น 11010101 บวก 1 ได้ 11010110 ค่าแบบมีเครื่องหมาย 8 บิตอยู่ในช่วง −128 ถึง 127
- ทำไม 0.1 ในฐานสองจึงไม่จบ
- ตัวส่วน 10 มีตัวประกอบเฉพาะ 5 ซึ่งไม่ใช่ตัวประกอบของ 2 ในฐานสอง 0.1 คือ 0.0001100110011… และกลุ่ม 0011 ซ้ำไม่รู้จบ