EP.0 코딩의 첫걸음 — 전기를 어떻게 연결할 것인가?
EP.0 서론 — 태초의 시스템, 전선이 사고(思考)가 되던 시절
현대의 복잡한 칩과 수백 개의 프로그래밍 언어를 이해하기 위해, 우리는 전선과 스위치만으로 이루어졌던 원시적 컴퓨터의 뼈대를 먼저 마주해야 합니다.
이 글은 코드를 가르치지 않습니다. 대신, 앞으로 배우게 될 모든 코드가 왜 이런 형태를 가질 수밖에 없었는지를 물리적으로 이해하게 만드는 출발점입니다.
컴퓨터는 마법이 아니라 거대한 전기 미로입니다. 왼쪽의 입력이 미로를 통과해 오른쪽의 빛으로 나타나기까지, 모든 컴퓨터는 동일한 물리 구조를 공유합니다.
원시 시스템의 5단계 물리 메커니즘
1단계: 물리적 입력 (Input) - "전선을 꼽는 행위, 물리적 의지의 투사"
오늘날의 키보드와 마우스는 추상적이지만, 초기에는 직접 전선을 꼽는 플러그보드(Plugboard)가 있었습니다.
- 물리적 실체: 사람이 특정 구멍에 전선을 꼽는 순간, 해당 라인에는 '전압'이라는 에너지가 실립니다.
- 통찰: 데이터는 메모리 속의 가상 숫자가 아니라 전기가 흐르는 전선 그 자체였습니다. 입력은 논리가 아니라 물리적 연결의 개통이었습니다.
2단계: 물리적 약속 (Standard) - "구리선의 배치가 곧 규칙이 되다"
미로 속으로 들어가는 입구는 수만 개입니다. 어디에 전기를 넣느냐에 따라 결과가 달라지는 '약속'이 필요했습니다.
- 물리적 실체: "1번 전선에 전기가 들어오면 숫자 1, 10번 전선은 숫자 0이다."
- 통찰: 하드웨어 설계자가 미리 깔아놓은 구리선의 배치가 곧 규칙(Protocol)입니다. 소프트웨어가 없던 시절, 규칙은 종이가 아닌 전선 배선도에 적혀 있었습니다.
3단계: 물리적 연산 (Processing) - "이미 완성되어 있는 결정론적 미로"
이미지 중앙의 복잡한 회로를 보십시오. 이것이 현대 CPU 속에 박혀 있는 '연산 회로'의 원형입니다.
- 물리적 실체: '더하기'를 하고 싶다면 전기가 덧셈 결과값으로만 흐르도록 진공관과 코일을 미리 배선해 둡니다.
- PLC와의 상관관계: 질문자님이 간파하신 것처럼, 이는 래더 로직(Ladder Logic)과 완벽히 일치합니다. 전기는 깔린 길을 따라 흐를 뿐이며, 계산 결과는 소프트웨어가 내는 것이 아니라 전기가 미로 끝에 도달하는 물리적 필연성에 의해 결정됩니다.
4단계: 물리적 전송 (Transmission) - "에너지가 나르는 정보의 경로"
미로를 빠져나온 전기는 이제 결과를 시각화하기 위해 출력 장치로 향합니다.
- 물리적 실체: 전선 하나하나가 하나의 결과를 담당합니다. 전기가 끊기면 정보도 사라지는 '실시간성'을 가집니다.
- 통찰: 전기가 끊기지 않고 끝까지 도달해야 정보가 전달된다는 연결의 무결성이 핵심입니다. 이는 훗날 수억 번 깜빡이는 펄스의 기차놀이(직렬 통신)로 진화하게 됩니다.
5단계: 물리적 표시 (Output) - "전자가 빛으로 승화하는 지점"
최종 목적지에 도착한 전기는 전구(램프)를 밝히며 인간과 만납니다.
- 물리적 실체: 5번 전선에 도달한 전자가 필라멘트를 가열해 빛을 냅니다.
- 통찰: 이것이 오늘날 모니터 픽셀(Pixel)의 조상입니다. 전기에너지가 빛에너지로 변환되어 인간의 시각 신경에 도달하는 순간, 비로소 '데이터'는 '정보'가 됩니다.
현대의 컴퓨터는 이 거대한 미로를 현미경으로도 보기 힘들 만큼 가늘게 줄여 실리콘 판(집적회로) 위에 고정한 것입니다. 우리가 배우게 될 코딩(Coding)은 결국 이 거대한 미로의 빗장들을 어떤 순서로 열고 닫을지 결정하는 '실시간 스위칭 설계도'를 그리는 작업입니다.
현대의 CPU는 이 거대한 전기 미로를 나노 단위로 축소해 실리콘 위에 고정한 결과물입니다. 우리는 코딩을 통해 이 미로의 빗장을 어떤 순서로 열고 닫을지 정하는 전기 설계도(추상화된 물리 명령)를 작성하고 있는 셈입니다.

댓글
댓글 쓰기