3.5 Binary Code
Code
- 유한 개의 원소로 구성된 집합의 원소들에게 서로 구분할 수 있는 유일한 수를 부여한 숫자
- Binary Code : 10진수를 2진수의 조합으로 구별할 수 있도록 조합한 부호
Code 종류
숫자 코드
- 10진수에 0과 1로 구성된 코드를 부여한 것
- 이진화 십진 코드(BCD, Binary Coded Decimal)
문자 코드
- 문자를 숫자로 표현한 것
- ASCII code, Unicode
Gray Code
- 한 숫자에서 다음 숫자로 올라갈 때 한 비트만 변함
- 즉, 연속된 코드를 비교하면 1bit만 다름
-
제어 계통에 사용
-
binary code -> gray code
-
- 상위 첫 비트는 그대로
- 나머지는 이웃하는 상위비트와 XOR 연산
gray code -> binary code
- 상위 첫 비트는 그대로
- 나머지는 0이면 상위 비트와 같게, 1이면 상위 비트의 보수
이진화 십진 코드
- 10진수 기호(0~9)를 2진수로 표현
- 모두 10개이므로 최소 4비트 필요(2^3<10<2^4)
가중치 코드
- 자리수에 가중치에 따라 값 설정
-
- BCD code(8421 code)
- 2421 code : 9의 보수로 연산
가중치가 없는 코드
- 자리수의 가중치와 무관하게 설정
-
- Excess-3 code : BCD+3 : 9의 보수로 연산
- Excess-3 gray code
Alphanumeric Codes
문자 코드
- ASCII(American Standard Code for Information Interchange) code
-
- 7bits로 문자 표현
- 128 문자(대, 소영문자, 숫자, 특수 기호 등)
- EBCDIC(extended BCD interchange code)
-
- IBM 장비의 영자숫자 코드
3.6 Error Detection Code
ERROR : 정보를 전송 시 정보가 변질되는 것
Error Detection Code
-
에러가 있는지 체크하는 코드
-
패리티 검사(parity check)
-
- 정보 외에 별도의 에러 검출용 비트(parity bit)를 포함하여 에러가 있는지 검사
- even parity / odd parity
순환 중복 검사(Cyclic redundancy checks : CRCs)
Error Correction Code
- 에러를 검출하고 정정하는 코드
- Automatic repeat request(ARQ)
- Hamming Code
- Convolutional code