본문 바로가기
아는게 힘이다/역사

산가지, 잊혀진 동아시아의 '고대 컴퓨터'

by 후쿠선장 2025. 8. 11.
반응형

산가지, 잊혀진 알고리즘의 위대한 여정

주판 이전, 2천 년을 지배한 동아시아의 '고대 컴퓨터' 이야기

프롤로그: 주판, 그 이전의 이야기

여러분, ‘계산기’ 하면 무엇이 떠오르시나요? 아마 대부분 주판이나 전자계산기를 떠올리실 겁니다. 하지만 주판이 동아시아를 휩쓸기 훨씬 전, 무려 2천 년이 넘는 시간 동안 동아시아 사람들의 머릿속을 지배했던 위대한 ‘고대 컴퓨터’가 있었습니다. 그 이름은 바로 산가지(算木)입니다.

사람들은 종종 산가지를 주판의 원시적인 조상쯤으로 생각하곤 해요. 하지만 그건 정말 큰 오해입니다. 산가지는 단순히 숫자를 세는 막대기가 아니었어요. 그 자체로 완벽한 시스템을 갖춘, 당시로서는 최첨단의 계산 도구이자, 대수학이라는 추상적인 세계를 탐험하게 해준 놀라운 컴퓨터였죠. 서양에서는 한참 뒤에나 등장할 개념들을 이미 물리적인 막대기로 구현해냈으니까요.

자, 지금부터 저와 함께 시간 여행을 떠나보시죠. 단순한 계산 도구를 넘어, 하나의 문명을 만들고, 한 시대의 지적 사고를 지배했으며, 결국 역사의 뒤안길로 사라져야 했던 이 잊혀진 영웅, 산가지의 파란만장한 일대기를 따라가 보겠습니다.

제1장: 고대 컴퓨터의 탄생

먼 옛날, 그 시작은

산가지의 탄생 비화는 놀랍게도 수학책이 아닌, 아주 오래된 철학책과 병법서에서 시작됩니다. 때는 바야흐로 기원전 5세기, 수많은 나라들이 다투던 중국의 전국시대. 당시 화폐에서는 이미 산가지로 표현된 숫자가 발견되었어요[1]. 이는 산가지가 아주 일찍부터 세금을 걷거나 물건을 거래하는 데 쓰였다는 뜻이죠.

심지어 위대한 사상가 노자(老子)는 그의 책 『도덕경(道德經)』에서 이런 말을 남겼습니다. "진정으로 계산을 잘하는 사람은 산가지에 의존하지 않는다(善數不用籌策)."[1] 이 말은 역설적으로 당시 지식인들 사이에서 산가지가 얼마나 체계적이고 보편적인 계산법의 상징이었는지를 보여줍니다. 천하의 전략가 손자(孫子)마저도 전쟁에서 이길 확률을 계산하기 위해 산가지를 언급했을 정도니까요.[3]

이런 기록들은 1950년대와 70년대, 중국의 고대 무덤에서 실제 산가지 유물이 쏟아져 나오면서 생생한 현실이 되었습니다.[3] 이 발견은 산가지가 적어도 기원전 5세기부터는 국가 운영의 핵심 도구였다는 강력한 증거입니다.

여기서 중요한 사실 하나! 산가지의 첫 등장이 순수한 수학적 탐구가 아니라 세금, 달력, 전쟁 전략 같은 아주 현실적인 문제 해결을 위해서였다는 점입니다. 즉, 산가지는 처음부터 '응용 과학'의 산물이었던 셈이죠. 바로 이 실용적인 태생이 산가지 계산법을 오늘날 컴퓨터 프로그래밍처럼 절차적이고 논리적인, 즉 알고리즘적인 특성을 갖게 만든 근본적인 이유가 됩니다.

대나무 막대기에 담긴 약속

그렇다면 이 고대의 컴퓨터는 어떻게 생겼을까요? 『한서(漢書)』「율력지(律曆志)」에는 아주 구체적인 기록이 남아있습니다. 산가지는 주로 대나무로 만들었고, 길이는 약 14cm, 지름은 0.7cm 정도였어요. 손에 쥐기 딱 좋은 크기였죠. 271개의 산가지를 육각형 통에 넣어 다녔다고 하니, 제법 그럴듯한 전문가의 도구 같지 않나요?[4] 물론 시간이 흐르면서 상아나 금속 같은 고급 재료로도 만들어졌습니다.[4]

