เครื่องมือ
TH

เครื่องคิดเลขฐาน 16 (Hex Calculator)

เครื่องคิดเลขฐานสิบหกสำหรับบวก ลบ คูณ และหาร พร้อมการดำเนินการระดับบิต AND, OR, XOR, NOT และการเลื่อนบิต คำนวณตัวเลขได้ทุกขนาดอย่างแม่นยำ และแสดงผลลัพธ์ที่ติดลบเป็น two's complement ด้วย

เลขฐานสิบหก
เลขฐานสิบ
เลขฐานสอง

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

วิธีใช้เครื่องคิดเลขฐาน 16

  1. ป้อนเลขฐานสิบหกสองค่า เช่น 8AB และ B78 ใส่เครื่องหมายลบและ prefix อย่าง 0x ได้
  2. เลือกการดำเนินการ ผลลัพธ์จะอัปเดตทันทีทั้งในฐานสิบหก ฐานสิบ และฐานสอง ส่วนการหารจะแสดงเศษด้วย
  3. สำหรับผลลัพธ์ที่ติดลบและ NOT ให้เลือกจำนวนบิต (8, 16, 32 หรือ 64 บิต) เพื่อดูค่าแบบ two's complement

วิธีบวกเลขฐาน 16

บวกทีละหลักจากขวาไปซ้ายเหมือนเลขฐานสิบทุกประการ ต่างกันเพียงอย่างเดียว: ถ้าผลบวกของหลักใดได้ 16 ขึ้นไป ให้เขียนผลบวกลบด้วย 16 แล้วทด 1 ไปยังหลักถัดไป ตัวอย่าง: 8AB + B78

หลักตัวเลขผลบวกเขียนทด
16⁰B + 811 + 8 = 1931
16¹A + 7 + 110 + 7 + 1 = 1821
16²8 + B + 18 + 11 + 1 = 2041
16³ตัวทด11–

อ่านตัวเลขที่เขียนจากแถวล่างขึ้นบน (หลักสูงสุดก่อน) จะได้ 1423 ตรวจสอบด้วยฐานสิบ: 2219 + 2936 = 5155 = 1423 ในฐานสิบหก

การลบเลขฐาน 16 ผลลัพธ์ติดลบ และ two's complement

การลบใช้วิธียืม: ถ้าหลักของตัวตั้งน้อยกว่า ให้ยืม 16 จากหลักถัดไป B78 − 8AB: 8 − B ต้องยืม จึงได้ 8 + 16 − 11 = 13 = D จากนั้น 7 − 1 − A ต้องยืมอีก ได้ 6 + 16 − 10 = 12 = C สุดท้าย B − 1 − 8 = 2 ผลลัพธ์จึงเป็น 2CD

ถ้าตัวที่สองมากกว่า ผลลัพธ์จะติดลบ เครื่องคิดเลขจะแสดงผลพร้อมเครื่องหมายลบ (5 − 8 = −3) และแสดงเป็นรูปแบบบิตที่คอมพิวเตอร์เก็บจริงด้วย: ใน two's complement 8 บิต −3 คือ 2⁸ − 3 = 253 = FD และใน 16 บิตคือ FFFD หากคำนวณด้วยมือ ให้ทำตัวเลขเป็นค่าลบโดยกลับบิตทั้งหมดแล้วบวก 1: 03 = 0000 0011 → 1111 1100 → 1111 1101 = FD

การดำเนินการระดับบิต: AND, OR, XOR, NOT และการเลื่อนบิต

การดำเนินการระดับบิต (bitwise) จะเปรียบเทียบตัวเลขทีละบิต โปรแกรมเมอร์จึงนิยมใช้กับ flag, mask และสิทธิ์การเข้าถึง ตัวอย่างกับ 3C = 0011 1100 และ 0F = 0000 1111:

การดำเนินการกฎผลลัพธ์
3C AND 0Fเป็น 1 เฉพาะเมื่อทั้งสองบิตเป็น 10C
3C OR 0Fเป็น 1 เมื่อมีอย่างน้อยหนึ่งบิตเป็น 13F
3C XOR 0Fเป็น 1 เมื่อบิตต่างกัน33
NOT 3C (8 บิต)กลับค่าทุกบิตC3
3C << 1เลื่อนซ้าย = คูณด้วย 278
3C >> 2เลื่อนขวา = หารด้วย 40F

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

คูณเลขฐาน 16 ทำอย่างไร?

ทำเหมือนการคูณเลขฐานสิบ แต่ผลคูณย่อยทุกตัวต้องเขียนเป็นฐาน 16 วิธีที่มักง่ายกว่าคือแปลงเป็นฐานสิบ คูณ แล้วแปลงกลับ: 1A × 10 = 26 × 16 = 416 = 1A0 การคูณด้วย 10 ในฐานสิบหก (16) ก็แค่เติม 0 ต่อท้าย เหมือนการคูณด้วย 10 ในฐานสิบ

หารเลขฐาน 16 แล้วจะได้ผลอย่างไร?

เครื่องคิดเลขจะหารแบบจำนวนเต็มและแสดงทั้งผลหารและเศษ: 1423 ÷ 10 = 142 เศษ 3 ส่วนการหารด้วยศูนย์จะแจ้งเป็นข้อผิดพลาด

ทำไม NOT จึงให้ผลต่างกันเมื่อจำนวนบิตต่างกัน?

NOT กลับค่าทุกบิตของค่าที่มีขนาดคงที่ ผลลัพธ์จึงขึ้นอยู่กับจำนวนบิต: NOT 3C คือ C3 ใน 8 บิต แต่เป็น FFC3 ใน 16 บิต ตัวเลือกอัตโนมัติจะเลือกขนาดมาตรฐานที่เล็กที่สุด (8, 16, 32 หรือ 64 บิต) ที่เก็บตัวเลขนั้นได้

เครื่องคิดเลขฐาน 16 คำนวณเลขขนาดใหญ่ได้ไหม?

ได้ ทุกการดำเนินการใช้จำนวนเต็มแบบความแม่นยำไม่จำกัด ค่า 64 บิต 128 บิต หรือยาวกว่านั้นจึงคำนวณได้ถูกต้องแม่นยำ โดยไม่มีปัญหา overflow หรือการปัดเศษเหมือนเครื่องคิดเลขทั่วไป