1. 정보 단위
- bit : 0과 1을 표현
- byte : 8비트
- kB : 1,000byte
- MB : 1,000kB
- GB : 1,000MB
- TB : 1,000GB
- kiB : 1,024byte
- MiB : 1,024kB
- GiB : 1,024MB
- TiB : 1,024GB
- word : CPU가 한 번에 처리할 수 있는 데이터 크기를 의미
- 만약 CPU가 16 비트를 한 번에 처리 가능하다면, 1 word는 16비트가 됨
2. 이진수의 음수 표현
- 컴퓨터는 0과 1만 이해할 수 있기 때문에 마이너스 부호를 사용 불가
- 2의 보수를 구해 음수로 간주
- 11(2)의 보수는 01(2)
- 이진수만 봐서는 컴퓨터가 음수인지 양수인지 판별 불가
- 플래그 레지스터를 사용해 판별
- 2^n 의 경우 보수 표현을 해도 값이 같기 때문에 -2^n과 2^n을 동시에 표현 불가능함
3. 문자 표현
- 문자 집합 : 컴퓨터가 인식하고 표현할 수 있는 문자의 모음
- 문자 인코딩 : 문자를 0과 1로 변환
- 문자 디코딩 : 0과 1로 이루어진 문자 코드를 사람이 이해할 수 있는 문자로 변환
3-1. Ascii code
- 초창기 문자 집합
- 7비트의 문자를 위한 비트와 1개의 패러티 비트를 사용해 하나의 문자 표현
- 패러티 비트 : 아스키 문자에 대한 오류 검출을 할 때 쓰는 코드
- 2^7개 만큼 문자 표현 가능
- 확장 아스키 : 2^8개까지 표현 가능
3-2. 완성형 인코딩
- 한국을 포함한 영어권외의 나라들은 언어를 0과 1로 표현할 수 있는 고유한 문자집합과 인코딩 방식에 대한 필요로 등장
- 초성, 중성, 종성의 조합으로 이루어진 완성된 하나의 글자에 고유한 코드를 부여하는 인코딩 방식
- ex) ('가'는 1, '나'는 2, '다'는 3)과 같은 방식
3-2-1. EUC-KR
- KS X 1001, KS X 1003이라는 문자 집합을 기반으로 하는 대표적인 완성형 인코딩
- 초성, 중성, 종성이 모두 결합된 한글 단어에 2바이트 크기의 코드를 부여
- 즉, 네자리 16진수로 표현
- 문자 집합에 정의되지 않은 '쀍', '쀓' 등의 단어는 표현 불가
- 개선 버전인 CP949가 존재
3-2-1. 유니코드 문자 집합
- 모든 언어를 아우르는 문자 집합과 통일된 표준 인코딩 방식의 필요에 의해 등장
- 현대 문자를 표현할 때 가장 많이 사용되는 표준 문자 집합
- UTF-8, UTF-16, UTF-32 방식등이 존재
- Unicode Transformation Format
- UTF-8
- 기준에 따라 1에서 4바이트까지의 인코딩 결과를 만들어 냄
3-3. 조합형 인코딩
- 초성, 중성, 종성에 각각 비트열을 할당하여 그것들의 조합으로 하나의 글자 코드를 완성
'CS > 컴퓨터 구조' 카테고리의 다른 글
명령어 병렬 처리 기법 [혼공컴구] (0) | 2023.11.22 |
---|---|
컴퓨터 구조 - 클럭, 코어, 스레드 [혼공컴구] (0) | 2023.11.17 |
컴퓨터 구조 - 명령어 사이클과 인터럽트 [혼공컴구] (0) | 2023.11.17 |
컴퓨터 구조 - CPU ( 코어 ) [혼공컴구] (0) | 2023.11.17 |
컴퓨터 구조 - 명령어 [혼공컴구] (0) | 2023.11.17 |