Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Graphic
- Spring
- 안드로이드
- 메서드
- 에러페이지
- 생성자
- 국제화
- struts2
- Java
- OGNL
- JSP
- 어노테이션
- mybatis
- 메소드
- 예외처리
- 클래스
- oracle
- 기본
- Eclips
- layout
- 전화걸기
- HTML
- JavaScript
- AWT
- Android
- 이클립스
- paint
- 배열
- 오버로딩
- Menu
Archives
- Today
- Total
note
비트 단위 논리 연산자 본문
public class Opr09 {//비트 단위 논리 연산자
public static void main(String[] args){
int a=12; // 8+4 =2³ + 2²
// 128 64 32 16 8 4 2 1
// 0 0 0 0 1 1 0 0
//12
int b=20; // 16+4=2⁴ + 2²
// 128 64 32 16 8 4 2 1
// 0 0 0 1 0 1 0 0
// 20
int c;
c = a & b; // 비트 단위 값이 둘다 1일때만 1
// 128 64 32 16 8 4 2 1
// 0 0 0 0 1 1 0 0
// 0 0 0 1 0 1 0 0
// 0 0 0 0 0 1 0 0
// 값 4
System.out.println(a + " & "+ b + " -> " + c);
c = a | b; //비트 단위 값이 둘다 0일때만0
// 128 64 32 16 8 4 2 1
// 0 0 0 0 1 1 0 0
// 0 0 0 1 0 1 0 0
// 0 0 0 1 1 1 0 0
// 28
System.out.println(a + " | "+ b + " -> " + c);
c = a ^ b; //비트 단위 값이 두 값이 다르면1 같으면0
// 128 64 32 16 8 4 2 1
// 0 0 0 0 1 1 0 0
// 0 0 0 1 0 1 0 0
// 0 0 0 1 1 0 0 0
// 24
System.out.println(a + " ^ "+ b + " -> " + c);
c= ~a; //비트 단위 값이 1이면0으로 0이면 1로
// 128 64 32 16 8 4 2 1
// 0 0 0 0 1 1 0 0
// 1 1 1 1 0 0 1 1
// 24
// 이해 못함
System.out.println("~ "+ a + " -> " + c);
}
}
12 & 20 -> 4
12 | 20 -> 28
12 ^ 20 -> 24
~ 12 -> -13