티스토리 뷰

[주제]

- 비트 연산의 기호와 처리 결과



[중요]

1. AND(&): 비교 값 둘다 '1'이면 1, 아니면 '0'

2. OR(|): 비교 값 둘 중 하나라도 '1'이면 1, 아니면 '0'

3. XOR(^): 비교 값 둘 중 하나라도 '1'이면 1, 둘 다 '1' 또는 '0'이면 '0'

4. NOT(~): 0 ↔ 1 교환

5. 왼쪽 쉬프트(<<): 10진수를 기준으로 1회당 '*2' 연산

6. 오른쪽 쉬프트(>>): 10진수를 기준으로 1회당 '/2' 연산


[소스 코딩]

package bitClass;
 
class bitClass {
    public static void main(String[] args) {
//      [연산의 종류]
 
        byte b;
 
//      1. AND연산    : &
//      같은 위치의 값이 둘 다 1이면 1, 아니면 0
        b = 0x57 & 0x41;
 
        System.out.println("b = " + b);
 
//      2. OR연산        : |
//      같은 위치의 값이 둘 중 하나라도 1이면 1, 아니면 0
        b = 0x57 | 0x41;
 
        System.out.println("b = " + b);
 
//      3. XOR연산    : ^
//      같은 위치의 값이 둘 다 1 또는 0이면 0, 하나라도 다르면 1
        b = 0x57 ^ 0x41;
 
        System.out.println("b = " + b);
 
//      4. NOT연산    : ~  ※ 반전: 0 → 1, 1 → 0
        b = ~0x57;
 
        System.out.println("b = " + b);
 
//      5. 왼쪽 쉬프트    : <<
//      오른쪽에 새로운 비트 값은 0으로 채워짐
//      쉬프트 1회당 현재 값의 '*2' 연산 처리가 된 값을 가짐  ※ 10진수 기준
        int n;
        n = 0x05;
        System.out.println("n = " + n);
 
        n = n << 1;        // == n * 2
        System.out.println("n = " + n);
 
        n = n << 1;        // == n * 2 * 2
        System.out.println("n = " + n);
 
//      6. 오른쪽 쉬프트    : >>
//      왼쪽에 새로운 비트 값은 0으로 채워짐
//      쉬프트 1회당 현재 값의 '/2' 연산 처리가 된 값을 가짐  ※ 10진수 기준
 
        n = n >> 1;
        System.out.println("n = " + n);
 
        n = n >> 2;
        System.out.println("n = " + n);
 
//      7. 쉬프트        : >>>
//      '>>'와 다른점은 부호비트를 무시
        n = 0x05;
        System.out.println("n = " + n);
 
        n = n >>> 1;
        System.out.println("n = " + n);
 
        n = 0x01;
        System.out.println(n);
        n = n << 5;
        System.out.println(n);
    }
}
cs



■ 실행결과


'프로그래밍 언어 > Java(연습)' 카테고리의 다른 글

반복문 for  (0) 2016.04.22
논리 연산  (0) 2016.04.21
랜덤 클래스  (0) 2016.04.21
사칙연산, 증가/감소 연산  (0) 2016.04.20
입력  (0) 2016.04.20
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함