엔지니어가 되고 싶은 공돌이
06. 디지털 코드 - 2(Digital Code - 2) 본문
6. 1. 해밍코드(Hamming Code)
- 해밍코드(Hamming Code): Parity Code를 응용한 것으로 한 비트에 에러가 발생하면 그 위치를 찾아 정정할 수 있도록 Nokia Bell Labs의 R.Hamming 이 개발한 것입니다.
1) Hamming Code는 원본데이터 외에 추가적으로 많은 비트가 필요하고, 2개 이상의 비트에 에러가 발생하면 정정이 불가능합니다. Parity bit(P)는 exponent of 2에 들어가고, Data(D)는 나머지 공간에 들어갑니다. Hamming Code는 Even Parity를 사용합니다.
2) (Transmission of Hammgin Code)
Bit | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Symbol | P1 | P2 | D3 | P4 | D5 | D6 | D7 | P8 | D9 |
P1 | O | O | O | O | O | ||||
P2 | O | O | O | O | |||||
P4 | O | O | O | O | |||||
P8 | O | O |
3) 위 표에서 O 친 모든 D 들은 XOR Operation을 수행합니다.
ex) P2 = D3 ⊕ D6 ⊕ D7 ⊕ D10 ⊕ D11 …
4) 전송 후 검출(Error Detection of Hammgin Code) 할 때는 Parity Bit도 포함하여 검사합니다.
ex) P2 = P2 ⊕ D3 ⊕ D6 ⊕ D7 ⊕ D10 ⊕ D11 …
5) 검사한 Parity bit를 P8P4P2P1 순으로 정렬할 때, 모든 Parity bit가 0이면 Error X , 그렇지 않으면 Error O.
6) P8P4P2P1를 Decimal Number로 바꿀 때의 값이 Error의 위치 입니다. Hamming Code는 데이터 뿐만 아니라 Parity bit에 발생한 에러도 찾아낼 수 있으며, 정정할수 있습니다.
6. 2. 문자코드(Character Code)
- ASCII Code: ANSI에서 제정한 정보 교환용 미국 표준 코드. 3 zone bit + 4 digit bit + 1 parity bit.
다양한 비텍스트적 요소를 표현할 수 없고, 미국과 일부 유럽의 문자만을 지원한다는 단점이 있습니다.
- 표준BCD(Natural BCD Code): 6bit로 한 문자를 표현하는 코드. 2 zone bit + 4 digit bit.
영어, 숫자, 일부 특수기호만 표현 가능합니다.
- EBCDIC Code: Natural BCD Code를 확장하여 만들었으며, 대형컴퓨터와 IBM 계열 컴퓨터에서 많이 사용한 코드. 4 zone bit + 4 digit bit + 1 parity bit.
- Unicode: 플랫폼, 프로그램, 언어에 상관없이 모든 문자에 대해 고유번호를 제공. 인터넷 시대의 표준 코드.
- 한글 조합형: 한글의 초성, 중성, 종성을 각각 5비트로 나타내고, MSB를 1로 하여 한글임을 표기하는 방법.
우리나라 고어까지 취급할 수 있다는 장점이 있지만, 출력할 떄는 다시 모아써야하는 단점이 있습니다.
- 한글 완성형: 가장 많이 사용하는 한글 음절을 2Byte Binary Number에 1대1 로 대응하여 표기하는 방법.
첫번째, 두번째 Byte의 MSB가 모두 1입니다. MSB를 0으로 만들면 ASCII와 코드가 중복되지 않아 처리하기 편리하다는 장점을 가집니다.
일반적으로 컴퓨터에서는 완성형을, 워드 프로세서에서는 조합형을 사용합니다.
'Electric > Digital Logic Circuit' 카테고리의 다른 글
08. 게이트의 전기적 특성(Electrical Characteristics of the Gate) (0) | 2024.07.26 |
---|---|
07. 논리게이트(Logic Gate) (0) | 2024.07.26 |
05. 디지털 코드 - 1(Digital Code - 1) (3) | 2024.07.24 |
04. 2진수 부동소수점수의 표현(Representation of Floating Point Number) (0) | 2024.07.24 |
03. 수의 체계(Number System) (0) | 2024.07.24 |