Chapter 03 디지털 코드.

Slides:



Advertisements
Similar presentations
10-7 부동소수점 (Floating-Point) 계산  컴퓨터에서 숫자를 표기하는 방법  가수 (Fraction) : 부호화된 고정소수점 숫자 지수 (Exponent) : 소수점의 위치를 표시 ( 예 )10 진수 를 표기하면 Fraction Exponent.
Advertisements

Chapter 03. 디지털 코드. 다양한 디지털 코드를 구분하여 이해할 수 있다. 문자와 숫자를 나타내는 코드를 이해할 수 있다. 가중치 코드와 비가중치 코드를 이해하고 이를 활용할 수 있다. 에러 검출 코드를 이해하고 이를 활용할 수 있다. 01. BCD 코드와 3.
Chapter 04 컴퓨터에서 데이터 표현. 04 컴퓨터에서 데이터 표현 2 인코딩 (encoding) – 현실세계의 정보를 컴퓨터 내부에서 처리할 수 있는 이진수로 변환하는 방법 1. 컴퓨터 속에서 데이터 표현 원리 0 - 아빠 1 - 엄마 00 - 아빠 01 - 엄마.
자료의 표현 1. 문자 자료의 표현 2. 멀티미디어 자료의 표현. 컴퓨터일반자료의 표현 학습 목표 ◆ 컴퓨터에서 사용하는 문자 데이터의 표현 방법을 이해할 수 있다. ◆ 컴퓨터에서 사용하는 멀티미디어 데 이터의 표현 방법을 설명할 수 있다.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
Ⅱ. 정보의 표현과 관리. Ⅱ. 정보의 표현과 관리 2. 자료의 표현과 연산 1. 정보와 자료 구조.
제 2 장 컴퓨터의 자료 표현  2.1 자료 표현 단위  2.2 자료 표현 방법  2.3 수치형 자료 표현  2.4 비수치형 자료 표현.
문자코드 1 박 2 일 (4 조 ) 이경도 이준집 이수연 엄태규. 문자코드란 ? 문자나 기호를 컴퓨터로 다루기 위하여, 문자나 기호 하나하나에 할당 시키는 고유의 숫자를 말하는 것이다.
컴퓨터와 인터넷.
조원 : 김영재(코딩) 이지영(스토리) 임병욱(그래픽)
Part TCP / IP(계속) 3. IP 주소 4. IP 라우팅 5. 응용 프로토콜.
Hamming Code 이근용. 2 Error Control Error Detection Parity Check CRC Check Error Correction Hamming Code.
Prof. Seewhy Lee Presents
                                  8장 A/D 변환기 A/D Converter? A/D Converter 원리 Bit 수와 최대범위 및 해상도와의 관계.
                                  7장 D/A 변환기 D/A Converter? D/A Converter 원리 Bit 수와 최대범위 및 해상도와의 관계.
