비트xOR는 레지스터에서 선택한 비트를 반전시키는 데 사용될 수 있습니다(토글 또는 뒤집기라고도 함). 모든 비트는 XORing에 의해 1로 전환 될 수 있습니다. 예를 들어 비트 패턴 0010(소수점 2)을 감안할 때 두 번째 및 네 번째 위치는 두 번째 및 네 번째 위치에 1을 포함하는 비트 패턴이 있는 비트 XOR로 전환될 수 있습니다. 오른쪽 시프트. 이동할 장소 수는 연산자의 두 번째 인수로 지정됩니다. 예를 들어, 동작은 특정 비트가 설정되는지(1) 또는 clear(0)인지를 결정하는데 사용될 수 있다. 예를 들어 비트 패턴 0011(소수3)이 주어지면 두 번째 비트가 설정되는지 여부를 결정하기 위해 비트 패턴을 비트로 사용하고 두 번째 비트에만 1을 포함하는 비트 패턴을 사용합니다. 예를 들어 비트마스크 1011은 ORing FLAG_A, FLAG_B 및 FLAG_D: Bitwise 연산은 비트별 연산자의 논리적 대응, AND 및 NOT 연산자의 특성화를 나타내는 바이트 수준 연산으로 대조됩니다. 바이트 수준 연산자는 개별 비트에서 수행하는 대신 한 번에 8비트(바이트라고 함)의 문자열에서 수행됩니다. 그 이유는 바이트가 일반적으로 주소 지정 가능한 메모리의 가장 작은 단위(즉, 고유한 메모리 주소가 있는 데이터)이기 때문입니다. 비트별 NOT 또는 보완은 각 비트에 대한 논리적 부정을 수행하는 unary 작업으로 지정된 이진 값의 상호 보완을 형성합니다. 0인 비트는 1이 되고 1인 비트는 0이 됩니다.

예: 3) 비트 연산자는 논리 연산자 대신 사용해서는 안 됩니다. 논리 연산자(&, || 및 !)의 결과는 0 또는 1이지만 비트 연산자는 정수 값을 반환합니다. 또한 논리 연산자는 0이 아닌 모든 미연산생을 1로 간주합니다. 예를 들어, 다음 프로그램을 고려하면, 같은 피연산자의 결과는 다르다. 위에서 설명한 대로 (x 및 (x – 1))는 x에서 가장 오른쪽 1을 제외하고 모든 비트가 x와 같습니다. 따라서 xOR과 (x 및 (x-1))의 비트 xOR을 수행하면 가장 오른쪽 1을 반환합니다. 예제를 살펴보겠습니다. x = 10 = (1010)2 ` x & (x-1) = (1010)2 및 (1001)2 = (1000)2 x ^ (x & (x-1)) = = (1010)2 ^ (1000)2 = (0010)2 왼쪽 교대 연산자의 기호는 <<입니다.

오른쪽 오퍼랜드에 의해 표시된 위치 수에 따라 왼쪽 에 있는 각 비트를 왼쪽으로 이동합니다. 그것은 오른쪽 시프트 연산자의 반대 작동합니다. 따라서 위의 예제에서 ch << 1을 수행하 여 11001010을 가지고 있습니다. 생성된 빈 공백은 위와 같이 0으로 채워집니다. 파스칼뿐만 아니라 모든 방언 (예 : 오브젝트 파스칼 및 표준 파스칼)에서 왼쪽 및 오른쪽 교대 연산자는 각각 "shl"과 "shr"입니다. 이동할 장소 수는 두 번째 인수로 지정됩니다. 예를 들어 다음에서는 y를 왼쪽으로 두 비트로 이동한 결과를 x로 할당합니다. 예를 들어, 다음 두 가지는 동일합니다: x와 y에 대한 모든 비트 현명한 연산은 다음과 같습니다. 이 예제 프로그램에서는 위와 같이 비트 wise 작업이 수행되고 출력이 소수점 형식으로 표시됩니다. 언어의 C-제품군에는 회전 연산자가 없지만 교대 연산자에서 합성할 수 있습니다. 보안 요구 사항이 있는 소프트웨어에서 정의되지 않은 동작 및 타이밍 공격을 방지하기 위해 명령문이 잘 형성되었는지 확인하려면 주의해야 합니다.

[6] 예를 들어, n 위치로 32 비트 서명되지 않은 값 x를 회전 왼쪽 순진한 구현은 간단합니다 : 1) 그들은 널리 그래픽, 특별히 XOR (독점 OR) 작업의 영역에서 사용된다.