'자바공부'에 해당되는 글 18건

  1. [나랑 자바공부 하자 16]비트와 관련있는 연산자들 1

[나랑 자바공부 하자 16]비트와 관련있는 연산자들

 오늘 자바공부는 바로 비트연산자 입니다1 비트와 관련있는 연산자들을 공부해 봅시다!

비트 연산자로는 &| ^ ~ 가 있어요~

하나씩 볼까요

& 비트단위로 AND 연산을 합니다 n1 & n2; 이런식

| 비트단위로 OR 연산을 합니다 n1 | n2;

^ 비트 단위로 XOR 연산을 합니다 n1^n2;

~ 피연산자의 모든 비트를 반전 시켜서 얻은 결과를 나타넵니다 ~n;

그림을 보면 좀더 쉽게 이해가 가는데요

n1 과 n2를 & 연산 and연산을 하면 두개다 1일때 1 둘중하나만 1이거나 둘다 0일때는 0을 나타냅니다.

 자바의 비트연산 진리 표 입니다.

이것은 뭐 한번 보시고 당연한 예이겟죠?!

and는 두개 모두가 1일때만 1

or은 둘중 하나라도 1이면 1

xor의 경우는 둘중 하나만 1일경우에 1을 표시

not 연산자의 경우 1이면 0을 표시 0이면 1을 표시 반대이죠~

비트연산자의 예 입니다

 

class bit

{

public static void main(String[] args)

{

int num1=5;      // 00000000 00000000 00000000 00000101

int num2=3;      // 00000000 00000000 00000000 00000011

int num3=-1;    // 11111111 11111111 11111111 11111111

 

System.out.println(num1 & num2);    // num1과num2 의 and를 계산해보면 00....00000001 이나오겠죠 그래서 값은 1

System.out.println(num1 | num2);   // num1과 num2의 or은 000.... 00000111 이 나오면 값은 7이 됩니다.

System.out.println(num1 ^ num2);  // xor 값을 계산해보면 000..... 00000110 이 되겟죠?! 그럼 출력값은 6!

System.out.println(~num3);    // not num3이니까 모든 1을 반전시키면 값은 0 이 나옵니다!

}

}

 

비트와 관련있는 연산자들 2 내일 봐욤!