집 >백엔드 개발 >C#.Net 튜토리얼 >C#의 비트 연산자
비트 연산자는 비트 수준에서 수행되는 연산일 뿐이며 C#에서는 AND, OR, NOT 등의 연산자를 사용하여 다양한 비트 연산을 허용합니다. 일반적으로 비트 연산에 사용되는 연산자는 true를 반환하는 AND(&)입니다. 두 피연산자가 모두 참인 경우에만 참을 반환하는 OR(|) 입력에 따라 비교 가능한 결과를 반환하는 배타적 OR(XOR 또는 ^) 입력값을 이동하는 데 사용되는 왼쪽 시프트(<<) 비트를 왼쪽으로, 오른쪽 시프트(>>)는 비트를 오른쪽으로 이동하는 데 사용되며 보수(~)는 단일 피연산자에 사용되며 입력에 따라 보수 비트 값을 반환합니다.
다음은 C#에 정의된 다양한 유형의 Bitwise 연산자입니다.
다음 문서에서는 C#의 비트 연산자의 예에 언급된 비트 연산자의 작동 방식을 설명합니다.
AND 연산을 사용하는 동안 두 값이 모두 True인 경우에만 True를 제공합니다. 이 연산자는 '&' 연산자를 사용하여 구현할 수 있습니다.
예:
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); } }
출력:
텍스트 편집기를 열고 원하는 이름으로 확장자가 .cs인 파일을 저장합니다. 적합한 C# 컴파일러를 사용하여 프로그램을 실행하면 다음과 같은 출력이 표시됩니다.
OR 방식을 사용하는 동안 두 값이 모두 FALSE인 경우에만 FALSE를 제공합니다. OR 연산은 다른 모든 경우에 적용됩니다. 이 연산자는 '|' 연산자를 사용하여 구현할 수 있습니다.
예:
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); } }
출력:
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나타납니다.
관련 비트가 고유하면 1이 되고 그렇지 않으면 0이 됩니다. 이 연산자는 '^' 연산자를 사용하여 구현할 수 있습니다.
예:
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); } }
출력:
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나타납니다.
RightShift 연산이 이진수 값으로 수행되면 비트가 오른쪽 한 위치로 이동됩니다. 이 연산자는 '>>' 연산자를 사용하여 구현할 수 있습니다.
예:
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); } }
출력:
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나타납니다.
LeftShift 연산이 이진수 값으로 수행되면 비트가 왼쪽의 한 위치로 이동됩니다. 이 연산자는 '<<' 연산자를 사용하여 구현할 수 있습니다.
예:
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); } }
출력:
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나타납니다.
비트 보수 연산자는 하나의 피연산자에만 작동하는 단항 연산자인 '~'로 지정됩니다. ~ 연산자는 비트를 반전합니다. 즉, 1에서 0으로, 0에서 1로 전환합니다.
예:
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); } }
출력:
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나타납니다.
이 기사에서는 C#에서 비트 연산자를 해당 기능과 함께 사용하는 방법을 살펴보았습니다. 이러한 연산자는 이진수라고도 하는 피연산자에 대해 비트 단위 연산을 수행하는 데 사용됩니다. 비트 연산자는 셀 단위로 두 입력의 함수에 대한 이진 해석을 분석합니다. 이러한 연산자는 중요한 정보가 데이터에 연결된 헤더의 개별 비트로 기호화되는 통신 스택에 주로 사용됩니다.
위 내용은 C#의 비트 연산자의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!