1장에서는 현대 컴퓨터들이 비트라고 부르는 2진 상자를 내부 언어로 사용한다는 사실을 배웠다. 사람들은 10진수를 잘 사용하는데 왜 컴퓨터는 2진수를 사용하는지 궁금한 독자도 있을 것이다. 이번 장에서는 비트를 사용하지 않는 초기 계산 장치를 살펴봄으로써 왜 비트가 오늘날사용하는 기술에 어울리는 올바른 선택인지 배운다. - P91
1장에서 비트에 대해 논의한 내용은 상당히 추상적이었다. - P91
조합 논리는 1장에서 설명한 불리언 대수를 부르는 또 다른 이름이다. 1장에서 했던 것처럼 여기서도 먼저 간단한기본 요소를 살펴보고, 이들을 조합해 더 복잡한 기능을 만들어낼 것이다. - P91
두 톱니바퀴가 맞물려돌아가면 각 톱니바퀴의 톱니 비율이 두 바퀴의 상대적인 회전 속도를 결정하기 때문에 곱셈, 나눗셈, 기타 계산에 톱니바퀴가 유용하다. 톱니바퀴를 기반으로 만들어진 가장 오래된 계산기로는 기원전 100년경 만들어진 것으로 추정되는 그리스 제도에서 발견된 안티키테라Antikythera기계가 있다. - P92
톱니바퀴를 사용하지 않는 기계식 컴퓨터로는 영국의 성직자이자 수학자인 윌리엄 오트레드William Oughtred (1574~1660)가 발명한 계산자side rule 가 있다. - P92
계산자에는 로그 눈금이 매겨진 고정부와 이동부가 있다. 고정된 x의 로그 눈금과 움직이는 y로그 눈금의 기준선을 맞추면 그림 2-1처럼 두 수의 곱을 계산할 수 있다. - P92
역사적으로는 계수(숫자를 세는 행위가 계산 장치를 활용하는 주된 용도였다. 손가락이 열 개밖에 없기 때문에 (그리고 다른 용도로 손가락을 써야 한다는 이유로 인해) 기원전 18,000 년 전부터 탤리 막대tally stick를 사용해왔다. - P93
하지만 간단한 기계적 10진수 계산기는 차분 기관 같은 복잡한 금속 기술이 필요하지 않기 때문에 만들어질 수 있었다. - P93
계산자와 손가락은 모두 1부터 10까지를 다룰 수 있다. 하지만 계산자에서는 1.1 등의 수를 표현할 수 있고 표현 방법도 아주 쉽지만, 뭔가 멋진 요술(현란한 손기술을 쓰거나 어쩌면 손가락을춤추듯 움직여야 할 것이다)을 쓰기 전에는 손가락으로 1.1을 표현할 수는 없다. 계산자는 수학적으로 연속적 continuous 이기 때문이다. - P94
전자기술에 대해 이야기할 때 아날로그 analog는 연속적인 것을 뜻하며, 디지털digital은 이산적인 것을 뜻한다(라틴어로 손가락이 ‘digitus‘라는 점을 알면, 손가락이 디지털이라는 사실은 기억하기 쉽다). 여러분도 아날로그와 디지털은 들어본 적이 있을 것이다. 하지만 계산자 같은 아날로그 컴퓨터가 실제로 존재한다는 사실은 이 책을 통해 처음 알았을 수도 있다. - P94
현대 컴퓨터는 아이들 대신 전자를 움직인다. 전기는 빛의 속도로 움직이며 빛의 속도는 초당 3억 미터다(초당 10억 피트인 미국은 예외). 이런 물리적인 한계를 뛰어넘는 방법을 아직 발견하지못했기 때문에, 컴퓨터에서 전자의 여행 시간을 최소화하는 방법은 부품을 가능한 한 가깝게 위치시키는 것뿐이다. - P95
아이들을 데리고 학교를 오갈 때와 마찬가지로 여행을 하려면 커피만 있으면 충분하지 않고 에너지가 필요하다. 하드웨어를 작게 만들면 필요한 여행 거리가 줄어들고, 여행 거리가 줄어들면 필요한 에너지 양도 줄어든다. - P96
계량컵과 계산자는 모두 아날로그(연속적) 장치로, 정확하게 값을 읽으려면 흔들림이 없어야 한다. - P97
결과적으로 판정 기준을 도입하면 값 중에 어떤 범위의값을 표현할 수 있는 가능성이 사라진다. 수학적으로 이는 숫자를 가장 가까운 정수로 반올림하는 것과 비슷하다. - P97
지금까지는 외부에서 오는 간섭에 대해 살펴봤다. 따라서 어떤 차폐막shielding을 추가하면 이런간섭을 최소화할 수 있다고 생각하는 독자도 있을 것이다. 결국 슈퍼맨은 납을 사용해 크립토나이트로부터 보호받을 수 있었으니까. 하지만 간섭에는 좀 더 은밀한 내부적인 근원이 존재한다. - P97
현대 CPU에서 신호 간섭은 마치 도로에서 마주 보는두 차가 서로 스쳐 지나갈 때 느껴지는 바람과 같다. 이런 누화crosstalk 효과를 방지할 적절한 방법이 없기 때문에, 더 높은 판정 기준을 통해 잡음 내성noise immunity을 갖는 디지털 회로를 사용하는 것이 필수적이다. - P97
하지만 여러분도 이미 눈치챘듯이 너무 작아서 양자역학이 적용되는 것들을 피하면 세상은 아날로그인 (연속적인 장소다. 다음 절에서는 아날로그 세계를 어떻게 조작해서 안정적인 계산 장치를 만드는 데 필요한 디지털적 동작을 얻어낼 수 있는지 살펴본다. - P98
수많은 엔지니어가 과학자들이 발견한 자연적으로 발생하는 전이 함수transfer function를 영리하게응용하는 데 참여했다. 전이 함수는 수학 시간에 배운 함수와 같지만 실제 세계에서 벌어지는현상을 표현한다는 점만 다르다. - P98
곡선이 직선이 아니라는 점을 유의하라. 빛이 곡선의 상단부에 많이 닿으면 필름이나 센서에 기록되는 밝기 값이서로 모이면서 최댓값에 가까워져서 이미지 노출이 과해진다. 비슷한 방식으로 빛이 곡선의 하단부에 많이 닿으면 이미지 노출이 부족해진다. - P98
볼륨은 게인gain 또는 곡선이 가파른 정도를 조절한다. 그림을 보면 알 수 있듯이 게인이 높으면 곡선이 가팔라지고 출력도 커진다. - P99
입력이 조금만 변해도 곡선의 가파른 부분 때문에 출력이 확 달라진다. - P99
어린 시절 시소에서 놀면서 직관적으로 이런 현상을 발견했을 수도 있다(여러분이 교육기관의 놀이터에 있는 놀이기구를 위험하다고 간주하는 시대 이전에 교육을 받은 행운아라면 말이다). 하단부영역(내가 앉은 자리가 완전히 내려간 상태)이나 상단부 영역(내가 완전히 올라가 있는 상태)을 유지하기가 그 중간 상태에서 균형을 유지하는 것보다 더 쉽다. - P100
10진 숫자 대신 비트를 사용하는 이유
아날로그보다 디지털 기술이 더 나은 선택인 이유를 살펴봤다. 하지만 왜 컴퓨터가 10진 숫자가아니라 비트를 사용할까? (중략) 분명한 이유는 컴퓨터에는 손가락이 없기 때문이다. 손가락이 있다면 기괴할 것이다. 한편, 손가락으로 숫자를 세는 것은 아주 직관적이지만 한 손가락이 한 숫자를 표현하기 때문에 그리 효율적이지는 않다. - P100
실제로 중국인들은 기원전 9년에 쓰인 『역경』에서 6비트 수(육효)를 사용했다. 손가락 대신 비트를 사용하면 100배보다 더 효율이 좋아진다. 심지어 4개의 손가락을 활용해 1장에서 배운 BCD (2진 코드화한 10진수) 표현을 사용해도 우리가 일반적으로 사용하는 숫자를 세는 방법보다 훨씬 더 효율적이다. - P100
하지만 앞에서 본 것처럼, 숫자 하나보다는 10비트를 사용하는 편이 훨씬 더 좋다. 이것이 현대적 하드웨어가 작동하는 방식이다. 우리는 전이함수의 하단부와 상단부 영역을 활용하며, 전기 엔지니어들은 하단부 영역을 차단cutoff 이라고 부르고 상단부 영역을 포화saturation 라고 부른다. 비트를 사용하면 재량권이 아주 커진다. - P101
* 간단한 전기 이론가이드
현대 컴퓨터는 전기를 조작해 작동된다. 현재 사용 가능한 다른 기술로 컴퓨터를 만드는 것보다전기를 사용해 컴퓨터를 만들면 더 빠르고 쉽게 컴퓨터를 만들 수 있다. - P101
물이 파이프를 흘러가는 것처럼 전기도 선을 통해 이동한다. 다만 이런 전기의 이동은 실제로는 전자의 흐름은 아니고 전자기 에너지 반응이 전파되는 현상을 (과거 과학자들이) 전기라고 불렀고 (과학적 의미를 100% 담지는 못하는) 이 단어가 정착한 것뿐이다. - P104
물의 흐름을 밸브로 제어할 수 있는 것처럼, 전기의 흐름을 제어할수 있는 밸브를 스위치 switch라고 부른다. 스위치는 모두 다 너무 비슷해서 현재는 거의 쓰이지않는 진공관vacuumtube 을 열전자 밸브 thermionic valve라고 부를 정도다. - P104
물은 굵은 관이나 가는 관을 통해 흐를 수 있다. 하지만 관이 더 가늘수록 관을 통해 흐를 수 있는 물의 양을 제한하는 저항이 더 커진다. 전압(수압)이 더 높더라도 너무 가는 도체(관)를 사용함으로 인해 저항이 아주 크면 전류(물의 흐름)가 커지지 못한다. 저항resistance (‘R‘이라는 글자로표현)을 측정할 때는 옴ohm 을 쓴다. - P104
|