《CODE: 하드웨어와 소프트웨어에 숨어 있는 언어》는 찰스 펫졸드가 쓰고 김현규가 옮긴 컴퓨터 과학 교양서이다. 원제는 《Code: The Hidden Language of Computer Hardware and Software》이며, 이 ISBN은 영어 원서 2판을 반영해 인사이트가 2023년 12월 22일 출간한 한국어 종이책 2판을 가리킨다. 유통 서지 기준 624쪽, 크기 172×225mm이며 ‘프로그램 프로그래밍 프로그래머’ 시리즈 14권이다. 제목의 ‘Code’는 프로그램 코드만이 아니라 사람과 기계가 정보를 표현하고 전달하는 부호 체계 전반을 뜻한다.
찰스 펫졸드는 수학을 전공한 미국의 프로그래머이자 기술 저술가이다. PC Magazine과 Microsoft Systems Journal 등에 글을 썼으며, 여러 판에 걸쳐 출간된 《Programming Windows》와 앨런 튜링의 논문을 해설한 《The Annotated Turing》으로도 알려져 있다. 전자 음악 장치를 만들기 위해 디지털 전자공학을 독학하고 Z80 기반의 컴퓨터와 신시사이저를 제작한 경험은 이 책의 기술적 토대가 되었다. 복잡한 컴퓨팅 개념을 역사적 맥락과 실제 회로의 작동 원리로 풀어내는 그의 저술 방식이 집약된 책이다.
이 책의 초판은 1999년에 출간되었으며, 컴퓨터를 가장 단순한 정보 표현에서 출발해 단계적으로 조립해 보는 설명을 목표로 삼았다. 펫졸드는 2021년부터 개정 작업을 진행해 2022년 영어 원서 2판을 내놓았다. 개정판은 시대에 뒤처진 문화적·기술적 표현을 다듬고 다섯 개 장을 추가했으며, 인텔 8080을 단순한 사례로 삼아 중앙처리장치가 동작하는 과정을 이전보다 깊게 설명한다. 2023년 한국어판은 이 확장된 원서 2판을 바탕으로 한 판본으로, 기존 한국어 구판의 단순 재쇄가 아니다.
전체 28장은 가까운 친구와 신호를 주고받는 상황에서 시작해 모스 부호, 점자, 이진 부호로 이어진다. 손전등과 전신, 스위치와 릴레이를 통해 전기 신호가 논리로 바뀌는 과정을 보여 주고, 십진수와 이진수, 비트와 바이트, 16진수, ASCII와 유니코드로 정보 표현의 범위를 넓힌다. 이러한 구성은 컴퓨터를 이미 완성된 기계로 제시하지 않고, 인간이 의사소통과 계산을 위해 만든 여러 부호와 장치가 어떻게 디지털 컴퓨터로 수렴했는지를 차례로 재구성한다.
중반 이후에는 논리 게이트로 덧셈과 뺄셈을 수행하고, 플립플롭과 시계 회로, 메모리, 산술논리장치, 레지스터와 버스를 결합해 CPU의 구조를 완성한다. 이어 제어 신호, 루프와 분기 및 호출, 주변 장치, 운영체제, 프로그래밍 언어와 인터넷까지 설명의 층위를 높인다. 수식이나 추상적인 비유에만 의존하기보다 실제 공학에서 사용하는 회로 기호와 2색 선화로 논리를 전개하는 것이 특징이다. 주요 회로의 동작은 저자가 마련한 대화형 그래픽 보조 자료와 함께 살펴볼 수 있다.
프로그래밍 경험이 없는 독자도 처음부터 읽을 수 있도록 출발점은 쉬운 편이지만, 후반의 CPU 구성과 제어 신호 부분은 회로를 따라가며 집중해서 읽어야 한다. 특정 언어나 개발 도구를 가르치는 실습서는 아니며, 코드를 빨리 작성하는 방법보다 코드가 실행될 수 있는 물리적·논리적 기반을 이해하게 하는 입문 교양서에 가깝다. 프로젝트를 통해 컴퓨터를 직접 구현하는 교재와 비교하면 제작 과제보다 설명과 역사적 연결에 무게를 두므로, 컴퓨터 구조를 처음 접하는 독자와 기초를 다시 정리하려는 개발자 모두에게 적합하다.
초판 이후 20년 이상 꾸준히 읽히며 컴퓨터의 내부 원리를 설명하는 대표적인 입문서로 자리 잡았다. 특히 하드웨어와 소프트웨어를 별개의 영역으로 나누지 않고, 단순한 스위치의 상태가 논리 연산과 명령어 실행으로 이어지는 연속적인 구조임을 보여 준다는 점에서 높게 평가된다. 2판은 초판의 단계적 서술 방식을 유지하면서 CPU 부분과 현대 컴퓨팅 환경에 관한 설명을 확장했다. 이 ISBN은 종이책용이며, 2024년에 나온 한국어 PDF 전자책에는 별도의 ISBN 9788966264322가 부여되어 있다.
《CODE》의 핵심 가치는 컴퓨터를 불투명한 전자제품이나 추상적인 프로그램 실행기로 바라보지 않고, 정보의 표현과 전달, 논리와 기억, 계산과 제어가 차곡차곡 결합된 결과로 이해하게 한다는 데 있다. 컴퓨터 공학 전공을 준비하는 독자에게는 구조와 운영체제를 배우기 전의 개념적 토대가 되고, 개발자에게는 소프트웨어 아래에서 일어나는 일을 되짚는 참고서가 된다. 전문 회로 설계서나 프로그래밍 문법서는 아니지만, 디지털 컴퓨터의 원리를 서사적으로 연결해 설명하는 컴퓨터 구조 입문 고전의 개정판이다.
