Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Operator Bitwise dalam C#

Operator Bitwise dalam C#

WBOY
WBOYasal
2024-09-03 15:08:43616semak imbas

Operator Bitwise hanyalah operasi yang dilakukan pada tahap bit, dan C# membenarkan pelbagai operasi bitwise menggunakan operator AND, OR, NOT, dll. Operator yang biasanya digunakan untuk operasi bitwise ialah AND (&) yang mengembalikan benar apabila kedua-dua operan adalah benar, ATAU (|) yang mengembalikan benar hanya apabila operan adalah benar, Eksklusif ATAU (XOR atau ^) yang mengembalikan hasil yang setanding bergantung pada input, Shift Kiri (<<) yang digunakan untuk menggerakkan bit ke kiri, Shift Kanan (>>) yang digunakan untuk mengalihkan bit ke kanan, dan Complement (~) yang digunakan pada operan tunggal dan ia mengembalikan nilai bit pelengkap berdasarkan input.

Jenis Operator Bitwise dalam C#

Berikut ialah pelbagai jenis pengendali Bitwise yang ditakrifkan dalam C#:

  • Bitwise AND (&): Setiap bit daripada operan pertama dikaitkan dengan operan kedua. Apabila kedua-dua bit adalah 1 maka bit terhasil ialah 1 jika bukan 0.
  • Bitwise OR(|): Setiap bit daripada operan pertama dikaitkan dengan operan kedua. Jika salah satu bit adalah 1 maka bit hasil adalah 1 jika tidak 0.
  • Bitwise Exclusive OR (XOR – ^): Setiap bit daripada operan pertama adalah setanding dengan operan kedua bit berikutnya. Apabila satu bit adalah 0 dan satu lagi adalah 1 bit hasil adalah 1 jika bukan bit hasil adalah 0.
  • Anjakan Kiri Bitwise (<<): Ia mengalihkan nombor ke kiri, bergantung pada bilangan bit yang ditentukan. Sifar dilampirkan pada bit terkecil.
  • Anjakan Kanan Bitwise (>>): Ia mengalihkan nombor ke kanan, bergantung pada bilangan bit yang ditentukan. Sifar dilampirkan pada bit terkecil.
  • Bitwise Complement (~): Bitwise complement operator ialah operator unary yang beroperasi pada satu operan sahaja. Operator ~ bertukar daripada 1 kepada 0 dan daripada 0 kepada 1.

Contoh Operator Bitwise dalam C#

Artikel berikut menerangkan cara pengendali bitwise berfungsi di bawah yang dinyatakan adalah contoh pengendali bitwise dalam C#:

1. Bitwise DAN

Ia hanya memberikan True semasa menggunakan operasi AND jika kedua-dua nilai True. Operator ini boleh dilaksanakan dengan menggunakan operator ‘&’.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
byte myvarB = 20;// This binary is equivalent for 20 is 10100
long myresult = myvarA & myvarB; // The result of AND operation result is: 00000
Console.WriteLine("{0}  AND  {1} result is :{2}",myvarA,myvarB,myresult);
myvarA = 10;// This binary is equivalent for 10 is 01010
myvarB = 10;// This binary is equivalent for 10 is 01010
myresult = myvarA & myvarB; // The result of AND operation result is: 01010
Console.WriteLine("{0}  AND  {1} result is : {2}",myvarA,myvarB,myresult);
}
}

Output:

Buka editor teks dan simpan fail dengan sambungan .cs dengan nama pilihan anda. Jalankan program dengan menggunakan pengkompil c# yang sesuai dan anda akan mendapat output di bawah:

Operator Bitwise dalam C#

2. Bitwise ATAU

Ia hanya menyediakan FALSE semasa menggunakan kaedah OR jika kedua-dua nilai adalah FALSE. OR operasi adalah benar dalam semua kes lain. Operator ini boleh dilaksanakan dengan menggunakan operator ‘|’.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
byte myvarB = 20;// This binary is equivalent for 20 is 10100
long myresult = myvarA | myvarB; // The result of OR operation result is: 11110
Console.WriteLine("{0}  OR  {1} result is :{2}",myvarA,myvarB,myresult);
myvarA = 10;// This binary is equivalent for 10 is 01010
myvarB = 10;// This binary is equivalent for 10 is 01010
myresult = myvarA | myvarB; // The result of OR operation result is: 01010
Console.WriteLine("{0}  OR  {1} result is : {2}",myvarA,myvarB,myresult);
}
}

Output:

Kompil dan laksanakan kod di atas, anda akan mendapat output berikut:

Operator Bitwise dalam C#

3. Bitwise EXOR

Jika bit yang berkaitan adalah unik, maka ini memberikan 1, jika tidak 0. Operator ini boleh dilaksanakan dengan menggunakan operator ‘^’.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
int num1 = 14, num2 = 11, myresult;
myresult = num1^num2;
Console.WriteLine("{0} ^ {1} = {2}", num1, num2, myresult);
}
}

Output:

Kompil dan laksanakan kod di atas, anda akan mendapat output berikut:

Operator Bitwise dalam C#

4. Bitwise RightShift

Jika operasi RightShift dilakukan dengan nilai binari, bit akan dialihkan ke satu lokasi di sebelah kanan. Operator ini boleh dilaksanakan dengan menggunakan operator ‘>>’.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
long myresult = myvarA >> 1; // The right shift operation result is : 0101
Console.WriteLine("{0} is right shifted to 1 position result is:{1}",myvarA,myresult);
}
}

Output:

Kompil dan laksanakan kod di atas, anda akan mendapat output berikut:

Operator Bitwise dalam C#

5. Bitwise LeftShift

Jika operasi LeftShift dilakukan dengan nilai binari, bit akan dialihkan ke satu lokasi di sebelah kiri. Operator ini boleh dilaksanakan dengan menggunakan operator ‘<<’.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
long myresult = myvarA << 1; // The left shift operation result is : 10100
Console.WriteLine("{0} is left shifted to 1 position result is:{1}",myvarA,myresult);
}
}

Output:

Kompil dan laksanakan kod di atas, anda akan mendapat output berikut:

Operator Bitwise dalam C#

6. Pelengkap Bitwise

Pengendali pelengkap bitwise ditentukan oleh '~' yang merupakan operator unari yang beroperasi pada satu operan sahaja. Operator ~ menyongsangkan sedikit, iaitu menukar daripada 1 kepada 0 dan daripada 0 kepada 1.

Contoh:

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
int num = 22, num_result;
num_result = ~num;
Console.WriteLine("~{0} = {1}", num, num_result);
}
}

Output:

Kompil dan laksanakan kod di atas, anda akan mendapat output berikut:

Operator Bitwise dalam C#

Kesimpulan

Dalam artikel ini, kita telah melihat bagaimana pengendali bitwise boleh digunakan dalam C# bersama-sama dengan fungsinya. Operator ini digunakan untuk melaksanakan operasi bit demi bit pada operan, juga dipanggil nombor binari. Operator bitwise menganalisis tafsiran binari bagi fungsi dua input pada pangkalan sel demi sel. Pengendali ini digunakan terutamanya dalam susunan komunikasi di mana maklumat penting dilambangkan oleh bit individu dalam pengepala yang disambungkan kepada data.

Atas ialah kandungan terperinci Operator Bitwise dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Operator Bersyarat dalam C#Artikel seterusnya:Operator Bersyarat dalam C#