Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 03. 디지털 코드. 다양한 디지털 코드를 구분하여 이해할 수 있다. 문자와 숫자를 나타내는 코드를 이해할 수 있다. 가중치 코드와 비가중치 코드를 이해하고 이를 활용할 수 있다. 에러 검출 코드를 이해하고 이를 활용할 수 있다. 01. BCD 코드와 3.

Similar presentations


Presentation on theme: "Chapter 03. 디지털 코드. 다양한 디지털 코드를 구분하여 이해할 수 있다. 문자와 숫자를 나타내는 코드를 이해할 수 있다. 가중치 코드와 비가중치 코드를 이해하고 이를 활용할 수 있다. 에러 검출 코드를 이해하고 이를 활용할 수 있다. 01. BCD 코드와 3."— Presentation transcript:

1 Chapter 03. 디지털 코드

2 다양한 디지털 코드를 구분하여 이해할 수 있다. 문자와 숫자를 나타내는 코드를 이해할 수 있다. 가중치 코드와 비가중치 코드를 이해하고 이를 활용할 수 있다. 에러 검출 코드를 이해하고 이를 활용할 수 있다. 01. BCD 코드와 3 초과 코드 02. 다양한 2 진 코드들 03. 그레이 코드 04. 에러 검출 코드 05. 영숫자 코드

3 01 BCD 코드와 3 초과 코드 BCD 코드 (Binary Coded Decimal Code : 2 진화 10 진 코드, 8421 코드 )  BCD 코드는 10 진수 0(0000) 부터 9(1001) 까지를 2 진화한 코드  표기는 2 진수이지만 의미는 10 진수  1010 부터 1111 까지 6 개는 사용하지 않음

4 01 BCD 코드와 3 초과 코드 BCD 코드의 연산  계산 결과가 BCD 코드를 벗어나는 즉, 9(1001) 를 초과하는 경우에는 계산 결과에 6(0110) 을 더해준다. 10 진 덧셈 (6+3=9)10 진 덧셈 (42+27=69) (8+7=15) 6

5 01 BCD 코드와 3 초과 코드 3 초과 코드  BCD 코드 (8421 코드 ) 로 표현된 값에 3 을 더해 준 값으로 나타내는 코드  자기 보수의 성질

6 02 다양한 2 진 코드들 가중치 코드 (Weighted Code)  그 위치에 따라 정해진 값을 갖는 코드

7 02 다양한 2 진 코드들  8421 코드 (BCD 코드 )  자기보수 성질 없음

8 02 다양한 2 진 코드들  2421 코드  자기보수 성질을 가짐

9 02 다양한 2 진 코드들  5421 코드  자기보수 성질 없음

10 02 다양한 2 진 코드들  84-2-1 코드  자기보수 성질을 가짐

11 02 다양한 2 진 코드들 비가중치코드 (non-weighted code)  각각의 위치에 해당하는 값이 없는 코드  데이터 변환과 같은 특수한 용도로 사용되기 위한 코드 ( 2-out-of-5 )

12 03 그레이 코드 그레이 코드 (Gray Code)  가중치가 없는 코드이기 때문에 연산에는 부적당하지만, 아날로그 - 디지털 변환기나 입출력 장치 코드로 주로 쓰인다.  연속되는 코드들 간에 하나의 비트만 변화하여 새로운 코드가 된다. 10 진 수 2진 코드2진 코드 그레이 코 드 10 진수 2 진 코드 그레이 코 드 0 0000 8 10001100 1 0001 9 10011101 2 00100011 10 10101111 3 00110010 11 101111101110 4 01000110 12 110010101010 5 01010111 13 11011011 6 01100101 14 11101001 7 01110100 15 11111000 이웃하는 코드간에 한 비트만 다르다.

13 03 그레이 코드 2 진 코드를 그레이 코드로 변환하는 방법 그레이 코드를 2 진 코드로 변환하는 방법 입력출력 A BF 0 0 0 11 1 01 1 0

