본문 바로가기
CS

정수의 표현

by L_SU 2025. 6. 30.

1️⃣ 부호와 절댓값(Sign and Magnitude)

  • 첫 번째 비트를 부호 비트로 사용 (0: 양수, 1: 음수)
  • 나머지 비트는 절댓값을 2진수로 표현

예시 (8비트 기준):

정수                                                   부호와 절댓값

 

+5 00000101
-5 10000101
 

🔸 단점: 0을 +0, -0 두 가지로 표현하게 됨 → 연산 불편


2️⃣ 1의 보수(One's Complement)

  • 양수는 일반 이진수 사용
  • 음수는 모든 비트를 반전 (0 ↔ 1)

예시:

정수                                                  1의 보수 표현

 

+5 00000101
-5 11111010
 

🔸 단점: 여전히 0이 +0, -0 두 가지 존재
🔸 덧셈 시 자리 올림이 있으면 +1 해야 함 (end-around carry)


3️⃣ 2의 보수(Two's Complement)

  • 음수를 표현할 때 1의 보수에 1을 더함
  • 덧셈, 뺄셈 연산을 같은 회로로 처리 가능

예시:

정수                                                  2의 보수 표현

 

+5 00000101
-5 11111011
 

✅ 장점:

  • 0은 하나만 존재
  • 하드웨어 연산이 간단해짐
    → 가장 널리 사용되는 방식

4️⃣ 정수 연산 방법

➕ 덧셈

2의 보수 방식에서는 음수도 덧셈으로 처리 가능!

  5 + (-3)
= 00000101 + 11111101
= 00000010  → 2

 

➖ 뺄셈

뺄셈도 덧셈으로 변환하여 처리 (a - b → a + (-b))

  5 - 3
= 00000101 + 11111101
= 00000010  → 2

5️⃣ 곱셈과 나눗셈

  • 곱셈: 시프트와 덧셈을 조합하여 구현
  • 나눗셈: 반복적인 뺄셈과 시프트로 처리
  • 정수 범위를 초과하지 않도록 주의

6️⃣ 고정소수점 표현(Fixed-point)

  • 정수와 소수점을 고정된 위치에 두고 표현
  • 예: 소수점 아래 2자리로 고정하면 1.75 → 175 (100배)
  • 실수 표현이 필요하지만 부동소수점 사용이 부담스러울 때 사용

🔸 장점: 빠른 연산, 간단한 구조
🔸 단점: 표현 범위 제한, 정밀도 손실

 

🧠 정리 표

표현 방식               0 표현       음수 표현 방법                   장점                                                     단점

 

부호와 절댓값 +0, -0 부호 비트 + 이진수 구조 간단 덧셈, 뺄셈 연산 복잡
1의 보수 +0, -0 비트 반전 음수 연산 가능 자리올림 추가 처리 필요
2의 보수 0 하나 비트 반전 + 1 연산 효율 최고 (기계 구현 용이) 최대값 범위 1 줄어듦
고정소수점 - 정수 표현에 소수 포함 실수처럼 표현 가능 소수점 위치 고정, 정밀도↓

'CS' 카테고리의 다른 글

실수 표현  (0) 2025.07.03
문자 표현  (0) 2025.06.28
정보의 표현  (0) 2025.06.28
진법 변환  (0) 2025.06.28
수의 체계  (0) 2025.06.25