2진법을 활용한 진공관 컴퓨터 에니악(ENIAC)의 등장
앞서 우리는 동전의 앞면과 뒷면을 이용해 ‘0’과 ‘1’을 표현하면서 2진수라는 개념이 어떤 것인지 간단히 살펴 보았습니다. 아주 간단하지만, 이것이 바로 컴퓨터가 숫자를 다루는 방식이기도 하다는 것도 함께 이야기했죠.
그리고 원래 컴퓨터(Computer)
는 인간 컴퓨터(Human Computer)
로 계산하는 "사람"을 의미
했다는 이야기도 다루며, 이 의미는 20세기 중반
부터 계산하는 기계
로 변화했다고 이야기 했었습니다.

여기서 말하는 20세기 중반
이라 함은 1946년경(1946년 2월 14일)으로 30대의 물리학자 마우쿨리(John Mauchly)
와 20대 전기과 대학원생 에커트(J. Presper Eckert)
에 의해 에니악(ENIAC)
이라는 탄도학 계산을 목적으로 만들어진 30톤짜리 컴퓨터(Computer)
가 등장한 시점과 관련이 있는데, 이 에니악(ENIAC)은 진공관
을 사용하는 1세대 컴퓨터
로 전기를 활용하며 2진법을 기반으로 동작한다는 점에서 현대의 컴퓨터와 공통된 특징을 공유하고 있습니다.

전기를 이용해서 2진법을 어떻게 표현했을까요?
자, 그러면 여기서 질문 하나 나갑니다.
“동전처럼 눈에 보이는 앞 뒷면도 아니고, 컴퓨터는 눈에 보이지 않는 전기를 어떻게 써서 0과 1을 표현할 수 있을까요?”
보통 컴퓨터는 전기 통하면 1 통하지 않으면 0 이라고 이야기 하는데, 더 정확히는 전류의 흐름과 전압의 세기를 이용해서 0과 1을 구분하게 됩니다. 이걸 요약하면 이렇게 정리할 수 있어요.
상태 | 전기 흐름 | 2진수 값 |
---|---|---|
전류가 흐름 | ON (전압 있음) | 1 |
전류가 흐르지 않음 | OFF (전압 없음) | 0 |
전류가 흐르는 것은 다음의 그림을 보면 쉽게 이해할 수 있는데, 스위치가 동작하여 전기가 흐르고 있다면 1, 전기가 흐르고 있지 않으면 0과 같이 표현을 해볼 수 있을 거에요.

그러면 여기서 두 번째 질문 갑니다.
"전기가 흐르지 않는 경우에 0이라고 했는데, 컴퓨터에서 전기가 흐르지 않으면 0과 1 처리를 어떻게 이어서 할 수 있을까요?"
즉 전기가 흐르고 있느냐 없느냐 만으로 0과 1을 좀 더 다양하고 복잡하게 사용하는 것에는 한계가 존재합니다. 그리고 무엇보다 전기가 흐르지 않는데 전구가 켜지는 경우 자체가 불가능하죠.