14 03 그레이 코드 그레이 코드 입력장치 적용 예 2진코드2진코드 그레이코드그레이코드 그레이 코드는 오차가 적음 0 1 0011 0111 00100110 정상 (3) 에러 (3→7) 정상 (3) 에러 (3→4)

15 04 에러 검출 코드 1. 패리티 비트  짝수패리티 (even parity) : 데이터에서 1 의 개수를 짝수 개로 맞춤  홀수패리티 (odd parity) : 1 의 개수를 홀수 개로 맞춤  패리티 비트는 데이터 전송과정에서 에러 검사를 위한 추가 비트 패리티는 단지 에러 검출만 가능하며, 여러 비트에 에러가 발생할 경우에는 검출 이 안될 수도 있음 7 비트 ASCII 코드에 패리티 비트를 추가한 코드

16 04 에러 검출 코드 병렬 패리티 (parallel parity)  패리티를 블록 데이터에 적용해서 가로와 세로 데이터들에 대해서 패리티를 적 용하면 에러를 검출하여 그 위치를 찾아 정정할 수 있다. 10101111 0 10000011 1 01000000 1 11110000 0 10111001 1 00000111 1 11111111 0 01111000 0 10100101 0 101011110 100000111 010000001 111100000 101100011 000001111 111111110 011110000 101001010 원래 데이터 블록 에러가 발생한 블록 가로세로 모두 1 의 개수가 짝수임 가로세로 회색 부분에 1 의 개수가 홀수임 : 겹치는 부분 에러

17 04 에러 검출 코드 데이터 전송 시스템에서 패리티 비트를 사용한 에러 검출  에러를 검출하기 위하여 송신측에 패리티 발생기를 구성하고 수신측에는 패리 티 검출기를 구성하여 그 출력을 보고 에러 발생 여부를 판단 짝수 패리티 Y=0( 에러 없음 ), Y=1( 에러 발생 ) 홀수 패리티 Y=1( 에러 없음 ), Y=0( 에러 발생 )

18 04 에러 검출 코드 2. 에러 정정 코드 : 해밍코드 (Hamming Code)  에러를 정정할 수 있는 코드  추가적으로 많은 비트가 필요하므로 많은 양의 데이터 전달이 필요  데이터 비트와 패리티 비트와의 관계  p=4 일 때, 2 4-1 – 4 + 1 ≤ d ≤2 4 – 4 – 1 이므로 5 ≤ d ≤ 11 이다.  따라서 데이터 비트수가 5 개 이상 11 개 이하일 때 패리티는 4 개가 필요하다.  패리티 비트의 위치는 앞에서 부터 2 0, 2 1, 2 2, 2 3, 2 4, … 번째, 즉 1, 2, 4, 8, 16, … 번 째이다.  데이터 비트는 나머지 위치에 순서대로 들어간다. p 는 패리티 비트의 수, d 는 데이터 비트의 수,

19 04 에러 검출 코드  해밍코드에서는 짝수 패리티를 사용 비트 위치 123456789101112 기호 P1P1 P2P2 D3D3 P4P4 D5D5 D6D6 D7D7 P8P8 D9D9 D 10 D 11 D 12 P 1 영역  P 2 영역  P 4 영역  P 8 영역 

20 04 에러 검출 코드 8 비트 데이터의 에러 정정 코드  For Example P1P1 P2P2 D3D3 P4P4 D5D5 D6D6 D7D7 P8P8 D9D9 D 10 D 11 D 12 00101110

21 04 에러 검출 코드 해밍코드에서 패리티 비트 생성 과정 비트위치 123456789101112 기호 P1P1 P2P2 D3D3 P4P4 D5D5 D6D6 D7D7 P8P8 D9D9 D 10 D 11 D 12 원본 데이터 00101110 P 1 영역 000011 P 2 영역 101011 P 4 영역 10100 P 8 영역 11110 생성된 코드 010101011110 생성된 패리티

