Chapter 04 컴퓨터에서 데이터 표현
04 컴퓨터에서 데이터 표현 2 인코딩 (encoding) – 현실세계의 정보를 컴퓨터 내부에서 처리할 수 있는 이진수로 변환하는 방법 1. 컴퓨터 속에서 데이터 표현 원리 0 - 아빠 1 - 엄마 00 - 아빠 01 - 엄마 10 - 아들 11 - 딸
Page 3 2. 문자 표현 1 아스키 코드 2 2 진화 10 진 코드 3 확장 2 진화 10 진 코드 4 유니코드
Page 아스키 코드 미국표준협회 (ANSI) 가 제정한 데이터처리 및 통신시스템 상호 간의 정보 교환용 표준 코드 표현할 수 있는 문자는 128(2 7 ) 개
Page 아스키 코드 확장 ASCII 코드 128 개의 문자로는 다양한 데이터를 표현하기 어렵기 때문에 ASCII 코드의 존 비트를 4 비트로 확장
Page 진화 10 진 코드 문자 하나를 표현하기 위해 6 비트를 사용, 64(2 6 ) 개의 문자를 표현 디지트 비트는 0~9 까지의 수를 표현하는 가중치 코드, 8421 코드라고도 함 2 진수 네 자리가 10 진수 한 자리에 대응되기 때문에 10 진수로의 변환이 쉬움
Page 확장 2 진화 10 진 코드 IBM 사가 문자 코드에 대한 필요성으로 제정 IBM 의 메인프레임 컴퓨터에서 사용
Page 확장 2 진화 10 진 코드
Page 유니코드 전 세계의 언어를 일관된 방법으로 표현하고 다룰 수 있는 국제적인 문자 코드 규약 문자 하나를 16 비트로 표현, 65,536(2 16 ) 개의 문자와 기호를 나타냄 인코딩 방식은 UTF-8, UTF-16, UTF-32 UTF 뒤의 숫자는 문자 인코딩에 사용되는 비트 수 언어별 유니코드 차트 자료 :
Page 유니코드
04 컴퓨터에서 데이터 표현 11 진법의 종류와 표현 10 진법 2 진법 8 진법 16 진법 A B C D E F 3. 진법과 변환 [1]
04 컴퓨터에서 데이터 표현 12 진법의 변환 : 10 진수를 2 진수, 8 진수, 16 진수로 변환하기 거듭제곱을 이용한 변환 ① 2 진수로 변경 19 = 1× × × × ×2 0 ⇒ (10011) 2 ② 8 진수로 변경 19 = 2× ×8 0 ⇒ (23) 8 ③ 16 진수로 변경 19 = 1× ×16 0 ⇒ (13) 진법과 변환 [2]
04 컴퓨터에서 데이터 표현 13 나눗셈을 이용한 진법 변환 3. 진법과 변환 [3]
04 컴퓨터에서 데이터 표현 14 소수점 이하의 진법 변환 3. 진법과 변환 [4]
04 컴퓨터에서 데이터 표현 15 진법의 변환 : 2 진수, 8 진수, 16 진수를 10 진수로 변환하기 거듭제곱을 이용한 변환 ① 2 진수를 10 진수로 변경 (1010) 2 = 1× × × ×2 0 = ⇒ (10)10 ② 8 진수를 10 진수로 변경 (1010)8 = 1× × × ×8 0 = ⇒ (520)10 ③ 16 진수로 변경 (1010)16 = 1× × × ×16 0 = ⇒ (4112) 진법과 변환 [5]
04 컴퓨터에서 데이터 표현 16 진법의 변환 : 2 진수, 8 진수, 16 진수 사이의 변환 – 소수점을 기준으로 하여 8 진수로 변환하고자 할 경우는 세 자리씩, 16 진수로 변환 하고자 할 경우는 네 자리씩 끊어 각각을 2 진수로 변환한다. 3. 진법과 변환 [6]
4. 정수 표현 1 보수 2 고정 소수점 표현 3 덧셈 4 뺄셈 5 곱셈 6 나눗셈
4.1 보수 진법의 밑수에서 해당되는 수를 뺀 나머지 컴퓨터 내부에서는 사칙연산을 수행할 때 덧 셈을 담당하는 가산기를 이용 뺄셈은 덧셈 형식으로 변환 A–B 는 –B 를 구한 후 A+(-B) 를 수행 음의 정수를 표현하기 위해 고안한 개념이 보 수
4.1 보수 1 의 보수 2 의 보수 2 진수 1010 의 1 의 보수는 0101 (2) 2 진수 1010 의 2 의 보수는 0110 (2)
4.2 덧셈 두 수의 합이 2 가 되면 자리올림이 발생
4.3 뺄셈 1 의 보수 뺄셈
4.3 뺄셈 2 의 보수 뺄셈
4.4 곱셈 피승수에 승수의 각 수를 곱하여 부분 곱을 구함 각 부분 곱은 직전 단계의 부분 곱보다 왼쪽으로 한 비트만큼 시프트한 후 더함
4.4 나눗셈 피제수에서 제수를 뺄 수 없을 때까지 뺄셈을 계속해서 횟수는 몫이 되고 남은 것은 나머지 가 됨
5. 실수 표현 고정 소수점 방식 소수점이 항상 고정된 위치에 있다는 의미로, 정수 표현에 주로 사용 부동 소수점 방식 소수점의 위치가 변하기 때문에 실수 표현에 주로 사용 고정 소수점 방식보다 넓은 범위의 수를 표현 부호 비트, 지수 부분, 가수 부분으로 구성 지수 부분은 소수점의 위치, 가수 부분은 유효 자릿수 m ⅹ r e ( m : 가수 r : 밑수, e : 지수 )
04 컴퓨터에서 데이터 표현 26 불 대수 (boolean algebra) –1848 년 영국의 수학자 불 (George Boole, 1815~1864) 이 제안 – 논리값이 참일 때에 1 을, 거짓일 때에 0 을 대응시켜 논리학상의 명제나 명제의 관 계를 수학적으로 표현한 것 – 기본적인 연산 논리곱 (AND) 논리합 (OR) 논리 부정 (NOT) 6. 부울대수 [1]
04 컴퓨터에서 데이터 표현 27 불 대수의 연산 – 불 대수의 덧셈 – 불 대수의 곱셈 = = = = 1 0 · 0 = 0 0 · 1 = 0 1 · 0 = 0 1 · 1 = 1 6. 부울대수 [2]
04 컴퓨터에서 데이터 표현 28 불 대수의 연산 – 드모르간의 법칙 (de Morgan’s Theorem) ① (x + y) = x·y, (x + y + z) = x·y·z ② (x·y) = x + y, (x·y·z) = x + y + z 6. 부울대수 [3]
04 컴퓨터에서 데이터 표현 29 논리곱 (AND) – 두 개의 입력과 하나의 출력을 가지며, 두 개의 입력 값 모두 1 일 때만 출력 값이 1 이 된다. ABA·B 논리회로 [1]
04 컴퓨터에서 데이터 표현 30 논리합 (OR) – 두 개의 입력과 하나의 출력을 가지며, 입력 값 중 하나라도 1 일 경우만 결과 값이 1 이 된다. ABA+B 논리회로 [2]
04 컴퓨터에서 데이터 표현 31 논리부정 (NOT) – 한 개의 입력 값과 하나의 출력 값을 가지며, 입력 값이 0 이면 1, 1 이면 0 이 출력 값이 된다. AA 논리회로 [3]
04 컴퓨터에서 데이터 표현 32 부정논리곱 (NAND) – 논리곱 (AND) 의 부정으로, A 와 B 가 모두 1 일 때만, 출력 값이 0 이 된다. ABA·B 논리회로 [4]
04 컴퓨터에서 데이터 표현 33 부정논리합 (NOR) – 논리합 (OR) 의 부정으로, A 와 B 가 모두 0 일 때만, 출력 값이 1 이 된다. ABA+B 논리회로 [5]
04 컴퓨터에서 데이터 표현 34 배타적 논리합 (XOR) – 배타적 논리합은 입력 A 와 B 가 서로 다를 경우만 출력 값이 1 이 된다. AB A⊕BA⊕B 논리회로 [6]