실제로 컴퓨터에 대해 좀 더 공부하다 보면 "논리회로"라는 녀석을 접하게 될 건데, 그 중 NOT 게이트라는 녀석이 등장하게 됩니다. 0은 1이 되고 1은 0로 값이 바뀌도록 해주는 녀석인데, 이를 위의 그림과 같은 구조에서 빗대어 표현하자면 스위치가 꺼져있는 상태(0)인데 전구가 켜지는 상태가 되는 것이고, 이 경우에는 마치 없던 전기가 생겨나야 하는 조건이 만들어져 버리는 것이죠. (물론 회로 구성 요소를 더 추가하여 구현해낼 수는 있는데 이건 나중에 기회가 되면 이야기하도록 하죠.)
그래서 컴퓨터에서는 단순하게 전류로 0과 1을 나타내는 것 이외에도 전압의 세기를 이용해서 0과 1을 표현하는 추가적인 방법을 활용하기도 합니다. 전압을 이용할 경우에는 전기가 흐르는 전류가 있는 상태로, 전압 기준치가 2.5v라고 가정할 떄, 2.5v보다 낮으면 0, 2.5보다 높으면1 과 같은 방식으로 2진법 연산이 가능해지는 것이죠.
구분 | 일상 비유 | 전기 상태 | 컴퓨터에서 의미하는 값 |
---|---|---|---|
전류 | 수도꼭지를 열면 물이 흐름 | 전류가 흐르면 ON | 1 |
수도꼭지를 잠그면 물이 멈춤 | 전류가 안 흐르면 OFF | 0 | |
전압 | 물을 세게 밀어주는 압력 | 기준보다 높으면 ‘힘이 세다’ | 1 |
압력이 약하거나 없으면 | 기준보다 낮음 | 0 |
지금까지의 내용을 정리하면 위와 같이 정리해볼 수 있을 겁니다.
이쯤 되면 다음과 같은 궁금증이 생겨날 수 있는데요.
“컴퓨터 안에서 그 전기 흐름은 누가 조절해 주나요?”
“전기가 흘러야 할지, 말아야 할지를 누가 판단해주죠?”
이 역할을 하는 것이 "진공관" 입니다. 바로 이 진공관이 전류가 흐를 수 있도록 열어주거나 막아주는 역할을 해요. 마치 수도꼭지처럼요. 그리고 이 진공관들이 모여서 컴퓨터 안의 수많은 ‘0’과 ‘1’들을 만들어내는 장치가 되는 것이죠.
진공관, 불 들어오는 전구 아니었어? 진공관이 대체 무슨 역할을 했길래?
다시 처음으로 돌아와 "컴퓨터"가 "20세기 중반"에 들어서 "계산하는 기계"라는 의미로 변화하는데 기여한 "에니악(ENIAC)"이 "1세대 컴퓨터"로 분류되는 시점이 되는 이유가 바로 이 "진공관"을 활용해 만들어진 컴퓨터이기 때문인데요.
이쯤 되면 진공관이 대체 무슨 역할을 했기에? 라는 물음이 생길 수 밖에 없습니다. 진공관의 역할은 크게 스위치
, 증폭기
, 논리회로
의 3가지 역할을 담당합니다.
1. 스위치 역할
진공관은 전류가 흐를 수 있도록 통로를 열어주거나, 막아줄 수 있는 기능이 있어요. 마치 수도꼭지를 여닫는 것처럼, 회로를 연결하거나 끊는 일종의 스위치 역할을 합니다.
- 전류가 흐르면: 1
- 전류가 안 흐르면: 0
이렇게 간단한 원리를 통해 컴퓨터는 조건에 따라 계산을 수행할 수 있게 되죠.
2. 증폭기 역할
진공관은 전기 신호가 약할 때 그것을 키워주는 역할도 했어요. 이를 증폭이라고 해요.
예를 들어 우리가 라디오를 들을 때 소리가 너무 작다면 볼륨을 올리죠? 진공관은 약한 신호를 큰 신호로 바꿔서 다른 회로에 정확히 전달될 수 있게 도와주는 거예요.
3. 논리회로 역할
가장 중요한 건 진공관을 여러 개 연결하면 컴퓨터가 "생각하는 것처럼" 동작하게 된다는 거예요. 이걸 논리 연산(Logical Operation)이라고 해요. NOT 같은 경우는 앞서 살짝 언급되기도 했는데요.
예를 들어:
- A가 참이고, B도 참이면 → 결과는 참 (AND 연산)
- A 또는 B 중 하나라도 참이면 → 결과는 참 (OR 연산)
- A가 참이면 → 결과는 거짓 (NOT 연산)
진공관은 이런 논리 조건을 전기 신호의 흐름을 조절하는 방식으로 구현할 수 있었습니다.
에니악(ENIAC)의 단점과 다음 세대로의 진화
이처럼 전기와 진공관을 이용해 2진법을 다루며 계산을 하는 기계인 컴퓨터로서 등장한 에니악(ENIAC)은 분명 놀라운 기계였지만 단점도 많았습니다.
- 진공관이 수명이 짧아 자주 고장났어요. (이틀에 한 번씩 멈춤)
- 진공관 하나를 교체하는 데 15분이나 걸렸어요.
- 계산 방법을 바꾸려면 사람이 선을 다시 꽂고 회로를 다시 연결해야 했어요.
이런 불편함을 해결하기 위해 등장한 것이 바로 트랜지스터인데, 트랜지스터의 등장과 함께 이러한 불편한 문제점을 가지고 있던 진공관 컴퓨터의 막은 내려가게 되며, 이와 더불어 컴퓨터 구조를 획기적으로 바꾸는 개념이 등장합니다.
다음 이야기 예고: 폰 노이만과 프로그램 내장 구조
애니악(ENIAC)의 단점으로 사용자가 직접 손으로 회로를 바꾸어야 하는 불편함이 있었다고 좀 전에 이야기 했었죠? 이 글의 헤더 이미지에 두 분의 여성이 케이블을 들고 조정하고 있는 부분이 바로 이와 관련된 사진인데요.
이 문제를 해결하기 위해 등장한 사람이 바로 폰 노이만(John von Neumann) 이었습니다. 그는 프로그램을 컴퓨터 내부에 기억시키는 구조, 즉 프로그램 내장 방식을 고안합니다.
이 개념은 오늘날 컴퓨터가 작동하는 기본 구조가 되었는데요. 다음 이야기에서는 이 폰 노이만 구조에 대한 이야기를 다뤄볼 거예요.
다음 글
이전 글
참고자료
https://www.columbia.edu/cu/computinghistory/eniac.html


토론하기