| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| Number1 | number | ตัวเลขตัวแรก (เช่น ค่า flags เดิม) |
| Number2 | number | ตัวเลขตัวที่สอง (เช่น mask ของแฟลกที่ต้องการสลับ) |
BITXOR ใช้คำนวณ XOR แบบบิตระหว่างตัวเลขสองค่า (bitwise XOR) ซึ่งจะให้บิตเป็น 1 เมื่อบิตของ Number1 และ Number2 “ต่างกัน” เหมาะกับงานที่ต้องการสลับแฟลก (toggle) เช่น เปิดถ้ายังไม่เปิด หรือปิดถ้าเปิดอยู่
เปิดถ้ายังไม่เปิด หรือปิดถ้าเปิดอยู่
คืนบิตที่ต่างกันเพื่อใช้วิเคราะห์
ถ้าแฟลก 4 เปิดอยู่จะถูกปิด และถ้าปิดอยู่จะถูกเปิด
ใช้ดูความแตกต่างของสอง bitmask โดยผลลัพธ์เป็นบิตที่ไม่เหมือนกัน
ค่า 9 คือ mask ที่รวมแฟลก 1 และ 8 เมื่อ XOR จะสลับทั้งสองบิตพร้อมกัน
เด่นเรื่องการสลับแฟลก (toggle) เพราะ XOR จะเปลี่ยนสถานะของบิตที่ระบุใน mask เสมอ
BITOR ใช้เปิดบิต (รวมแฟลก) ส่วน BITXOR ใช้สลับบิต (เปิด/ปิดสลับกัน)
ฟังก์ชันที่ผู้เขียนโยงไว้กับ BITXOR จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
BITAND คืนผลลัพธ์ของการทำ AND แบบบิตระหว่าง Number1 และ Number2 เหมาะกับการตรวจ bit flags/bitmask เพื่อเช็กสถานะที่ถูกเก็บในตัวเลขเดียว
BITOR คืนผลลัพธ์ของ OR แบบบิตระหว่าง Number1 และ Number2 เหมาะกับการรวม bit flags เพื่อสร้างค่า bitmask ใหม่
OR ตรวจสอบเงื่อนไขตรรกะ 2 ตัว และคืน TRUE เมื่อมีเงื่อนไขใดเงื่อนไขหนึ่งเป็น TRUE เหมาะกับการทำเงื่อนไขแบบ "อย่างน้อยหนึ่งข้อ" และนิยมเขียนด้วยตัวดำเนินการ || ในงานจริง
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่