https://book.naver.com/bookdb/book_detail.nhn?bid=15516537
회사에서 매일 마다 한 챕터 씩 읽고 있는 책이다.
컴공을 졸업했음에도 컴퓨터가 어떻게 동작하는 지에 대해 설명해보라 하면 멍청해지는 내 자신을 발견하곤 한다. 이런 컴퓨터구조에 대한 세세한 지식과 개념이 없었기에 매우 유익한 시간이 되는 것 같다. 딱딱한 전공 서적이 아닌 어린 학생들이 읽어도 이해할 수 있을 만큼 쉽게 풀어서 쓴 책이다. 물론 그저 책을 읽는 다고 모두 내 것이 되는 건 아니다. 곱씹어보고 다시 들여다보며 온전히 내 머릿속에 저장하는 시간이 필요하다. 책에 내용들을 요약하며 그런 시간들이 만들어졌으면 한다.
컴퓨터가 하는 '생각'이라는 것의 실체는 다소 허무하다. 그저 단순한 작업의 연속일뿐. 이쪽에 있는 자료를 저쪽으로 옮기는 것 같은 작업. 복잡한 작업 역시 단순한 작업 여러 개를 조합해서 만든 것. 이런 작업을 하는 기계를 튜링 기계라고 부른다.
컴퓨터 과학은 소프트웨어 기술의 토대인 수학과 하드웨어 기술의 토대인 공학이 어우러져 만들어진 융합 학문. 완성된 학문이 아니라 아직도 만들어지는 중인, 살아 있는 지식이며 학문이다. 살아 있는 학문으로서 인간이 만든 '생각하는 기계'인 컴퓨터와 소통하고 연결하는 방법을 배우는 것이 코딩 교육의 목적이 되어야 한다. 소프트웨어뿐 아니라 소프트웨어를 떠받치는 하드웨어에 대한 교육도 강화되어야 한다.
컴퓨터는 이해하기 별로 어렵지 않은 기계이다. 그 안에 들어가는 부품은 모두 더없이 단순하고 동작하는 원리도 간단해서 이해하기 어렵지 않다. 컴퓨터가 동작하는 원리를 이해하려면 전기가 동작하는 원리부터 이해해야 한다. 전기도 단순한 원리로 작동하니 어렵지 않다.
밑바닥부터 시작해서 컴퓨터라는 기계를 이해하는 데 필요한 항목을 전부 파헤친다. 컴퓨터 전문가이든 문외한이든, 이 책으로 컴퓨터의 기본 원리를 채울 수 있다. 컴퓨터를 구성하는 각 부분은 어떤 기능을 가지고 있고 어떻게 만들어야 하는지, 그리고 컴퓨터가 쓸모 있는 일을 하려면 이 모든 부품을 어떤 식으로 연결해야 하는 지 알 수 있다.
컴퓨터는 알고 보면 유치할 정도로 간단한 작업밖에 못하는 극도로 단순한 기계. 컴퓨터가 엄청 똑똑해 보이는 건 단순한 작업을 눈 깜짝할 사이에 수억 번이나 할 수 있기 때문.
전기는 1초에 지구를 일곱 바퀴 반이나 도는 빛과 성질이 유사함. 컴퓨터는 전기로 작동하며 컴퓨터가 작동하는 속도는 전기가 움직이는 속도를 따른다.
컴퓨터는 점점 더 빨라졌고 작아지고 저렴해졌지만 하는 일은 아무것도 변한 게 없다. 단순한 작업 몇 가지만 반복하는 건 여전하다.
컴퓨터는 커다란 장치 몇 개만 있으면 구성할 수 있으며 모든 장치는 다 동일한 부품으로 조립해서 만들 수 있다. 이렇게 만든 장치는 각자 고유한 임무를 부여받아 수행한다.
두 가지 가능한 상태에서 한 가지 상태를 선택하고 담아 놓을 수 있는 장소. 그 장소가 바로 '비트' 비트는 공간 위에서 특정한 크기로 특정한 위치를 차지하는 물리적 사물이라고 볼 수 있다. 비트는 한 가지 상태에 계속 머무를 수도 있고 두 가지 상태를 번갈아 가며 바꿀 수도 있다.
컴퓨터 비트는 빛과 굉장히 비슷. 컴퓨터 비트는 전류가 흐르거나 흐르지 않는 장소.
컴퓨터 비트는 물리적 사물이 아니라 논리적 사물이므로 모양이나 위치도 변하지 않는다. 컴퓨터 비트는 단지 장소. 이 장소에 전류가 흐르지 않으면 비트가 off이고, 전류가 흐르면 비트가 on.
전류가 다른 곳에서 장치 안으로 흘러 들어오는 '입력', 장치 안에 있던 전류가 밖에 있는 다른 곳으로 흘러 나가는 '출력'
비트를 가지고 어떤 일을 하며 입력마다 비트를 하나씩 보내주면 이 장치는 비트 2개의 상태를 보고 출력할 비트의 상태를 on 또는 off로 결정.
비트를 어떻게 켜고 끌지 결정하는 게 전부. 비트 2개가 장치 안으로 들어가면 비트 1개를 장치 바깥으로 내보내는 것.
a와 b로 들어온 출력 비트 상태가 곧 이 게이트 입력 비트 상태. 이러한 입력 비트 2개의 상태에 따라 출력 비트를 on 또는 off로 설정한다.
그림을 간단하게 도표로 표현할 수 있다.