한나라 시대에 이르러 이처럼 규격이 통일되었다는 것은, 산가지가 더 이상 개인의 도구가 아니라, 국가가 세금 계산이나 대규모 토목 공사의 정확성을 위해 표준화한 공식적인 인지 도구였음을 의미합니다. 이것은 동아시아 전역에 공통된 수학적 언어를 퍼뜨리는 중요한 기반이 되었죠.

이 멋진 도구는 동아시아 곳곳에서 사랑받았습니다. 한국에서는 '산가지', '산목(算木)'[1], 중국에서는 '산주(算籌)'[1], 일본에서는 '산기(算木)'[5]라 불렸죠. 이름은 조금씩 달라도, 모두가 같은 시스템을 공유하며 수학이라는 거대한 세계를 함께 탐험했던 겁니다.

제2장: 시대를 앞서간 설계의 비밀

열 칸의 마법, 위치 기수법

산가지 시스템의 가장 위대한 점은 바로 완벽한 십진 위치 기수법(decimal place-value system)을 사용했다는 것입니다.[3] 계산판 위에서 산가지 묶음의 값은 어느 '열'에 놓이느냐에 따라 결정됐어요. 오른쪽부터 일, 십, 백, 천의 자리가 정해져 있었죠. 숫자를 왼쪽으로 한 칸 옮길 때마다 그 값은 정확히 10배가 되었습니다.[10]

이게 왜 대단하냐고요? 당시 유럽에서 쓰던 로마 숫자를 생각해보세요. 큰 숫자를 표현하고 계산하려면 얼마나 복잡하고 비효율적인가요. 산가지는 훨씬 적은 기호로 아주 큰 숫자까지 명확하게 표현하고 계산할 수 있었으니, 그야말로 수학사의 혁명이었죠.[13]

세로와 가로, 엇갈림의 미학

그런데 만약 '12'와 '3'을 산가지로 놓는다고 생각해보세요. '12'는 한 개짜리 막대와 두 개짜리 막대, '3'은 세 개짜리 막대입니다. 자칫하면 이게 12인지, 3인지 헷갈릴 수 있겠죠?

동아시아의 옛 수학자들은 이 문제를 아주 독창적이고 시각적인 방법으로 해결했습니다. 바로 자릿수마다 놓는 방향을 바꾸는 것이었죠. 일의 자리, 백의 자리 같은 홀수 자리는 세로(縱)로 놓고, 십의 자리, 천의 자리 같은 짝수 자리는 가로(橫)로 놓았습니다.[3] 예를 들어 12는 가로로 놓인 막대 하나(十)와 세로로 놓인 막대 둘(二)로 표현해서 '⊤∣∣' 처럼 보였고, 3은 세로 막대 셋 '∣∣∣' 이었으니 헷갈릴 염려가 전혀 없었습니다. 정말 우아한 설계 아닌가요?

눈에 보이지 않는 것을 보다: 0, 음수, 분수

산가지의 진정한 위대함은 눈에 보이지 않는 추상적인 개념을 눈에 보이는 물리적인 형태로 구현했다는 데 있습니다.

  • 0의 발견: 요즘이야 숫자 0이 당연하지만, 예전에는 '없음'을 나타내는 기호가 있다는 것 자체가 획기적인 발상이었습니다. 산가지 체계에서는 특정 자릿값이 비어있으면 그냥 그 자리를 '빈 공간'으로 두었어요.[3] 다른 문명에서 0이라는 '기호'를 발명하기 훨씬 전에, 이미 자릿값을 유지하는 'placeholder'의 개념을 물리적으로 완벽하게 구현한 셈이죠. 이 빈 공간은 그 자체로 '0'이라는 개념의 완벽한 표현이었습니다. 나중에는 기록의 편의를 위해 동그라미(〇) 기호가 도입되기도 했습니다.[3]
  • 빚의 개념, 음수: 유럽 수학이 음수를 받아들이기까지 수백 년이 걸렸지만, 동아시아에서는 일찍이 음수를 자유자재로 다뤘습니다. 어떻게 가능했을까요? 바로 산가지 덕분이었죠. 붉은색 산가지는 양수, 검은색 산가지는 음수를 나타내거나[3], 음수를 나타낼 때 마지막 산가지를 살짝 비스듬히 놓는 식으로 구분했습니다.[4] 이 개념은 『구장산술(九章算術)』 같은 옛 수학책에서 연립방정식을 풀 때 자연스럽게 등장했어요. 작은 수에서 큰 수를 빼야 하는 상황이 생기자, '이건 빚진 것과 같네?'라며 색깔로 구분하는 실용적인 해결책을 찾았고, 이것이 바로 '음수'라는 추상적 개념으로 발전한 것입니다.[15]
  • 나눗셈의 표현, 분수: 분수는 더 놀랍습니다. 분자는 위쪽에, 분모는 아래쪽에 산가지 숫자를 배치했어요. 현대의 분수 표기법과 거의 똑같죠?[3]
