computer_mechanism

DNS 기초 지식 – 컴퓨터의 실체와 작동 원리 下

외계인에게 보낸 메시지

1974년 11월 16일, 외계 지적 생명체 탐사 연구소인 SETI(Search for Extra-Terrestrial Intelligence)에서 머나먼 우주 공간을 향해 전파를 발송합니다. (아레시보 메시지 참조) 단순한 전파가 아닌 지구와 인간에 대한 중요한 정보를 담아 보냄으로써 외계의 지적 생명체가 응답해 오기를 기대했습니다.

신호는 아래 위로 일정한 굴곡을 가지는 파동의 길이(주파수)를 조정하는 방식으로 보내졌습니다. 봉화의 수가 의미를 담아내듯 파동의 길이 변화를 짧게 또는 길게 조정하는 식으로 그 횟수에 일정한 패턴을 주었습니다.

그런데 여기서 재미 있는 점은 외계인이 전파를 감지한다고 하더라도, 인간이 보낸 메시지를 알아 보기는 할까요? 그리고 전파라는 것이 어떻게 메시지를 보낸다는 것일까요?

만약 외계에 인간의 지능 이상을 가진 생명체가 존재한다면 이 신호의 패턴을 파악할 수 있을 것입니다. 인간의 숫자나 언어를 모른다 하더라도 말이죠. 따라서 신호의 의미를 파악하는 일은 외계인에 맡겨 두고, 우리는 SETI가 신호를 보낸 방식에 대해 잠시 살펴볼 것입니다.

우선 SETI가 보낸 메시지를 숫자와 이미지로 표현하면 다음과 같습니다.

<그림1. 이미지로 표현한 전파 메시지(출처)>

이미지로 표현한 전파 메시지

<그림2. 숫자로 표현한 전파 메시지(출처)>

숫자로 표현한 전파 메시지

이 내용을 전달하는 이유는 이것이 바로 ‘컴퓨터’이기 때문입니다. 전파는 무선 통신에서 그대로 사용되고 있고 유선 통신에서는 전선을 이용한 전기 동력으로 전압이나 전류를 조정하여 전파의 길이를 조정하게 됩니다. 무슨 말이냐고요?

먼저 그림1을 보시기 바랍니다. 각각의 사각형을 모두 전선이 연결된 조그만 전구로 보고, 흰 색 부분은 전구가 꺼진 상태로 그리고 검은 색 부분은 켜진 상태로 생각합니다. 그리고 꺼진 상태는 ‘0’으로 켜진 상태는 ‘1’로 표시하기로 합니다.

이제 그림2를 보시기 바랍니다. 가로(23개) 및 세로(73개)로 배열된 사각형의 총 수는 1,679개입니다. 봉수대를 동일한 배열로 세워 놓고 연기를 피운다면 끔찍하겠지만 전기가 있으니 그럴 걱정은 없습니다. 간단히 첫 번째 메시지만 확인해 보도록 하겠습니다.

그림 1과 2에서 위로부터 4번째 줄까지 잘라서 결합해 보면 다음과 같습니다.

아레시보 메시지의 의미

파란색 표시는 일종의 구분자 역할을 하는 것입니다. 즉, 세로로 늘어선 0의 좌측 위에서 읽어 나가 하단의 1 직전에서 멈추면 됩니다. 그럼 좌측부터 정리하면 다음과 같습니다.

1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010

바로 이진법으로 표현된 우리에게 익숙한 숫자 1~10입니다. 이진법의 숫자 체계로 10진법의 수를 첫 메시지로 담아냈다는 점은 매우 의미심장합니다. 아레시보 전파 신호가 담은 아래 내용들을 보면 그 이유를 알 수 있습니다.

