About UTF-8, Base64

컴퓨터는 항상 비트를 다룬다 그리고 비트를 사용해 수와 같은 대상을 표현한다. https://infondgndg91.blogspot.com/2023/02/about-binary-number.html 그렇다면 문자나 키보드에 있는 다른 기호는 어떻게 표현할까? ASCII(American Standard Code for Information Interchange) 키보드에 있는 모든 기호를 7bit 를 할당했다. 예를 들어 65 는 대문자 A 66은 대문자 B를 표현한다. 아래 링크에서 확인할 수 있다. https://www.asciitable.com/ 위와 같이 글자를 출력하는 데 쓰이지 않고 장치를 제어하기 위해 쓰이는 control character 가 있다. 이 중 상당수는 통신 제어를 위한 문자다. ACK(수신확인) '메세지를 받았음' 이고, NAK(반수신확인)는 '메세지를 받지 못했음'을 의미한다. 유니코드(Unicode) 아스키는 영어를 표현하는 데 필요한 모든 문자를 포함하고 있어서 상당 기간 표준 역할을 했다. 초기 컴퓨터는 미국산 혹은 영국산이었기 때문이다. 컴퓨터가 널리 쓰이게 되면서, 이외의 언어를 지원해야 했다. 국제 표준화 기구인 ISO(International Standard Organization) 은 ISO-646, ISO-8859 를 도입했다. 기본적으로 아스키를 확장해 유럽 언어에 필요한 액센트 기호나 그 밖의 발음 구별 기호를 추가했다. 그리고 일본 산업 표준 위원회는 JIS(Japanese Industrial Standards) 일본 문자 표현을 위해서 JIS X 0201 을 만들었다. 또한 중국어, 아랍어, 한국어(KS C 5601) 등 표준도 생겼다. 이렇게 많은 표준이 존재한 이유는 비트가 지금보다 더 비쌌다. 그래서 최대한 문자를 7비트나 8비트에 욱여넣었다. 비트가격이 떨어지면서 유니코드라는 표준이 생겼다. 문자에 16비트 코드를 부여했다. 16비트면 지구상의 모든 문자...