산가지 숫자 표현법
아라비아 숫자 세로놓기 (일, 백...) 가로놓기 (십, 천...)
1
2 ∣∣ =
3 ∣∣∣
4 ∣∣∣∣
5 ∣∣∣∣∣
6
7 ⊤∣
8 ⊤∣∣
9 ⊤∣∣∣
예시: 2024 ∣∣ (공백) ∣∣ ∣∣∣∣
예시: 0 (공백) 또는 〇
예시: -47 ≡≡╱ (비스듬한 막대로 음수 표기)

제3장: 손끝에서 펼쳐지는 알고리즘

계산은 기계처럼, 생각은 사람처럼

산가지를 이용한 계산법, 즉 주산(籌算)은 단순히 구구단을 외워서 답을 찾는 방식이 아니었습니다. 계산판 위에서 산가지를 직접 옮기고, 더하고, 빼고, 재배열하는 물리적이고 절차적인 과정 그 자체였죠.[16] 물론 구구단 같은 기본적인 암기는 필요했지만[12], 복잡한 곱셈이나 나눗셈은 정해진 규칙, 즉 알고리즘에 따라 산가지를 착착 움직여서 풀었습니다. 예를 들어 곱셈은 계산판 맨 위에 곱할 수를, 아래에 곱하는 수를 놓고, 중간 줄에서 부분적인 곱들을 계산해 합치는 방식으로 진행됐어요. 아주 시각적이고 체계적이었죠.[12]

시대를 초월한 고급 수학

산가지 계산법의 진정한 힘은 사칙연산을 넘어선 고차원적인 문제 해결 능력에서 드러납니다.

  • 개방술(開方術): 제곱근(√)이나 세제곱근(∛)을 구하는 알고리즘인 개방술은 산가지 계산법의 꽃이라 할 수 있습니다.[5] 먼저 대략적인 값을 설정한 뒤, 오차를 계속해서 수정해나가며 정답에 가까워지는 방식이었죠. 놀랍게도 이 원리는 현대 수치해석학에서 사용하는 '호너법(Horner's method)'과 사실상 같습니다.
  • 연립방정식과 행렬: 『구장산술(九章算術)』에 나오는 연립방정식 풀이법은 정말 감탄을 자아냅니다. 방정식의 계수들을 계산판 위에 줄을 맞춰 늘어놓은 뒤, 한 줄과 다른 줄을 더하고 빼면서 변수를 하나씩 없애나가는 방식이었어요.[9] 이것은 현대 수학에서 행렬(matrix)을 이용해 가우스 소거법으로 연립방정식을 푸는 과정과 기능적으로 완전히 동일합니다.[10] 산가지와 계산판이 하나의 거대한 행렬 계산기 역할을 했던 셈이죠.

대수학의 정점, 천원술(天元術)

산가지 대수학의 최고봉은 바로 천원술(天元術)입니다.[14] 미지수 x가 포함된 고차 방정식을 세우고 그 해를 구하는 방법이었죠. 먼저 문제 속의 미지수를 '천원(天元)'이라고 부릅니다. 그리고 문제의 조건에 따라 천원에 대한 다항식을 만들어요. 이때 상수항 옆에는 '태(太)'라고 표시하고, 그 위로 1차항(x), 2차항(x²), 3차항(x³)의 계수들을 차례로 쌓아 올렸습니다. 이렇게 시각적으로 표현된 방정식을 조립제법과 비슷한 알고리즘을 반복해서 풀어냈던 겁니다.[22]

이 모든 과정은 단순히 규칙의 나열이 아니었습니다. 계산판과 산가지는 하나의 물리적인 '컴퓨터'였고, 알고리즘은 이 컴퓨터를 작동시키는 구체적인 '프로그램'이었습니다. 연립방정식을 푸는 것은 행렬 연산을 손으로 직접 실행하는 것이었고, 천원술은 다항식이라는 데이터를 정해진 절차에 따라 처리하는 과정이었죠. 산가지 시스템은 수학자들에게 문제를 해결하기 위한 명확하고 반복 가능한 단계, 즉 알고리즘적 사고를 자연스럽게 체득하게 했습니다. 이는 현대 컴퓨터 과학의 심장과도 같은 사고방식과 본질적으로 같습니다.[25]

제4장: 조선, 산가지의 황금기를 열다

