ASCII- 영어 알파벳과 기호들을 컴퓨터에서 표현하는 규약, 128개의 문자 -> 7비트 사용, 1바이트는 사용하지 않거나 오류 검출용으로 사용한다.
ANSI - 영어 외의 다른 문자 언어를 표현하기 위해 만든 인코딩, 256개 문자 -> 8비트 사용
멀티바이트 - 1바이트에 담을 수 없는 언어(한국어, 중국어, 일본어)들을 위해 나왔다. 문자를 2바이트 내에서 표현할 수 있게 되었다.
EUC - Extended Unix Code, 한,중,일을 위한 멀티바이트 문자 인코딩이다. 같은 바이너리 패턴으로 다른 나라 언어를 표현한다. 그래서 같은 값을 다른 언어팩에 넣으면 글자가 깨져서 보인다. (EUC-KR - 한국어 문자 인코딩 방식)
-> 여러 언어를 한번에 표현이 불가능하다, 이모티콘도 표현이 불가능하다.
Unicode - 전세계의 모든 문자, 이모티콘까지 일관되게 표현할 수 있는 규격, 인코딩 방식(UTF-8, UTF-16, UTF-32 - 최소 단위가 몇 바이트인지)
UTF-8 - 현재 모든 웹페이지의 93%가 해당 인코딩 방식을 사용한다. UTF-32에 비해 메모리를 적게 쓰고, UTF-16에 비해 인코딩, 디코딩 알고리즘이 쉽고, 엔디안 문제가 없다. 아스키 코드와 100% 호환된다.(1바이트로 표현) 한국어, 중국어, 일본어를 제외한 거의 모든 문자를 1 또는 2 바이트를 사용한다. 한국어는 대부분 3바이트가 필요하다.(UTF-16을 쓰면 2바이트로 충분) 첫번째 바이트의 비트 패턴을 보면 몇 바이트 글자인지 알 수 있다.(사용하는 바이트 수에 따라 0, 110, 1110, 11110 으로, 다음 바이트는 10으로 시작한다.)
> 엔디안 - 최소 저장단위를 초과하는 데이터를 저장할 때 저장 순서를 정의한다. 보통 최소 저장단위는 1바이트이다.
> 리틀 엔디안 - 데이터가 끝나는 마지막 단위가 가장 작은 메모리 주소에 위치한다.
> 빅 엔디안 - 데이터의 마지막 단위가 가장 큰 메모리 주소에 위치한다. (사람이 읽기 쉽다.)
'프로그래밍 > 이산 수학' 카테고리의 다른 글
부동 소수점 - 32 비트(IEEE 754) (0) | 2023.01.03 |
---|---|
실수 - 고정 소수점, 부동 소수점 (0) | 2023.01.02 |
보수 - 10, 9, 2, 1의 보수 (0) | 2022.12.29 |
데이터 표현 방식 - 정수 (0) | 2022.12.26 |
데이터 표현 방식 - 비트, 바이트 (0) | 2022.12.24 |