Excel 일차 강사 : 박영민.
제4장 조합논리회로 내용 4.1 조합논리회로 설계 과정 4.2 산술회로 : 가산기(adder)/ 감산기(subtractor)
3 디지털 코드 IT CookBook, 디지털 논리회로.
데이터의 표현 (data Representation)
데이터의 표현 컴퓨터 속에서 데이터 표현 원리 디지털 논리회로에 기반한 컴퓨터는 두 가지 상태만을 구별
디지털영상처리 및 실습 대구보건대학 방사선과.
2장. 데이터의 표현 Lecture #2.
4. 디지털 코드 디지털 코드의 종류와 의미를 알고, 이를 표현할 수 있다. BCD 코드로 표현한 자료끼리 연산할 수 있다.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Error Detection and Correction
10 장 오류 검출 및 수정 10.1 오류 종류 10.2 검출 10.3 오류 정정 10.4 요약.
제 2장 컴퓨터의 등장과 발전.
멀티미디어 시스템 (아날로그 이미지,신호를 디지털로 변환 방법) 이름 : 김대진 학번 :
6장. printf와 scanf 함수에 대한 고찰
2007 1학기 11 프로젝트 기초 실습.
PSW : PROGRAM STATUS WORD
Chapter 03. 디지털 코드.
컴퓨터의 코드 시스템.
어서와 C언어는 처음이지 제14장.
바코드에 대하여…… 바코드에 대하여 알아보도록 하자 6-1 홍지효.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
24장. 파일 입출력.
Fax Installation Setting
☆ASCII☆ 김연주.
Excel 일차 강사 : 박영민.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
논리회로 설계 및 실험 5주차.
볼링게임 시스템 3조 오지연, 손수경.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
8장. spss statistics 20의 데이터 변환
1. 2진 시스템.
CHAPTER 02. 정보의 표현 정보 체계_컴퓨터 내부의 정보 표현과 정보 처리
3 디지털 코드.
정보의 표현 정보 체계_컴퓨터 내부의 정보 표현과 정보 처리
계산기.
VHDL를 이용한 DES 설계 정보통신컴퓨터공학부 5조 김인옥, 백미숙
과제 1 4bit x 4 SRAM이 있다 아래 (1), (2) 두 입력에 대한 출력값 [3:0] Dout을 나타내시오 (1)
QR Code 김정민 김준보.
제 15 강 문자와 코드 shcho.pe.kr.
에어 PHP 입문.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
9 장 오류 검출 및 오류 정정 9.1 오류 종류 9.2 검출 9.3 오류 정정 9.4 요약.
리더 : 이동주 스토리 : 김현 그래픽 : 최혁진 코딩 : 최재근
디지털논리 회로 1차설계 예비보고서 2006 송만성 2007이상진 2007배정준 2007김효진.
제10강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
제 4 장 Record.
Introduction to Computer System 컴퓨터의 이해 3: 데이터 표현
Computer System Architecture
윈도우에서의 유니코드.
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
                                  6장 엔코드 디코드 회로 10진수와 2진수의 변환 및 표시 4 7 A B C D BCD 변환.
20 XMLHttpRequest.
Presentation transcript:

Chapter 03 디지털 코드

학습 목표 디지털 코드의 종류를 알아본다. 문자와 숫자를 나타내는 코드에 대해 알아본다. 숫자를 나타내는 코드인 가중치 코드와 비가중치 코드에 대해 알아본다. 오류 검출 코드의 종류에 대해 알아본다.

목 차 01. BCD 코드와 3초과 코드 02. 다양한 2진 코드들 03. 그레이 코드 04. 오류검출 코드 05. 영숫자 코드

1. BCD코드와 3 초과코드 BCD 코드 BCD코드(Binary Coded Decimal Code : 2진화 10진 코드, 8421 코드)는 10진수 0부터 9까지를 2진화한 코드로서 실제 표기는 2진수로 하지만 10진수처럼 사용한다. 즉, 1010부터 1111까지의 6개는 사용되지 않는다. 10진수 BCD 코드 0000 10 0001 0000 20 0010 0000 1 0001 11 0001 0001 31 0011 0001 2 0010 12 0001 0010 42 0100 0010 3 0011 13 0001 0011 53 0101 0011 4 0100 14 0001 0100 64 0110 0100 5 0101 15 0001 0101 75 0111 0101 6 0110 16 0001 0110 86 1000 0110 7 0111 17 0001 0111 97 1001 0111 8 1000 18 0001 1000 196 0001 1001 0110 9 1001 19 0001 1001 237 0010 0011 0111

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

3초과 코드 BCD코드(8421코드)로 표현된 값에 3을 더해 준 값으로 나타내는 코드 자기 보수의 성질이 있음. 10진수 3-초과 코드 0000 0011 1 0001 0100 2 0010 0101 3 0110 4 0111 5 1000 6 1001 7 1010 8 1011 9 1100 보수 관계

