Computer >> Máy Tính >  >> Lập trình >> C#

Toán tử bitwise trong C # là gì?

Toán tử bitwise hoạt động trên các bit và thực hiện hoạt động từng bit.

Sau đây là các toán tử Bitwise.

Toán tử Mô tả Ví dụ
& Toán tử VÀ nhị phân sao chép một bit vào kết quả nếu nó tồn tại trong cả hai toán hạng. (A &B) =12, là 0000 1100
| Toán tử HOẶC nhị phân sao chép một chút nếu nó tồn tại trong một trong hai toán hạng. (A | B) =61, là 0011 1101
^ Toán tử XOR nhị phân sao chép bit nếu nó được đặt trong một toán hạng chứ không phải cả hai. (A ^ B) =49, là 0011 0001
~ Toán tử bổ sung số nhị phân là một ngôi và có tác dụng 'lật' các bit. (~ A) =61, là 1100 0011 trong phần bù của 2 do một số nhị phân có dấu.
<< Toán tử Dịch chuyển Trái Nhị phân. Giá trị toán hạng bên trái được di chuyển sang trái theo số bit được chỉ định bởi toán hạng bên phải. A <<2 =240, là 1111 0000
>> Toán tử Shift phải nhị phân. Giá trị toán hạng bên trái được di chuyển sang phải theo số bit được chỉ định bởi toán hạng bên phải A>> 2 =15, là 0000 1111

Sau đây là một ví dụ cho thấy cách làm việc với các toán tử bitwise trong C #.

Ví dụ

using System;
namespace Demo {
   class Program {
      static void Main(string[] args) {
         int a = 60; /* 60 = 0011 1100 */
         int b = 13; /* 13 = 0000 1101 */
         int c = 0;
         c = a & b; /* 12 = 0000 1100 */
         Console.WriteLine("Value of c is {0}", c );
         c = a | b; /* 61 = 0011 1101 */
         Console.WriteLine("Value of c is {0}", c);
         c = a ^ b; /* 49 = 0011 0001 */
         Console.WriteLine("Value of c is {0}", c);
         c = ~a; /*-61 = 1100 0011 */
         Console.WriteLine("Value of c is {0}", c);
         c = a << 2; /* 240 = 1111 0000 */
         Console.WriteLine("Value of c is {0}", c);
         c = a >> 2; /* 15 = 0000 1111 */
         Console.WriteLine("Value of c is {0}", c);
         Console.ReadLine();
      }
   }
}

Đầu ra

Value of c is 12
Value of c is 61
Value of c is 49
Value of c is -61
Value of c is 240
Value of c is 15