비트 연산자는 비트에 따라 작동하고 비트 단위로 작업을 수행합니다.
C#에서 지원하는 비트 연산자는 아래 표에 나와 있습니다. 변수 A가 60이고 변수 B가 13이라고 가정합니다. -
Operator | Explanation | Example |
---|---|---|
& | Bitwise AND 연산자는 결과에 비트를 복사합니다. (두 피연산자 모두에 존재하는 경우) | (A & B) = 12, 즉 0000 1100 |
| | 비트 OR 연산자는 피연산자 중 하나에 비트가 있으면 비트를 복사합니다. | (A | B) = 61, 즉 0011 1101 |
^ | 비트 XOR 연산자는 비트를 복사합니다(한 피연산자에 설정되어 있지만 두 피연산자 모두에 설정되어 있지 않은 경우). 피연산자). | (A ^ B) = 49, 즉 0011 0001 |
~ | 비트 보수 연산자는 단항이며 비트를 "뒤집는" 효과가 있습니다. | (~A ) = 61, 이는 부호 있는 이진수이므로 1100 0011의 2의 보수입니다. |
비트 왼쪽 이동 연산자 왼쪽 피연산자의 값을 오른쪽 피연산자가 지정한 비트 수만큼 왼쪽으로 이동합니다. |
A | |
>> | 비트 오른쪽 시프트 연산자 왼쪽 피연산자의 값은 지정된 비트 수만큼 오른쪽으로 시프트됩니다. 오른쪽 피연산자로. |
A >> 2 = 15, 즉 0000 1111 |
다음 예제에서는 C#에서 비트 연산자를 구현하는 방법을 보여줍니다.
라이브 데모
using System; namespace MyApplication { class Program { static void Main(string[] args) { int a = 60; /* 60 = 0011 1100 */ int b = 13; /* 13 = 0000 1101 */ int c = 0; // Bitwise AND Operator c = a & b; /* 12 = 0000 1100 */ Console.WriteLine("Line 1 - Value of c is {0}", c ); // Bitwise OR Operator c = a | b; /* 61 = 0011 1101 */ Console.WriteLine("Line 2 - Value of c is {0}", c); // Bitwise XOR Operator c = a ^ b; /* 49 = 0011 0001 */ Console.WriteLine("Line 3 - Value of c is {0}", c); // Bitwise Complement Operator c = ~a; /*-61 = 1100 0011 */ Console.WriteLine("Line 4 - Value of c is {0}", c); // Bitwise Left Shift Operator c = a << 2; /* 240 = 1111 0000 */ Console.WriteLine("Line 5 - Value of c is {0}", c); // Bitwise Right Shift Operator c = a >> 2; /* 15 = 0000 1111 */ Console.WriteLine("Line 6 - Value of c is {0}", c); Console.ReadLine(); } } }
Line 1 - Value of c is 12 Line 2 - Value of c is 61 Line 3 - Value of c is 49 Line 4 - Value of c is -61 Line 5 - Value of c is 240 Line 6 - Value of c is 15
위 내용은 C# 비트 및 시프트 연산자의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!