22 04 에러 검출 코드 해밍코드에서 패리티 비트 검사 과정 전송된 데이터 : 010111011110  패리티들을 포함하여 검사  검사된 패리티를 P 8 P 4 P 2 P 1 순서대로 정렬  모든 패리티가 0 이면 에러 없음  하나라도 1 이 있으면 에러 발생 : 결과가 0101 이므로 에러 있음  0101 을 10 진수로 바꾸면 5 이며, 수신된 데이터에서 앞에서 5 번째 비트 010111011110 에 에러가 발생한 것이므로 010101011110 으로 바꾸어 주면 에러가 정정된다. P1P1 P2P2 D3D3 P4P4 D5D5 D6D6 D7D7 P8P8 D9D9 D 10 D 11 D 12 010111011110

23 04 에러 검출 코드 해밍코드에서 에러가 발생한 경우 교정 비트위치 12345678910 1112 기호 P1P1 P2P2 D3D3 P4P4 D5D5 D6D6 D7D7 P8P8 D9D9 D 10 D 11 D 12 Error 해밍코드 0101110111 10 P 1 계산 100101 1 P 2 계산 010101 1 P 4 계산 11110 0 P 8 계산 0111 10 P 8 P 4 P 2 P 1 =0101= 5 : 5 번째 비트에 에러 발생, 1 → 0 으로 교정

24 05 영숫자 코드 1. ASCII (American Standard Code for Information Interchange) 코드  미국 국립 표준 연구소 (ANSI) 가 제정한 정보 교환용 미국 표준 코드  128 가지의 문자를 표현 가능 ASCII 코드의 구성 parityzone bitdigit bit 76543210 C 100 영문자 A~O(0001~1111) 101 영문자 P~Z(0000~1010) 011 숫자 0~9(0000~1001)

25 05 영숫자 코드 표준 ASCII 코드표 0123456789ABCDEF 0 NULSOHSTXETXEOTENQACKBELBSTABLFVTFFCRSOSI 1 DLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUS 2 !"#$%&'()*+,-./ 3 0123456789:;=>? 4 @ABCDEFGHIJKLMNO 5 PQRSTUVWXYZ[\]^_ 6 `abcdefghijk ㅣ mno 7 pqrstuvwxyz{|}~DEL

26 05 영숫자 코드 확장 ASCII 코드표 0123456789ABCDEF 8ÇüéâäàåçêëèïîìÄÅ 9ÉæÆôöòûùÿÖÜ¢£¥Ptf AáíóúñѪº¿ 「」 ½¼¡«» B░▒▓│┤╡╢╖╕╣║╗╝╜╛┐ C└┴┬├─┼╞╟╚╔╩╦╠═╬╧ D╨╤╥╙╘╒╓╫╪┘┌ ▮ ▄▌▐▀ EαβΓπ∑σμτΦΘΩδ∞ ∅ ε∩ F≡±≥≤⌠⌡÷≈ ◦ ∙√ⁿ² ■

27 05 영숫자 코드 2. 표준 BCD 코드  6 비트로 하나의 문자를 표현  최대 64 문자까지 표현 가능한 코드 parityzone bitdigit bit 6543210 C 11 영문자 A~I(0001~1001) 10 영문자 J~R(0001~1001) 01 영문자 S~Z(0010~1001) 00 숫자 0~9(0001~1010) 혼용특수문자 및 기타문자 코드의 구성

28 05 영숫자 코드 표준 BCD 코드표 문자 C ZZ8421 문자 C ZZ8421 문자 C ZZ8421 문자 C ZZ8421 문자 C ZZ8421 ABCDEFGHIABCDEFGHI 0 110001 0 110010 1 110011 0 110100 1 110101 1 110110 0 110111 0 111000 1 111001 JKLMNOPQRJKLMNOPQR 1 100001 1 100010 0 100011 1 100100 0 100101 0 100110 1 100111 1 101000 0 101001 STUVWXYZSTUVWXYZ 1 010010 0 010011 1 010100 0 010101 0 010110 1 010111 1 011000 0 011001 12345678901234567890 0 000001 0 000010 1 000011 0 000100 1 000101 1 000110 0 000111 0 001000 1 001001 1 001010 =>+,)%?-@$=>+,)%?-@$ 0 001011 1 001100 0 010000 1 011011 0 011100 1 011101 0 011111 1 100001 1 111010 1 111111

