인류는 수학 계산을 좀 더 편리하고 정확하게 하기 위해 여러가지 도구를 만들었다. 그 중 주판은 여러 고대 문명에서 사용되었다.
우리나라에는 1400년대경에 중국에서 주판이 전래되었고 1980년대까지 개인은 물론이고 은행에서도 주판을 사용하였다. 그 후, 컴퓨터가 보급되면서 거의 자취를 감추었다.
서양에서는 17세기에 파스칼과 라이프니츠가 톱니 바퀴 등을 이용해서 기계적 계산기를 만들었다.
1822년 영국의 수학자 찰스 배비지(1791~1871)는 로그와 삼각 함수를 표로 만들기 위해 처음 기계식 계산기인 차분기관(difference engine)을 설계했다.
1815년 영국의 대표적인 낭만 시인인 조지 고든 바이런의 딸로 태어난 에이다 러브레이스는 아버지가 일찍이 가족을 버린탓에 홀어머니 밑에서 자랐다. 어머니는 딸이 아버지를 닮을지도 모른다는 불안감에 에이다에게 문학 대신 수학과 과학을 배우도록 하였다.
당시 유명한 과학자들이 에이다를 가르쳤고, 그 중에는 드모르간의 법칙으로 유명한 수학자 드모로그간도 있었다. 그 결과, 드모르간이 인정할 정도로 수학에 큰 재능을 보인다.
17살이 된 에이다는 우연한 기회에 찰스 배비지가 만든 차분기관(difference engine)을 보게 된다.
배비지는 이후, 오늘날 컴퓨터와 같은 범용적인 계산기를 만들기 위해 1837년에 발표한 해석기관(Analytical Engine)은 저장 장치, 연산 장치, 프린터 등을 갖추고, 천공 카드로 프로그램과 계산식을 입력할 수 있도록 고안되었다. 프로그램은 현대의 어셈블리어와 유사했고, 증기기관을 이용하도록 설계되었다[3]
그녀가 해석기관을 설명할 목적으로 베르누이 수를 구하는 알고리즘을 만들었는데, 이를 최초의 컴퓨터 프로그램으로 평가하고 있다.
“해석기관을 설명하려면 좋은 예가 필요하지”
당시 에이다는 자신이 만든 알고리즘에서 현대 프로그래밍 언어에서 사용되는 중요한 개념인 루프, Goto, 제어문의 개념을 처음으로 소개하였다. 이런 공로로 그녀를 세계 최초의 프로그래머라고 부르기도 한다. 또한, 그녀의 이름을 딴 에이다라는 프로그래밍 언어도 존재한다.
하지만, 찰스 배비지는 자금 부족과기술적 한계로 차분기관과 해석기관을 완성하지는 못했고, 에이다도 자신이 만든 알고리즘을 한 번도 실행시켜보지 못했다.
1989년 부터 1991년 동안 찰스 배비지가 남긴 설계도를 기반으로 실제 차분기관 2호를 완성시켰는데, 놀랍게도 31개 자리수를 계산할 수 있었다.
참고