В 1937 году произошел еще один значительный прорыв в теории компьютеров, похожий на изобретение машины Тьюринга тем, что это был чисто мысленный эксперимент. Автором его был аспирант Массачусетского технологического института Клод Шеннон, который в том же году представил самую значительную дипломную работу за все время, которую
Шеннон вырос в маленьком городке штата Мичиган, где он строил модели самолетов и собирал любительские радиоприемники, а позже отправился в Мичиганский университет учиться электротехнике и математике. На старшем курсе он откликнулся на объявление, висевшее на доске, о том, что в МТИ в группу, возглавляемую Вэниваром Бушем, требуется помощник для работ по запуску дифференциального анализатора. Шеннон получил работу и был заворожен этой машиной — не столько валиками, шкивами и колесами, которые являлись аналоговыми элементами, сколько электромагнитными переключателями — реле, которые были частью цепи управления. Когда электрические сигналы заставляли их щелчком открываться и с треском закрываться, переключатели меняли конфигурацию цепей.
Летом 1937 года Шеннон взял отпуск в МТИ и поступил на работу в
В
Шеннон понял, что электрические схемы могут выполнять эти логические операции, используя различные комбинации двухпозиционных переключателей (с режимами «включено»/«выключено»). Для выполнения операции «и», например, нужно два переключателя расположить последовательно, так что для того, чтобы пошел ток, оба должны быть в положении «включено». Чтобы выполнить операцию «или», переключатели должны быть расположены параллельно, так, чтобы электрический ток тек, если один из них находится в положении «включено». Чуть более универсальные переключатели, называемые логическими затворами или вентилями, могли бы ускорить процесс. Другими словами, можно было сконструировать схему, содержащую много реле и логических затворов, которые могли бы выполнять шаг за шагом последовательность логических задач.
(Реле — это просто переключатель, который может открываться и закрываться с помощью электричества, например с помощью электромагнита. Те реле, которые механически — щелчком — открываются, а закрываются с помощью электричества, иногда называются электромеханическими, потому что они имеют подвижные части. Электронные лампы и транзисторы также можно использовать в качестве переключателей в электрической цепи, их называют электронными, потому что они управляют потоком электронов, но никакие физические части в них не движутся. «Логический затвор» — это переключатель, который может иметь один или несколько входов. Например, в случае двух входов логический элемент «и» переключается в положение «включено», если оба входа находятся в позиции «включено», а логический элемент «или» переходит в состояние «включено», если какой-нибудь из входов находится в положении «включено». Концептуальный прорыв Шеннона состоял в том, что он понял, как они могут быть соединены друг с другом в схемах, чтобы с их помощью можно было решать задачи булевой алгебры.)