2. 다양한 2진 코드들 가중치코드(weighted code) 그 위치에 따라 정해진 값을 갖는 코드 10진수 8421코드 (BCD) 2421 코드 5421 84-2-1코드 51111 바이퀴너리코드 (Biquinary Code) 5043210 링 카운터 (ring counter) 9876543210 0000 00000 0100001 0000000001 1 0001 0111 00001 0100010 0000000010 2 0010 0110 00011 0100100 0000000100 3 0011 0101 00111 0101000 0000001000 4 0100 01111 0110000 0000010000 5 1011 1000 10000 1000001 0000100000 6 1100 1001 1010 11000 1000010 0001000000 7 1101 11100 1000100 0010000000 8 1110 11110 1001000 0100000000 9 1111 11111 1010000 1000000000

비가중치코드(non-weighted code) 각각의 위치에 해당하는 값이 없는 코드 데이터 변환과 같은 특수한 용도로 사용되기 위한 코드 (2-out-of-5) 10진수 3-초과 코드 5중 2코드 (2-out-of-5) shift counter 그레이코드 0011 11000 00000 0000 1 0100 00011 00001 0001 2 0101 00101 3 0110 00110 00111 0010 4 0111 01001 01111 5 1000 01010 11111 6 1001 01100 11110 7 1010 10001 11100 8 1011 10010 1100 9 10100 10000 1101

3. 그레이 코드 그레이 코드(Gray Code) 가중치가 없는 코드이기 때문에 연산에는 부적당하지만, 아날로그-디지털 변환기나 입출력 장치 코드로 주로 쓰인다. 연속되는 코드들 간에 하나의 비트만 변화하여 새로운 코드가 된다. 10진수 2진 코드 Gray 코드 0000 8 1000 1100 1 0001 9 1001 1101 2 0010 0011 10 1010 1111 3 11 1011 1110 4 0100 0110 12 5 0101 0111 13 6 14 7 15 이웃하는 코드간에 한 비트만 다르다.

2진 코드를 그레이 코드로 변환하는 방법 그레이 코드를 2진 코드로 변환하는 방법

그레이 코드 입력장치 적용 예 1 2진 코드 : 정상 그레이 코드 : 정상 그레이 코드는 오차가 적다 1 2진 코드 : 에러(3->7) 그레이 코드 : 에러(3->4)

4. 오류 검출 코드 1. 패리티 비트 7비트 ASCII 코드에 패리티 비트를 추가한 코드 짝수패리티(even parity) : 데이터에서 1의 개수를 짝수 개로 맞춤 홀수패리티(odd parity) : 1의 개수를 홀수 개로 맞춤 패리티 비트는 데이터 전송과정에서 오류 검사를 위한 추가비트. 패리티는 단지 오류 검출만 가능하며, 여러 비트에 오류가 발생할 경우에는 검출이 안될 수도 있음. 7비트 ASCII 코드에 패리티 비트를 추가한 코드 데이터 짝수패리티 홀수패리티 … A 0 1000001 1 1000001 B 0 1000010 1 1000010 C 1 1000011 0 1000011 D 0 1000100 1 1000100

가로세로 회색 부분에 1의 개수가 홀수임 : 겹치는 부분 오류 병렬 패리티(parallel parity) 패리티를 블록 데이터에 적용해서 가로와 세로 데이터들에 대해서 패리티를 적용하면 오류를 검출하여 그 위치를 찾아 정정할 수 있다. 1 1 원래 데이터 블록 오류가 발생한 블록 가로세로 모두 1의 개수가 짝수임 가로세로 회색 부분에 1의 개수가 홀수임 : 겹치는 부분 오류

2. 오류 정정 코드 : 해밍(hamming code)코드 오류를 정정할 수 있는 코드 추가적으로 많은 비트가 필요하므로 많은 양의 데이터 전달이 필요 추가되는 패리티 비트의 수 p는 패리티 비트의 수, d는 데이터 비트의 수 해밍코드에서는 짝수 패리티를 사용 비트위치 1 2 3 4 5 6 7 8 9 10 11 12 기호 P1 P2 D3 P4 D5 D6 D7 P8 D9 D10 D11 D12 P1 영역  P2 영역 P4 영역 P8 영역

