디지털 코드 3월 26일
Shared on March 26, 2026
디지털 코드와 통신 오류 검출/정정 개념 정리
개요
본 강의에서는 BCD, 8421, Gray 코드 등 가중치 코드와 자기 보수 성질, 패리티 비트(짝수/홀수, 병렬), 해밍 코드를 통해 데이터 전송 중 발생할 수 있는 오류를 검출·정정하는 방법을 설명했다. 또한 ASCII, Unicode 등 문자 인코딩 체계와 한글 인코딩에 대한 개념도 다뤘다. 시험에 자주 나오는 핵심 내용과 계산 방법을 정리하였다.
핵심 개념
| 구분 | 주요 내용 |
|---|---|
| BCD (Binary-Coded Decimal) | 10진수 0 |
| 8421 코드 | BCD와 동일. 각 비트에 가중치 8,4,2,1 부여. 9를 초과 시 6을 더해 보정. |
| Gray 코드 | 인접한 코드가 한 비트만 다름. 변환: MSB는 그대로, 이후 비트는 앞 비트와 XOR. |
| 가중치/비가중치 코드 | 가중치 코드: 각 비트에 가중치가 있음(예: 8,4,2,1). 비가중치: 가중치 없음(예: Gray). |
| 자기 보수 성질 | 보수(Complement)와 원본이 서로 보수 관계가 있는지 여부. BCD는 자기 보수 없음, 8421은 있음. |
| 패리티 비트 | 짝수 패리티: 전체 1의 개수를 짝수로 만들고, 홀수 패리티: 홀수로 만든다. |
| 병렬 패리티 | 행·열별 패리티 비트를 추가해 2차원 데이터에서 오류 위치를 찾음. |
| 해밍 코드 | 8비트 데이터 + 4비트 패리티(총 12비트)로 오류 검출·정정 가능. 패리티 비트 위치는 1,2,4,8. |
| ASCII | 7비트(8비트 확장)로 영문자, 숫자, 특수기호 128개 표현. 0x30 |
| Unicode | 16비트(UTF‑16), 8비트(UTF‑8), 32비트(UTF‑32) 등으로 10만자 이상 표현. 한글은 조합형(초성·중성·종성)과 완성형. |
상세 내용
BCD / 8421 코드
- 표현법: 4비트 → 0
9. 1015 비활용. - 9 초과 처리: 6을 더해 보정(예: 8+7=15 → 6 더하면 21 → 1(보수) + 5 = 15).
- 자기 보수 성질: 없음 → 9+1=10, 8+2=10 등으로 보정 필요.
Gray 코드
- 변환법:
G[MSB] = B[MSB]G[i] = B[i] XOR B[i-1](i = 1~n-1)
- 특징: 인접한 값이 한 비트만 다름 → 전송 시 변동 최소화.
가중치 코드와 비가중치 코드
- 가중치 코드: 각 비트에 가중치(8,4,2,1 등) 부여 → 덧셈으로 값 계산.
- 비가중치 코드: 가중치 없음 → Gray 코드, 3초박 코드 등.
패리티 비트
- 짝수 패리티: 1의 개수 → 짝수.
예:1010→ 2개(짝수) → 패리티 0. - 홀수 패리티: 1의 개수 → 홀수.
예:1010→ 2개(짝수) → 패리티 1. - 병렬 패리티: 행·열별 패리티 비트 추가 → 오류 위치(행·열 번호) 파악 가능.
해밍 코드
- 구성: 8데이터 비트 + 4패리티 비트(positions 1,2,4,8).
- 패리티 계산: 각 패리티 비트는 해당 위치 비트들의 XOR.
- 오류 검출·정정: 패리티 비트 결과를 읽어 오류 비트 번호(패리티 비트 XOR 결과를 2진수로 읽음) 파악 → 해당 비트 반전.
ASCII
- 7비트(8비트 확장) 표준.
- 숫자: 0x30~0x39
- 대문자: 0x41~0x5A
- 소문자: 0x61~0x7A
- 특수문자: 0x20
0x2F, 0x3A0x40, 0x5B0x60, 0x7B0x7E.
Unicode
- UTF‑8: 가변 길이(1~4바이트).
- UTF‑16: 2바이트(플러시 페어 사용).
- UTF‑32: 고정 4바이트.
- 한글: 초성·중성·종성 조합(조합형) 또는 완성형(한글 유니코드 블록).
시험 대비 팁
- BCD/8421: 9 초과 시 6 더하기, 가중치 합 계산 숙지.
- Gray 코드: 변환 공식 기억, 역변환도 익히기.
- 패리티 비트: 짝수/홀수 계산, 병렬 패리티 행/열 번호 찾기.
- 해밍 코드: 패리티 비트 위치와 XOR 계산법, 오류 비트 번호 도출.
- ASCII: 0x30
0x39, 0x410x5A, 0x61~0x7A 범위 기억. - Unicode: 한글 조합 방식과 UTF‑8/16/32 차이 파악.
핵심: 가중치와 비가중치, 자기 보수 성질을 구분하고, 패리티와 해밍 코드를 통해 오류를 검출·정정하는 절차를 정확히 이해하는 것이 시험 대비 핵심이다.