29 05 영숫자 코드 3. EBCDIC(Extended Binary Coded Decimal Interchange Code) 코드  대형 컴퓨터와 IBM 계열 컴퓨터에서 많이 사용되고 있는 8 비트 코드 (IBM 에서 개발 )  256 종류의 문자 코드를 표현할 수 있는 영숫자 코드 b9b9 b 8 b 7 b 6 b 5 b 4 b 3 b 2 b 1 패리티존 (zone) 디지트 (digit) 144 b 8 b 7 b 6 b 5 0 통신제어문자 0 1 특수문자 1 0 소문자 0 a ~i 0 1j~r 1 0s~z 1 대문자 / 숫자 0 A~I 0 1J~R 1 0S~Z 1 0~9 코드의 구성

30 05 영숫자 코드 EBCDIC 코드표 16 진 0123456789ABCDEF 2진2진 0000000100100011010001010110011110001001101010111100110111101111 00000NULSOHSTXETXHTDELVTFFCRSOSI 10001DLEBSCANEMIFSIGSIRSIUS 20010LFETBESCENQACKBEL 30011SYNEOTNAKSUB 40100space[.(+| 50101&!$*)^ 60110-/|,%_>? 70111`:#@‘=" 81000abcdefghi 91001jklmnopqr A1010~stuvwxyz B1011 C1100{ABCDEFGHI D1101}JKLMNOPQR E1110\STUVWXYZ F11110123456789

31 05 영숫자 코드 4. 유니코드 (Unicode)  ASCII 코드의 한계성을 극복하기 위하여 개발된 인터넷 시대의 표준  유니코드 컨소시엄 (IBM, Novell, Microsoft, DEC, Apple 등 ) 에 의해서 32(UTF-32), 16(UTF-16), 8bit(UTF-8) 의 세 가지 기본 코드  미국, 유럽, 동아시아, 아프리카, 아시아 태평양 지역 등의 주요 언어들에 적용될 수 있다.  유니코드는 유럽, 중동, 아시아 등 거의 대부분의 문자를 포함하고 있으며, 10 만 개 이상의 문자로 구성되어 있다.  특히 아시아의 중국, 일본, 한국, 타이완, 베트남, 싱가포르에서 사용하는 표의 문 자 ( 한자 ) 70,207 개를 나타낼 수 있다.  구두표시, 수학기호, 전문기호, 기하학적 모양, 딩벳 기호 등을 포함  앞으로도 계속해서 산업계의 요구나 새로운 문자들을 추가하여 나갈 것이다.

32 05 영숫자 코드 5. 한글코드  한글은 ASCII 코드를 기반으로 16 비트를 사용하여 하나의 문자를 표현  조합형과 완성형으로 분류 조합형조합형 조합형으로 표현된 한글은 때에 따라서 다른 응용프로그램에서는 사용할 수 없는 문자들이 많다. 조합형은 자음과 모음으로 조합 가능한 모든 한글을 사용할 수 있으며, 심지어 우리나라 고어 ( 古語 ) 까지 취급할 수 있는 장점이 있으나, 출력 시 다시 모아 써야 하는 불편이 있다는 것이 단점이다. 완성형완성형 1987 년 정부가 한국표준으로 정한 것으로 가장 많이 사용되는 한글 음절을 2 바이트의 2 진수와 1 대 1 로 대응하여 표현하는 방법


Download ppt "Chapter 03. 디지털 코드. 다양한 디지털 코드를 구분하여 이해할 수 있다. 문자와 숫자를 나타내는 코드를 이해할 수 있다. 가중치 코드와 비가중치 코드를 이해하고 이를 활용할 수 있다. 에러 검출 코드를 이해하고 이를 활용할 수 있다. 01. BCD 코드와 3."

Similar presentations


Ads by Google