1. 1에서 10까지의 숫자
2. 디옥시리보핵산(DNA)의 구성 원자인 수소, 탄소, 질소, 산소, 인의 원자 번호
3. DNA의 뉴클레오타이드를 이루는 당과 염기의 화학식
4. DNA의 뉴클레오타이드의 수와 DNA 이중나선 구조의 모양
5. 인간의 형체, 평균적 남성의 크기(물리적 신장), 지구의 인간 개체 수
6. 태양계의 모습
7. 메시지를 발송한 전파 접시가 있는 아레시보 천문대의 모습과 그 크기

인간의 형체, 태양계의 배치, 아레시보 천문대의 모습 정도만이 이미지 형태이고 나머지는 모두 10진법에 기초한 숫자가 주요 정보를 구성합니다. 즉 (1)에서 이진법의 원리로 1~10까지의 숫자를 알려준 후 주요한 정보(주요 원소의 원자 번호, DNA를 구성하는 원자의 수, 인구 수 등)는 10진법에 기초한 숫자로 정보를 전달합니다.

컴퓨터의 작동 원리, 0과 1

다시 한번 강조하지만 전파는 보이지 않습니다. 위 그림 1과 2는 그 전파의 의미를 인간이 볼 수 있는 형태로 가공한 것입니다. 컴퓨터의 실체 및 작동 원리 또한 이와 같습니다.

컴퓨터의 핵심 부품 자체는 무수한 전기회로와 다르지 않습니다. 위 아레시보 신호의 의미를 조금 확장하여 정리하면 다음과 같습니다.

  • 전기를 통하게 하거나 멈추는 방식으로 신호를 만들 수 있다.
  • 인간이 이해할 수 있도록 전기의 전달과 차단을 0과 1이라는 숫자로 개념화한다.
  • 그럼에도 불구하고 0과 1의 숫자 배열은 현대인의 사고 체계에 익숙하지 않다
  • 인간은 언어와 10진법의 숫자 체계(1~10)를 알고 있다.
  • 따라서 인간의 언어(자음, 모음)와 10진법의 숫자에 일치하는 0과 1의 배열 코드표를 만든다면 직접 기계에 말을 할 수 있다. (ASCII 코드표 참조, American Standard Code for Information Interchange의 약어)
  • 키보드의 자판은 인간의 언어와 10진법에 기반한 숫자를 0과 1의 배열 코드표와 다르지 않다.
  • 키보드를 치게 되면(전자 회로로 신호를 보내면) 컴퓨터는 그 숫자나 문자에 해당하는 전기 신호를 받아 0과 1의 배열 형태로 저장한다.
  • 0과 1로 저장된 정보를 우리는 파일이라 부른다.
  • 지정한 파일을 열어 저장된 정보를 스크린으로 불러오면 기계는 0과 1의 배열에 맞는 전기 신호를 찾아 인간의 문자와 숫자를 재생한다.

물론 이러한 과정에서 0과 1이라는 전기 신호의 전달 및 처리에는 상상을 초월하는 속도와 어마어마한 양의 정보를 저장할 수 있는 기술력이 뒷받침 되고 있습니다. 보다 조그마한 칩에, 보다 많은 회로를 담아, 보다 빠르게 신호를 처리하고, 보다 많은 양의 정보를 저장하여, 보다 빨리 재생하려는 경쟁이 바로 이 0과 1의 배열 경쟁에 있다고 할 수 있습니다.

컴퓨터라는 기계는 이러한 전기 신호 전달을 위한 복잡한 전자회로이며 이러한 회로를 작동시키기 위한 프로그램들이 운영체제로 대표되는 ‘소프트웨어’입니다. 하드웨어 경쟁은 전자회로의 집적 기술, 처리 속도 및 저장 용량에 맞추어 이루어지고 운영체제는 0과 1의 신호를 입력, 저장, 출력하는 방식의 효율성에 집중하여 각기 다른 방식으로 발전하여 왔습니다.

To be or not to be that’s the question. 1이냐 0이냐 그것이 문제입니다.

이제 세상이 0과 1의 숫자로 보이시나요?