홀로 지켜낸 자존심

신기하게도, 중국과 일본에서는 상업이 발달하면서 계산이 빠른 주판이 유행하기 시작했고, 산가지는 점차 잊혀갔습니다. 하지만 조선에서는 오히려 산가지가 그 명맥을 유지하며 더욱 발전하는 독특한 길을 걸었습니다.[1]

왜 그랬을까요? 첫째, 조선은 국가가 주관하는 기술직 관리 시험인 잡과(雜科)에서 단순 계산 능력보다 복잡한 방정식을 푸는 이론 수학을 더 중요하게 여겼습니다.[27] 둘째, 명나라에 비해 상업 발달이 더뎌 주판의 필요성이 상대적으로 덜했죠.[4] 덕분에 조선의 수학자들은 산가지라는 훌륭한 도구를 가지고 대수학이라는 깊고 푸른 바다를 마음껏 항해할 수 있었습니다.

조선 수학의 슈퍼스타, 홍정하

조선 산학의 황금기는 18세기, 중인 출신 수학자 홍정하(洪正夏)의 손에서 활짝 피어났습니다.[22] 그의 책 『구일집(九一集)』은 당시 동아시아 수학이 도달할 수 있는 최고 수준을 보여주는 기념비적인 작품입니다. 이 책에는 산가지를 이용한 천원술로 무려 10차 다항방정식의 해를 구하는 과정까지 자세히 실려 있습니다.[24] 주판으로는 상상조차 하기 힘든 고도의 대수학 문제였죠.

1713년, 그의 명성을 보여주는 극적인 사건이 있었습니다. 조선을 방문한 청나라 사신 하국주(何國柱)가 당대 최고의 수학자라며 으스대자, 홍정하가 그와 수학 실력을 겨루게 된 것입니다.[32] 하국주가 낸 복잡한 방정식 문제를 홍정하는 천원술을 이용해 눈앞에서 풀어내 그를 깜짝 놀라게 했습니다. 반면, 하국주는 서양에서 들여온 삼각함수 지식을 소개해 조선 수학계에 새로운 바람을 불어넣었죠.[33]

이 일화는 산가지 중심의 전통 대수학에서 정점을 찍은 조선과, 서양 수학을 흡수하며 새로운 길을 찾던 청나라 수학의 지적인 만남을 상징하는 중요한 장면입니다. 남들이 모두 상업적 실용성을 좇아 주판으로 갈아탈 때, 조선은 국가 제도를 통해 이론적 깊이를 추구하며 산가지를 고수했습니다. 어찌 보면 '시대에 뒤처진' 선택처럼 보일 수도 있지만, 다른 관점에서는 더 높은 차원의 수학에 대한 '지적인 집중'이었다고 평가할 수 있지 않을까요?

제5장: 영웅의 쓸쓸한 퇴장

속도의 도전자, 주판

조선에서 오랫동안 왕좌를 지켰던 산가지도 결국 새로운 도전자를 맞이하게 됩니다. 바로 주판이었죠. 일상적인 덧셈, 뺄셈에서는 주판이 산가지보다 훨씬 빨랐습니다.[34] 인조 때의 학자 최석정(崔錫鼎)은 『구수략(九數略)』에서 주판이 오히려 번거롭다고 평가하기도 했지만[28], 상인들을 중심으로 그 편리함은 거부할 수 없는 매력이었습니다. 산가지와 주판의 경쟁은, 비유하자면 '전문가용 고성능 컴퓨터(산가지)'와 '일상용 스마트폰(주판)'의 대결과 같았습니다. 결국 승리는 범용성의 힘으로 기울었죠.

거대한 물결, 서양 수학의 도래

하지만 산가지의 숨통을 완전히 끊어놓은 것은 19세기 말, 개화기의 문을 열고 들어온 서양 수학이었습니다.[35] 정부 주도의 근대화 정책에 따라 새로운 학교들이 세워졌고, 그곳에서는 아라비아 숫자와 필산(筆算)을 가르치는 신식 교과서가 보급되기 시작했습니다.[36]

초기 교과서들은 한문으로 된 세로쓰기 본문과 아라비아 숫자로 된 가로쓰기 수식이 뒤섞인, 과도기적인 모습을 보여줍니다.[37] 이는 수천 년간 이어져 온 전통 지식 체계가 서구라는 거대한 패러다임 앞에 흔들리던 당시의 문화적 충격을 고스란히 보여주는 장면입니다. 아라비아 숫자의 도입은 단순히 계산법을 바꾸는 문제가 아니었어요. 서구 열강과의 경쟁에서 살아남기 위한 국가적 근대화 프로젝트의 일부였던 겁니다.[38]

