프로그래밍/JAVA
4. 자바 자료형과 10진수와 2진수의 차이
설매향
2025. 4. 15. 10:52
반응형
프로그래밍을 처음 접하면 가장 먼저 만나게 되는 개념 중 하나가 자료형과 진법입니다.
이번 포스팅에서는 자바의 기본적인 자료형들과 함께
10진수와 2진수의 차이점, 그리고 왜 이걸 이해하는 게 중요한지 쉽게 정리해보겠습니다.
1️⃣ 자바의 기본 자료형
자바는 정수, 실수, 문자 등을 저장하기 위해 다양한 기본 자료형을 제공합니다.
자료형 | 크기 | 저장 범위 | 예시 |
byte | 1바이트 (8비트) | -128 ~ 127 | byte a = 100; |
short | 2바이트 (16비트) | -32,768 ~ 32,767 | short s = 30000; |
int | 4바이트 (32비트) | 약 ±21억 | int x = 123456; |
long | 8바이트 (64비트) | 아주 큰 수 | long l = 123456789L; |
float | 4바이트 | 소수점 표현 (단정도) | float f = 3.14f; |
double | 8바이트 | 소수점 표현 (배정도) | double d = 3.141592; |
char | 2바이트 | 유니코드 문자 | char c = 'A'; |
boolean | 1비트처럼 취급 | true or false | boolean flag = true; |
👉 참고 : 대부분의 정수 연산은 int 를 기본으로 처리합니다.
2️⃣ 컴퓨터는 숫자를 어떻게 저장할까?
사람은 보통 숫자를 10진수로 계산하지만,
컴퓨터는 모든 숫자를 2진수로 처리합니다.
표현 방식 | 숫자 5 | 숫자 10 |
10진수 | 5 | 10 |
2진수 | 101 | 1010 |
3️⃣ 비트와 바이트란?
단위 | 설명 |
1비트 (bit) | 0 또는 1 하나 |
1바이트 (byte) | 8비트 |
int (4바이트) | 32비트 → 총 2³²개의 값을 표현 가능 |
char (2바이트) | 문자 하나 저장 (유니코드 기반) |
4️⃣ 출력 예제: 숫자의 2진수 보기
public class BinaryDemo {
public static void main(String[] args) {
int number = 10;
System.out.println("10진수: " + number);
System.out.println("2진수: " + Integer.toBinaryString(number));
}
}
실행 결과:
10진수: 10
2진수: 1010
👉 Integer.toBinaryString(숫자) 를 쓰면 2진수 문자열을 출력할 수 있습니다.
5️⃣ 왜 2진수를 이해해야 하나요?
이유 | 설명 |
메모리 최적화 | 비트 단위로 얼마나 많은 값을 저장할 수 있는지 이해해야 함 |
연산 제어 | 비트 연산, 시프트 연산 등을 다루려면 2진수 개념 필수 |
디버깅 & 시스템 이해 | 특정 플래그 설정, 상태 체크 등에 2진수 사용 많음 |
✅ 마무리 정리!
자바는 크기와 목적에 맞게 다양한 자료형을 제공한다.
컴퓨터는 2진수 기반으로 동작하며, 이를 이해하면 더 효율적인 코딩이 가능하다.
Integer.toBinaryString() 을 이용하면 쉽게 2진수로 변환할 수 있다.