728x90
정보 단위
- 컴퓨터는 0, 1밖에 이해하지 못하기에 비트(Bit)를 사용함
- n개의 bit로 \( 2^{n} \) 가지의 정보를 표현 가능
바이트 Byte
- 8개의 bit를 묶은 단위
킬로바이트 KB
- 1바이트를 1,000개 묶은 단위
메가바이트 MB
- 1킬로바이트를 1,000개 묶은 단위
기가바이트 GB
- 1메가바이트를 1,000개 묶은 단위
테라바이트 TB
- 1기가바이트를 1,000개 묶은 다위
워드 Word
- CPU가 한번에 처리할 수 있는 데이터 크기 (16비트, 32비트 등)
이진법
- 0과 1만으로 모든 숫자를 표현하는 방법
- 올림을 하여 표현함
이진수의 음수 표현
- 2의 보수 사용
- 모든 0과 1을 뒤집고 거기에 1을 더한 값
플래그를 이용하여 음수인지 양수인지 확인함
2의 보수 표현 한계
- 0이나 \( 2^{n} \) 형태의 이진수에 2의 보수를 취하면 원하는 음수값을 얻을 수 없음
문자 집합, 인코딩, 디코딩
- 문자 집합
- 컴퓨터가 인식하고 표현할 수 있는 문자의 모음
- {a, b, c, d, e} 문자 집합이 있다고 한다면 앞의 5개는 인식 가능하나 f, g는 인식하지 못함
- 문자 인코딩
- 문자를 0과 1로 변환하는 과정
- 문자 디코딩
- 0과 1로 변한 코드를 다시 사람이 이해할 수 있는 문자로 변환하는 것
아스키 코드
- 초창기 문자 집합 중 하나로, 영어 알파벳과 아라비아 숫자, 일부 특수 문자를 포함함
- 아스키 문자는 각각 7 비트로 표현되고 \( 2^{7} \) = 128개의 문자를 표현 할 수 있음
단점
- 한글 뿐만 아니라 아스키 집합 외의 문자, 특수문자를 표현할 수 없음
- 영어권 외의 나라는 아스키 코드와는 다른 문자 표현이 필요했고 한국은 EUC-KR을 사용함
EUC-KR
- 한글 인코딩에 사용됨
- 한글의 특수성
- 한글은 쑥 이어쓰는 알파벳과 달리 초성, 중성, 종성의 조합으로 이루어져 있음
- 그렇기에 완성형과 조립형 인코딩이 존재함
- 완성형 인코딩
- 총성, 중성, 종성의 조합으로 이루어진 완성된 하나의 글자에 고유한 코드를 부여하는 인코딩 방식
- ex) '가': 1, '나': 2, '다': 3
- 조합형 인코딩
- 초성을 위한 비트열, 중성을 위한 비트열, 종성을 위한 비트열을 할당하여 그것들의 조합으로 하나의 글자 코드를 완성하는 인코딩 방식
- 초성, 중성, 종성에 해당하는 코드를 합하여 하나의 글자 코드를 만드는 인코딩 방식
- 2,350개 정도의 한글 단어 표현 가능, 문자 집합에 정의되지 않은 쀍, 쀓 등은 표현할 수 없음
- 위와 같은 문제를 해결하기 위해 마이크로소프트에서 CP949(EUC-KR의 확장버전)를 개발함
유니코드
- 모든 언어를 아우르는 문자 집합과 통일된 표준 인코딩 방식으로 언어별로 인코딩이 가능함
- EUC-KR보다 훨씬 다양한 한글을 포함하며 대부분 나라의 문자, 특수 문자, 이모티콘까지 코드로 표현할 수 있음
- 현대 문자 표현에 가장 많이 쓰이는 표준 문자 집합
728x90
'컴퓨터구조' 카테고리의 다른 글
[컴퓨터구조] CPU, ALU와 제어장치 (1) | 2022.11.22 |
---|---|
[컴퓨터구조] 소스 코드와 명령어 (0) | 2022.11.21 |
[컴퓨터구조] 컴퓨터 핵심 부품 (0) | 2022.11.21 |
[컴퓨터구조] 램, CPU (0) | 2022.11.17 |
[컴퓨터구조] 바이트와 코드, 레지스터, 버스, 다중 입력 다중 출력 게이트 (0) | 2022.11.15 |