
우리는 컴퓨터를 통해 다양한 정보를 처리한다.
간단한 숫자부터 시작해서, 문자, 사진, 영상, 음악까지 정보를 표현하는 형태는 매우 많다.
컴퓨터는 어떻게 이런 다양한 정보를 처리할 수 있을까?
컴퓨터는 스위치를 ON/OFF하면서 숫자를 표현한다. 그렇다면 문자는 어떻게 표현할까?
바로 문자를 숫자로 표현 할 수 있도록 정해진 약속(표준)이 있다.
그 중 하나는 설명미국정보교환표준부호 ASCII(아스키코드/American Standard Code for Information Interchange)로, 총 128개의 부호로 정의되어 있다.
다음은 알파벳을 나타낸 표이다.

A를 2진법으로 표현해보면, 10진법을 기준으로 65이므로 26x1 + 25x0 + 24x0 + 23x0 + 22x0 + 2x0 + 1x1 (64+1), 즉 1000001로 표현할 수 있다.
이 외에도 Unicode라는 표준에서는 더 많은 비트를 사용하여 더 다양한 다른 문자들도 표현가능 하도록 지원하고 있는데, ASCII로는 문자들을 표현하기에 충분하지 않았기 때문이다.
Unicode는 😂(기쁨의 눈물) 이런 이모티콘 까지 표현할 수 있게 해준다. 이 이모티콘은 10진법으로 128,514, 2진법으로는 11111011000000010이다.
우리가 스마트폰으로 😂(기쁨의 눈물) 이모티콘을 보낸다면 11111011000000010이라는 0과 1의 패턴을 보낸 것이다. 그리고 이 패턴을 받은 상대방의 스마트폰은 이를 노란색 얼굴에 눈물을 흘리고 있는 사진으로 보여준 것이다.
그림도 역시 숫자로 표현할 수 있다.
우리가 스크린을 통해 보는 그림을 자세히 살펴 보면 수많은 작은 점들이 빨간색, 초록색, 파란색을 띄고 있다. 이러한 작은 점을 픽셀이라고 부르며 각각의 픽셀은 세 가지 색을 서로 다른 비율로 조합하여 특정한 색을 갖게 된다.
예를 들어 빨간색 72, 초록색 72, 파란색 33을 섞게 되면 노란색이 되는 것과 같은 방식인데 이 숫자들을 표현하는 방식을 RGB(Red, Green, Blue)라고 한다.
즉, 노란색의 커다란 이미지는 72 73 33 으로 정의되는 무수히 많은 픽셀들의 RGB코드(숫자)로 표현할 수 있는 것이다.
영상 또한 수많은 그림을 빠르게 연속적으로 이어 붙여놓은 것이기 때문에 숫자로 표현이 가능하며, 마찬가지로 음악도 각 음표를 숫자로 표현할 수 있다.
C : 67 => 01000011
S : 83 => 01010011
5 : 53 => 00110101
0 : 48 => 00110000
// 0으로 시작하는 이유 : ASCII 코드는 8비트(또는 1바이트)로 구성되어 있어, 각 문자는 8개의 비트로 표현된다.