เครื่องคิดเลขบิต
ดำเนินการบิตไวส์ (AND, OR, XOR, NOT) และการเลื่อนบิตบนจำนวนเต็มพร้อมไดอะแกรมบิตภาพแบบโต้ตอบที่แสดงแต่ละตำแหน่งบิต
ตัวบล็อกโฆษณาของคุณทำให้เราไม่สามารถแสดงโฆษณาได้
MiniWebtool ให้ใช้งานฟรีเพราะมีโฆษณา หากเครื่องมือนี้ช่วยคุณได้ โปรดสนับสนุนเราด้วย Premium (ไม่มีโฆษณา + เร็วขึ้น) หรืออนุญาต MiniWebtool.com แล้วรีโหลดหน้าเว็บ
- หรืออัปเกรดเป็น Premium (ไม่มีโฆษณา)
- อนุญาตโฆษณาสำหรับ MiniWebtool.com แล้วรีโหลด
เกี่ยวกับ เครื่องคิดเลขบิต
ยินดีต้อนรับสู่ เครื่องคิดเลขเลื่อนบิต เครื่องมือเฉพาะสำหรับการดำเนินการเลื่อนซ้าย เลื่อนขวา และ NOT บิตไวส์พร้อมไดอะแกรมบิตภาพ เครื่องคิดเลขนี้ช่วยให้โปรแกรมเมอร์ นักศึกษา และวิศวกรเข้าใจว่าบิตเคลื่อนที่อย่างไรระหว่างการเลื่อน และการดำเนินการ NOT กลับค่าบิตทั้งหมดอย่างไร
การดำเนินการเลื่อนบิต
เลื่อนซ้าย (<<)
การดำเนินการเลื่อนซ้ายจะย้ายบิตทั้งหมดไปทางซ้ายตามจำนวนตำแหน่งที่ระบุ บิตใหม่ที่เติมทางด้านขวาจะเป็นศูนย์เสมอ การเลื่อนซ้ายแต่ละตำแหน่งจะเท่ากับการคูณตัวเลขด้วย 2
ตัวอย่าง: 5 << 2
- 5 ในฐานสอง: 0101
- เลื่อนซ้าย 2 ตำแหน่ง: 010100
- ผลลัพธ์: 20 (ซึ่งก็คือ 5 คูณด้วย 4)
สูตร: n << k = n คูณด้วย 2 ยกกำลัง k
เลื่อนขวา (>>)
การดำเนินการเลื่อนขวาจะย้ายบิตทั้งหมดไปทางขวาตามจำนวนตำแหน่งที่ระบุ บิตที่เลื่อนออกจากปลายด้านขวาจะถูกละทิ้ง การเลื่อนขวาแต่ละตำแหน่งจะเท่ากับการหารตัวเลขด้วย 2 (การหารจำนวนเต็ม)
ตัวอย่าง: 20 >> 2
- 20 ในฐานสอง: 10100
- เลื่อนขวา 2 ตำแหน่ง: 00101
- ผลลัพธ์: 5 (ซึ่งก็คือ 20 หารด้วย 4)
สูตร: n >> k = n หารด้วย 2 ยกกำลัง k (การหารจำนวนเต็ม)
NOT บิตไวส์ (~)
การดำเนินการ NOT จะกลับค่าทุกบิต: 0 กลายเป็น 1 และ 1 กลายเป็น 0 ผลลัพธ์ขึ้นอยู่กับความกว้างบิตที่ใช้งาน
ตัวอย่าง: NOT 5 (8-บิต)
- 5 ในฐานสอง (8-บิต): 00000101
- การดำเนินการ NOT: 11111010
- ผลลัพธ์: 250
กรณีการใช้งานทั่วไป
การคูณและการหารอย่างรวดเร็ว
- คูณด้วย 2:
n << 1 - คูณด้วย 4:
n << 2 - คูณด้วย 8:
n << 3 - หารด้วย 2:
n >> 1 - หารด้วย 4:
n >> 2
การสร้างบิตมาร์ก
- มาร์กสำหรับบิต k:
1 << k - มาร์กสำหรับบิต n ตำแหน่งล่าง:
(1 << n) - 1
การตั้งค่าและการล้างบิต
- ตั้งค่าบิต k:
n | (1 << k) - ล้างบิต k:
n & ~(1 << k) - สลับบิต k:
n ^ (1 << k)
วิธีใช้เครื่องคิดเลขนี้
- เลือกรูปแบบอินพุต: เลือกฐานสอง ฐานสิบ หรือฐานสิบหก
- ป้อนตัวเลขของคุณ: พิมพ์ตัวเลขที่คุณต้องการเลื่อน
- ป้อนจำนวนการเลื่อน: ระบุจำนวนตำแหน่งที่ต้องการเลื่อน (1-64)
- เลือกความกว้างบิต: เลือกความกว้างเฉพาะหรือปล่อยไว้อัตโนมัติ
- เลือกการดำเนินการ: คลิกเลื่อนซ้าย เลื่อนขวา หรือคำนวณทั้งหมด
- วิเคราะห์ผลลัพธ์: ดูไดอะแกรมบิตภาพที่แสดงการเคลื่อนที่ของบิต
คำถามที่พบบ่อย
การเลื่อนบิตไปทางซ้ายคืออะไร?
การเลื่อนซ้าย (<<) จะย้ายบิตทั้งหมดไปทางซ้ายตามจำนวนตำแหน่งที่ระบุ โดยเติมศูนย์ที่ด้านขวา การเลื่อนซ้าย 1 ตำแหน่งจะเท่ากับการคูณตัวเลขด้วย 2 ตัวอย่างเช่น 5 << 2 จะเลื่อน 0101 เป็น 10100 ซึ่งเท่ากับ 20 (5 คูณด้วย 4)
การเลื่อนบิตไปทางขวาคืออะไร?
การเลื่อนขวา (>>) จะย้ายบิตทั้งหมดไปทางขวาตามจำนวนตำแหน่งที่ระบุ โดยละทิ้งบิตที่เลื่อนออกจากปลายด้านขวา การเลื่อนขวา 1 ตำแหน่งจะเท่ากับการหารตัวเลขด้วย 2 (การหารจำนวนเต็ม) ตัวอย่างเช่น 20 >> 2 จะเลื่อน 10100 เป็น 00101 ซึ่งเท่ากับ 5
การดำเนินการ NOT บิตไวส์คืออะไร?
NOT บิตไวส์ (~) จะกลับค่าทุกบิต: 0 กลายเป็น 1 และ 1 กลายเป็น 0 ผลลัพธ์ขึ้นอยู่กับความกว้างบิตที่ใช้ สำหรับตัวเลข 8 บิต NOT 5 (00000101) เท่ากับ 250 (11111010) การดำเนินการนี้เรียกอีกอย่างว่า ones complement
ทำไมต้องใช้การเลื่อนบิตแทนการคูณ?
การเลื่อนบิตมักจะเร็วกว่าการคูณเนื่องจากเป็นการดำเนินการของ CPU ที่ง่ายกว่า การเลื่อนซ้าย n ตำแหน่งเท่ากับการคูณด้วย 2^n และการเลื่อนขวา n ตำแหน่งเท่ากับการหารด้วย 2^n เทคนิคนี้มักใช้ในโค้ดที่เน้นประสิทธิภาพ
การดำเนินการที่เกี่ยวข้อง
สำหรับการดำเนินการ AND, OR และ XOR แบบบิตไวส์ โปรดไปที่ เครื่องคิดเลขบิตไวส์ ของเรา
อ้างอิงเนื้อหา หน้าหรือเครื่องมือนี้ว่า:
"เครื่องคิดเลขบิต" ที่ https://MiniWebtool.com/th// จาก MiniWebtool, https://MiniWebtool.com/
โดยทีม miniwebtool อัปเดตเมื่อ: 26 ธ.ค. 2025
คุณสามารถลองใช้ AI แก้ปัญหาคณิตศาสตร์ GPT ของเรา เพื่อแก้ไขปัญหาทางคณิตศาสตร์ของคุณผ่านคำถามและคำตอบด้วยภาษาธรรมชาติ.