비트와 바이트 쉽게 이해하기! 컴퓨터가 0과 1로 계산하는 이유 (+MSB와 LSB란?)

 

 

 

비트(Bit)와 바이트(Byte)의 개념

 

1️⃣ 비트(Bit)와 바이트(Byte)의 개념

 

💡 비유: 전구와 상자

  • 비트(Bit)
    비트는 전구 하나라고 생각하면 돼.
    전구는 켜짐(1) 또는 꺼짐(0), 이렇게 두 가지 상태만 가질 수 있어.
    👉 비트 = 정보의 최소 단위 (0 또는 1)

 

  • 바이트(Byte)
    바이트는 전구 8개가 들어있는 상자야.
    전구 8개(=8비트)를 한 세트로 묶어서 우리가 1바이트라고 부르는 거지.
    이 8개의 전구를 켜고 끄는 방식에 따라 다양한 정보를 표현할 수 있어.

🔹 예시

  • 1비트 → 전구 하나: 켜짐(1) 또는 꺼짐(0)
  • 1바이트 → 전구 8개: 예) 01001101 (8개의 0과 1 조합)
단위 크기
1 bit 0 또는 1
1 byte 8 bits
1 KB 1,024 bytes
1 MB 1,024 KB

✅ 요약

  • 비트: 0과 1을 표현하는 최소 단위 (전구 1개)
  • 바이트: 8개의 비트 묶음 (전구 8개 상자)

2️⃣ 2진수, 10진수, 16진수 간의 관계

 

💡 비유: 숫자를 세는 방법이 다를 뿐!

  • 10진수(Decimal): 우리가 일상에서 쓰는 방식 (0~9)
  • 2진수(Binary): 컴퓨터가 이해하는 언어 (0과 1만 사용)
  • 16진수(Hexadecimal): 긴 2진수를 짧게 표현하기 위한 방법 (09 + AF)

🔹 예시: 숫자 60 표현하기

표현 방식 설명
10진수 60 우리가 아는 숫자 60
2진수 0011 1100 컴퓨터가 이해하는 0과 1
16진수 3C 2진수를 더 간단히 표현한 것
  • 왜 16진수에 0x를 붙일까?
    → "이건 16진수야!" 라고 표시하기 위해서야.
    예: 0x3C 는 16진수 3C라는 뜻.

🔄 변환 방법

  • 2진수 00111100 → 16진수 3C
    (4자리씩 끊어서 보면 돼: 0011 = 3, 1100 = C)

✅ 요약

  • 2진수: 컴퓨터 언어
  • 10진수: 우리가 쓰는 숫자
  • 16진수: 2진수를 짧고 보기 좋게 만든 표현

 

 

3️⃣ MSB와 LSB의 의미와 역할

 

💡 비유: 책장 읽는 방향

  • 숫자도 왼쪽에서 오른쪽으로 중요도가 달라!
    • MSB (Most Significant Bit): 가장 왼쪽 → 가장 중요한 비트
    • LSB (Least Significant Bit): 가장 오른쪽 → 가장 덜 중요한 비트

🔹 예시

  • 8비트 숫자: 1011 0101
    • MSB: 첫 번째 비트 1
    • LSB: 마지막 비트 1

왜 중요할까?

  • MSB가 크면 숫자 크기가 확 달라져.
  • 일부 연산에서는 LSB만 활용해서 빠르게 계산하기도 해.

✅ 요약

  • MSB: 숫자의 큰 자릿수 (왼쪽 끝)
  • LSB: 숫자의 작은 자릿수 (오른쪽 끝)

 

4️⃣ 부호 비트(Sign Bit)의 개념 (Signed vs Unsigned)

 

💡 비유: 온도계

  • 온도계를 보면 0도를 기준으로 +와 -가 있지?
  • 컴퓨터도 숫자에 양수/음수를 구분해야 해.
  • 그래서 맨 앞 비트(MSB)를 부호 비트로 사용해.
    • 0이면 양수
    • 1이면 음수

🔹 예시

  • 8비트 기준 (Signed)
    • 0111 1111 → +127
    • 1111 1111 → -1
  • Unsigned (부호 없음)
    그냥 전부 숫자로 사용!
    • 1111 1111 → 255

구분 범위
Signed 8bit -128 ~ +127
Unsigned 8bit 0 ~ 255

 

✅ 요약

  • 부호 비트: 숫자의 양/음을 구분하는 비트
  • Signed: 음수 포함
  • Unsigned: 양수만 표현

🎯 퀴즈 타임!

  1. 1바이트는 몇 개의 비트로 이루어져 있을까요?
  2. 10진수 45는 16진수로 무엇일까요? (힌트: 2진수로 0010 1101)
  3. Signed 8비트에서 1000 0000은 어떤 숫자를 의미할까요?

 

 

🎯 퀴즈 정답

 

1️⃣ 1바이트는 몇 개의 비트로 이루어져 있을까요?
➡️ 정답: 8비트

  • 1바이트 = 8개의 비트
  • 전구 8개가 한 상자에 담긴다고 생각하면 돼!

2️⃣ 10진수 45는 16진수로 무엇일까요? (힌트: 2진수로 0010 1101)
➡️ 정답: 0x2D

  • 2진수 0010 1101을 4자리씩 나눠서 보면:
    0010 = 2, 1101 = D
  • 그래서 16진수 = 2D
  • 16진수 표기법으로는 0x2D

3️⃣ Signed 8비트에서 1000 0000은 어떤 숫자를 의미할까요?
➡️ 정답: -128

  • Signed 방식에서는 맨 앞 비트가 1이면 음수야.
  • 1000 0000은 가장 작은 값-128을 의미해.
  • 참고로:
    • 0111 1111 → +127 (최대 양수)
    • 1000 0000 → -128 (최대 음수)

 

 

바이트 오더링과 MSB/LSB 완전 정복(예제로 배우는 빅 엔디안과 리틀 엔디안)

📚 비트와 바이트 오더링 쉽게 이해하기 – 빅 엔디안(Big-endian) vs 리틀 엔디안(Little-endian), MSB/LSB 개념까지! 1️⃣ 바이트 오더링(Byte Ordering)이란? 바이트 오더링은 컴퓨터가 여러 개의 바이트로

irobogoseo.tistory.com