비트 단위로 독점 또는
비트 단위로 독점은 또는 어느 것이든 조금이 놓이는 경우에 진실하다, 그러나 둘 다 아닙니다이다. 뒤에 오는 쇼 비트 단위로 독점의 또는 번호 23와 12에 결과.
10111 (23)
01100 (12) Exclusive OR (XOR)
_____________________________
11011 (result = 27) |
독점에는 또는 몇몇 재미있는 재산이 있다. 0가 0에 남아 있기 때문에 당신이 제로에 그 자체로 독점 또는 수, 그것 맞추는 경우에 그들은 둘 다 놓일 수 없고 그래서 제로에 맞추고.
이것 결과로, 당신이 다른 수, 그 후에 독점 또는 다른 수를 가진 결과를 가진 독점 또는 수 다시, 결과 원래 수인 경우에. 당신은 위 보기에서 사용된 수에 이것을 시도할 수 있다.
23 XOR 12 = 27
27 XOR 12 = 23
27 XOR 23 = 12
이 특징은 부호 매김을 위해 이용될 수 있다. 뒤에 오는 프로그램은 23의 사용자가 들어간 수에 재산을 설명하기 위하여 암호화 키를 이용한다.
#include <stdio.h>
int main()
{
int num, key = 23;
printf("Enter a number: ");
scanf("%d", &num);
num ^= key;
printf("Exclusive OR with %d gives %d\n", key, num);
num ^= key;
printf("Exclusive OR with %d gives %d\n", key, num);
return 0;
}
비트 단위로 상보
비트 단위로 칭찬은 조금에 위에 또는 떨어져 비녀장을 끼우는 자기의 상보 통신수이다. 1인 경우에, 1에 놓일 0인 경우에, 0에 놓일 것이다.
#include <stdio.h>
int main()
{
int num = 0xFFFF;
printf("The compliment of %X is %X\n", num, ~num);
return 0;
}
|