산가지의 쇠퇴는 단순한 기술의 패배가 아니었습니다. 그것은 동아시아가 독자적으로 발전시켜 온 고유한 수학의 세계가, 서구 중심의 새로운 글로벌 지식 체계 속으로 흡수되는 문명사적 전환의 한 단면이었습니다. 산가지의 소멸은 하나의 계산법이 사라진 것을 넘어, 하나의 독자적인 지적 세계가 역사의 뒤안길로 사라졌음을 의미하는, 조금은 슬픈 이야기입니다.

제6장: 사라지지 않는 메아리

우리 곁에 남은 흔적들

산가지는 계산 도구로서의 생명은 다했지만, 그 영혼은 오늘날 우리 문화와 언어 속에 여전히 살아 숨 쉬고 있습니다.

  • 언어 속 산가지: "잘 되어가던 일을 망쳤다"는 의미로 쓰는 "산통을 깨다"라는 말이 있죠?[6] 여기서 '산통'이 바로 점을 칠 때 쓰던 산가지 통입니다. 점괘가 담긴 산가지 통을 깨뜨려 운명을 알 수 없게 만든 상황에서 유래한 말이죠.[17]
  • 음식 속 산가지: 우리가 즐겨 먹는 꼬치 요리, '산적(散炙)'의 이름도 산가지에서 왔습니다. 꼬치에 꿰어진 고기와 채소의 모습이 마치 산가지를 흩어놓은 것 같다고 해서 붙여진 이름이랍니다.[41]

교실에서 다시 태어난 산가지

놀랍게도, 산가지는 최근 그 교육적 가치를 인정받으며 다시 우리 곁으로 돌아오고 있습니다. 산가지 막대를 이용한 놀이와 퍼즐은 아이들에게 덧셈, 뺄셈 같은 기초 산술 능력은 물론, 도형을 만들고 바꾸는 과정을 통해 공간 지각력과 창의력을 길러주는 훌륭한 교구가 되고 있습니다.[7]

더 나아가, 산가지 계산법이 가진 그 절차적이고 규칙적인 특성은 현대 STEM 교육에서 강조하는 컴퓨팅 사고력(Computational Thinking)을 가르치는 데 아주 효과적입니다.[25] 정해진 규칙에 따라 물리적으로 막대를 조작하며 문제를 푸는 과정 자체가, 알고리즘의 기본 원리를 몸으로 직접 느끼고 배우게 하는 최고의 방법이니까요.

산가지의 현대적 유산은 그 기능이 '계산'에서 '생각하는 법을 가르치는 훈련'으로 바뀌었음을 보여줍니다. 실용적인 계산 도구로서는 낡았지만, 그 안에 담긴 논리적 원리는 시대를 초월해 사고의 과정을 가르치는 훌륭한 매개체로 재탄생한 것입니다.

결론: 잊혀진 알고리즘을 기리며

지금까지의 여정을 통해, 우리는 산가지가 단순한 셈 도구가 아니라 동아시아 수학을 이끈 정교한 알고리즘 시스템이었음을 확인했습니다. 십진법, 위치 기수법, 0과 음수의 개념을 물리적으로 구현한 이 경이로운 도구는 특히 대수학 분야에서 독보적인 발전을 이끌었고, 그 찬란한 정점은 조선의 홍정하에 의해 완성되었습니다.

산가지의 역사는 '도구가 인간의 생각을 어떻게 만드는가'를 보여주는 완벽한 사례입니다. 계산판 위에서 규칙에 따라 막대를 움직이는 행위는 자연스럽게 알고리즘적 사고를 몸에 배게 했고, 이는 현대 컴퓨터 과학의 정신과 정확히 맞닿아 있습니다. 산가지의 퇴장은 기술이 부족해서가 아니라, 서구 중심의 근대화라는 거스를 수 없는 문명사적 전환 속에서 맞이한 필연적인 운명이었습니다.

오늘날 우리는 산가지를 박물관의 유물로서만 기억해서는 안 됩니다. 그 안에 담긴 수학적 원리와 교육적 가치를 통해 그 지혜를 되살려야 합니다. 인류의 지적 성취가 단 하나의 길로만 이루어진 것이 아님을 상기시키면서 말이죠.

잊혀진 계산기 산가지. 그것은 동아시아가 낳은 위대한 알고리즘이자, 역사 속에서 마땅히 재평가받아야 할 우리의 자랑스러운 유산입니다.

반응형