컴퓨터는 2진수만 인식할 수 있기 때문에 문자나 기호를 컴퓨터에 저장하거나 통신 목적으로 사용할 때에는 부호로 바꾸어 사용해야 하는데 이를 문자 인코딩 또는 부호화라고 한다.
ex) 아스키코드 규칙에 따라 A를 65라는 문자로 변환 >> 인코딩(부호화)
65 -> A >> 디코딩(복호화)
Q. char타입은 한 글자에 1byte의 메모리를 차지하므로 256개의 고유값을 저장할 수 있는데
메모리 아깝게 1bit를 버리고 7bit만 쓰는 이유는?
A. 나머지 1비트는 통신 에러 검출을 위한 공간으로 사용(=Parity Bit)
(추후 공부하게 되면 정리)
아스키코드는 알파벳과 숫자, 기본적인 키보드 특수기호만을 가지고 있기 때문에, 영어 이외에 존재하는 많은 언어를 표현할 수 없었다. 그래서 아스키코드에서 1비트를 더 사용해 8비트로 확장한 ANSI 코드를 만들어 사용하기도 했고(256개), 이마저도 세상에 존재하는 많은 언어를 표현하기에 부족하여 유니코드를 만들어냈다. 현대에는 65536개도 부족하여 계속 최신 버전 유니코드가 발표되고 있다.