8비트 데이터의 오류 정정 코드 for example D3 D5 D6 D7 D9 D10 D11 D12 1

해밍코드에서 패리티 비트의 생성 과정 생성된 패리티 비트위치 1 2 3 4 5 6 7 8 9 10 11 12 기호 P1 P2 D3 P4 D5 D6 D7 P8 D9 D10 D11 D12 원본 데이터 P1 영역 P2 영역 P4 영역 P8 영역 생성된 코드 생성된 패리티

해밍코드에서 패리티 비트의 검사 과정 전송된 데이터 : 010111011110  패리티들을 포함하여 검사 전송된 데이터 : 010111011110  패리티들을 포함하여 검사 검사된 패리티를 P8 P4 P2 P1 순서대로 정렬한다. 모든 패리티가 0이면 오류가 없는 것이고, 그렇지 않으면 오류가 발생한 것이다. 결과가 0101이므로 오류가 있으며, 이것을 10진수로 바꾸면 5가 된다. 즉, 전송된 데이터 010111011110에서 앞에서 5번째 비트 1이 오류가 발생한 것이므로 010101011110으로 바꾸어 주면 오류가 정정된다. P1 P2 D3 P4 D5 D6 D7 P8 D9 D10 D11 D12 1

P8 P4 P2 P1 =0101= 5 : 5번 비트에 에러가 발생. 1 → 0으로 교정 해밍코드에서 오류가 발생한 경우 교정 비트위치 1 2 3 4 5 6 7 8 9 10 11 12 기호 P1 P2 D3 P4 D5 D6 D7 P8 D9 D10 D11 D12 Error 해밍코드 P1 계산 P2 계산 P4 계산 P8 계산 P8 P4 P2 P1 =0101= 5 : 5번 비트에 에러가 발생. 1 → 0으로 교정

5. 영숫자 코드 1. ASCII(American Standard Code for Information Interchange) 코드 미국 국립 표준 연구소(ANSI)가 제정한 정보 교환용 미국 표준 코드 128가지의 문자를 표현할 수 있다. ASCII 코드의 구성 Parity Zone bit Digit Bit 7 6 5 4 3 2 1 C 영문자 A~O(0001~1111) 영문자 P~Z(0000~1010) 숫자 0~9(0000~1001)

표준 ASCII 코드 표 1 2 3 4 5 6 7 8 9 A B C D E F NUL SOH STX ETX EOT ENQ 1 2 3 4 5 6 7 8 9 A B C D E F NUL SOH STX ETX EOT ENQ ACK BEL BS TAB LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US ! " # $ % & ' ( ) * + , - . / : ; L = > ? @ G H I J K \ M N O P Q R S T U V W X Y Z [ l ] ^ _ ` a b c d e f g h i j k | m n o p q r s t u v w x y z { } ~

2. 표준 BCD 코드 6비트로 하나의 문자를 표현 최대 64문자까지 표현 가능한 코드 Parity Zone bit Digit Bit 6 5 4 3 2 1 C 영문자 A~I(0001~1001) 영문자 J~R(0001~1001) 영문자 S~Z(0010~1001) 숫자 0~9(0001~1010) 혼용 특수문자 및 기타문자

표준 BCD 코드 표 문자 C ZZ8421 A B C D E F G H I 0 110001 0 110010 1 110011 0 110100 1 110101 1 110110 0 110111 0 111000 1 111001 J K L M N O P Q R 1 100001 1 100010 0 100011 1 100100 0 100101 0 100110 1 100111 1 101000 0 101001 S T U V W X Y Z 1 010010 0 010011 1 010100 0 010101 0 010110 1 010111 1 011000 0 011001 1 2 3 4 5 6 7 8 9 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 111010 1 111111

3. EBCDIC(Extended Binary Coded Decimal Interchange Code) 코드 대형 컴퓨터와 IBM 계열 컴퓨터에서 많이 사용되고 있는 8비트 코드(IBM에서 개발) 256종류의 문자 코드를 표현할 수 있는 영숫자 코드

EBCDIC 코드표

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

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