토픽 4 / 111·전체 구조 (Overview)
보수 연산 (Complement Arithmetic)
보수 연산 (Complement Arithmetic)
음수를 표현하고 뺄셈을 덧셈으로 변환하기 위한 수 체계로, 1의 보수와 2의 보수가 있으며 현대 컴퓨터는 2의 보수를 표준으로 사용
목적: 음수 표현, 뺄셈→덧셈 변환, 단순한 산술 회로 설계
특징: 부호 비트 사용, 덧셈기로 뺄셈 수행, 오버플로우 검출 가능
1의 보수(1's Complement)
- •방법: 모든 비트 반전 (0→1, 1→0)
- •예시: +5(0101) → -5(1010) [4비트]
- •문제: 0이 두 개 존재(+0: 0000, -0: 1111), 순환 자리올림(End-Around Carry) 필요
2의 보수(2's Complement)
- •방법: 1의 보수 + 1, 또는 우측부터 첫 번째 1까지 유지 후 나머지 반전
- •예시: +5(0101) → -5(1011) [4비트]
- •장점: 0이 유일(0000), 덧셈기만으로 뺄셈 가능, 현대 표준
- •표현 범위(n비트): -2^(n-1) ~ +2^(n-1)-1
부호 크기(Sign-Magnitude): 최상위 비트=부호, 나머지=크기, 0이 두 개, 덧셈 복잡
오버플로우 검출: 양수+양수=음수 또는 음수+음수=양수일 때 오버플로우
장점: 간단한 ALU 설계, 뺄셈이 덧셈으로 통합
단점: 오버플로우 주의, 비트 확장 시 부호 확장 필요
적용사례: 모든 현대 프로세서(2의 보수), 정수 연산
비교: 2의보수(0유일/표준) vs 1의보수(0중복/순환자리올림) vs 부호크기(직관적/복잡)
연관: ALU, 정수 표현, 오버플로우, 부호 확장