Memahami Operator "&^" dalam Go
Dalam Go, pengendali "&^" melakukan operasi AND bitwise dengan duanya operan, diikuti dengan operasi NOT bitwise pada hasilnya. Dalam erti kata lain, ia menggunakan bitmask pada operan pertama, mengosongkan bit tertentu berdasarkan bit yang sepadan dalam operan kedua.
C Equivalent
Dalam C, bersamaan dengan "&^" ialah ungkapan "x & ~y". Di sini, "&" melakukan operasi bitwise AND, manakala "~" ialah pengendali bitwise NOT.
Menggunakan "&^" untuk Kosongkan Bit
Pertimbangkan untuk Pergi ungkapan "x &^ y". Ungkapan ini mula-mula mengira "x & y," yang melakukan operasi AND bitwise pada setiap bit "x" dan "y." Hasilnya ialah bitmask baharu di mana setiap bit yang ditetapkan dalam "y" dikosongkan dalam "x."
Contohnya:
x = 0b1101 y = 0b1011 x & y = 0b1001
Operasi "~y" kemudian menafikan setiap bit. sedikit "y", menghasilkan:
~y = 0b0100
Akhir sekali, pengendali "&" dilakukan semula, kali ini antara "x & y" dan "~y":
(x & y) & ~y = 0b1001 & 0b0100 = 0b1000
Aplikasi "&^"
Operator "&^" digunakan dalam pelbagai senario, termasuk:
Atas ialah kandungan terperinci Apakah Yang Dilakukan Operator '&^' Go, dan Bagaimana Ia Berbanding dengan C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!