경남 합천 해인사에서 보관 중인 팔만대장경(합천 해인사 대장경판)은 총 8만1352장의 목판에 부처님의 가르침을 한자씩 새겨 만든 소중한 문화재다. 곧고 옹이가 없는 단단한 나무를 골라 판자를 만들고 그 위에 하나하나 새긴 글자가 5200여만자에 달한다.
팔만대장경은 역사적 가치와 독창성 등으로 1962년 국보 32호로 지정됐다. 2007년에는 유네스코 세계기록문화유산에 이름을 올렸다. 고려시대인 13세기(1237~1248)에 제작했음에도 800년 가까이 흐른 지금도 글자의 새김이 생생한 상태로 남아있다.
목판이 뒤틀리거나 썩는 것을 막으려고 글자를 새기기 전 판자를 소금물에 삶아 그늘에 말리고, 새긴 뒤에는 마구리(판자 끝에 덧댄 각목)를 대고 옻칠을 하는 등 까다로운 과정을 거쳤기에 가능했다.
요즘으로 치면 반도체 공정과 비슷하다. 반도체도 모래에서 추출한 규소를 가공해 웨이퍼를 만들고(전공정), 웨이퍼 위에 회로를 인쇄해 깎은 뒤 박막을 여러겹 입히는 등 복잡한 과정(후공정)을 거쳐 나온다. 팔만대장경과 차이가 있다면 눈에 보이지 않을 만큼 정밀한 가공이 가능해졌고, 이 덕분에 정보를 저장하는 용량이 엄청나게 커졌다.
그렇다면 선조들의 소중한 유산인 팔만대장경을 컴퓨터에 저장한다면 얼마의 용량이 필요할까?
답을 내기에 앞서 몇가지 알아둘 점이 있다. 컴퓨터는 '0'과 '1'이라는 두 숫자만으로 읽고 쓰고 기억한다.
예를 들어 키보드에서 'A'를 입력하면 컴퓨터의 두뇌라 할 수 있는 중앙처리장치(CPU)는 미리 정한 규칙(아스키코드)에 따라 이를 '01000001'로 받아들여 그래픽카드에 보낸다. 우리는 'A'를 입력하고, 모니터에서 'A'라는 글자를 보게 되지만 사실 컴퓨터는 '01000001'이라는 8자리 이진법을 처리한 것뿐이다.
이 때 '0' 또는 '1' 자체를 비트(bit)라고 한다. 비트는 데이터의 최소 기본단위다. '사과 한 개'라고 표현할 때 물건을 세는 단위가 '개'인 것처럼 데이터를 세는 가장 작은 단위를 비트라고 보면 된다. 영어로는 소문자 'b'로 표기한다.
'01000001'로 처리된 8자리 숫자묶음은 바이트(Byte)라고 부른다. 반도체 집적회로를 처음 개발한 미국에선 0이나 1(곧 1비트)로 구성된 8자리 숫자로 알파벳을 표현하기에 큰 불편이 없었다. 그래서 8비트(1바이트)를 문자나 숫자의 기본단위로 삼았다. 8개의 비트(bit)가 1바이트(Byte)를 이룬다. 알파벳 한글자의 용량은 1바이트다.
한글이나 한자는 16비트, 곧 2바이트(2*8bit)로 이뤄져있다. 한글은 자음, 모음, 받침을 결합해 사용하기 때문에 1바이트로 처리하는데 한계가 있다. 글자 하나하나가 의미를 갖고 있는 한자는 더더욱 그렇다. 그래서 한글이나 한자는 2바이트를 할당했다. 원고지 한칸에 한글이나 한자는 한글자만 쓰고, 영어나 숫자는 한칸에 두자씩 쓰기로 한 것과 비슷하다.
이를 쉽게 확인하려면 컴퓨터의 메모장을 이용하면 된다. 메모장에 '대한민국'이라는 단어를 입력하고 저장한다. 해당 파일에 마우스 오른쪽 단추를 클릭한다. 이 때 뜬 창에서 '속성'을 누르면 '크기'를 볼 수 있다. 대한민국이라는 글자는 8바이트로 나온다. 마찬가지로 'KOREA'를 입력한 뒤 확인해보면 우리가 입력한 데이터가 5바이트라는 걸 알 수 있다.
앞의 질문으로 돌아가자. 팔만대장경은 한자 5200여만자로 돼있다. 글자당 2바이트를 차지하니 1억400만바이트(5200만*2Byte)의 용량이 필요하다. 비트로 환산하면 8억3200만비트(1억400만*8bit)다.
숫자가 커서 실감이 나지 않으면 킬로(Kilo)나 메가(Mega), 기가(Giga)라는 단위를 붙이면 확 다가온다. (아래 설명 참조)
팔만대장경의 1억400만바이트는 99메가바이트(MB)를 약간 넘는 용량이다. 옥션이나 11번가 등 오픈마켓에선 8000원이면 16기가바이트(GB)짜리 이동식저장장치(USB)를 구입할 수 있는데 여기에 팔만대장경을 저장해도 USB 전체에서 차지하는 용량은 0.6%에 불과하다.
그만큼 현대사회의 데이터 저장능력은 엄청나게 늘었다. 스마트폰만 하더라도 지난해 출시한 갤럭시S7은 저장공간이 32GB부터 시작했는데 올해 나온 갤럭시S8에선 32GB짜리를 찾아볼 수 없다. 62GB 아니면 128GB짜리다.
이에 더해 인공지능과 사물인터넷, 빅데이터로 표현되는 4차 산업혁명 바람이 불면서 더 큰 용량을 저장하거나 처리할 수 있는 반도체에 대한 갈망은 식을 줄 모르고 있다. 삼성전자와 SK하이닉스 등 반도체 업체들이 분기마다 수조원의 돈을 쓸어담는데는 이유가 있는 법이다.
※ 킬로(K), 메가(M), 기가(G)
일반적으로 킬로는 1000, 메가는 100만(1000*1000), 기가는 10억(1000*1000*1000)을 뜻한다. 그런데 컴퓨터에선 약간 다르다. 이진법을 사용하는 컴퓨터에서 1000에 가장 가까운 숫자는 2의 10승인 1024다. (2의 9승은 512이고, 2의 11승은 2028이다. 1000과 차이가 나도 너무 난다.)
그래서 컴퓨터에선 1킬로바이트(KB)가 1024바이트다. 이런식으로 1메가바이트(MB)는 1024KB(1024*1024바이트), 1기가바이트(1GB)는 1024MB(1024*1024*1024바이트)가 된다.
여기서 헷갈리지 말아야할 게 있다. Kb, Mb, Gb는 각각 킬로비트, 메가비트, 기가비트로 읽는다. 뒤의 영어 'b'가 소문자라는 점을 유심히 봐야한다. 곧 비트(bit)다. 1GB는 1024MB지만, 1Gb는 128MB다.
기업들은 마케팅 목적으로 곧잘 '기가'라는 점만 부각하는데 똑똑한 소비자라면 이 때의 기가가 기가바이트(GB)인지, 기가비트(Gb)인지를 알아볼 필요가 있다. 대문자와 소문자를 어떻게 읽고 쓰는지에 따라 용량차이가 크게 난다.