«Устройство общего назначения, которое может быть запрограммировано для автоматического выполнения набора арифметических или логических операций» («Википедия», 2014).
Таким образом, идеальный компьютер — это машина, которая является электронным и программируемым устройством общего назначения. Какой же компьютер правильнее считать первым?
Модель K Джорджа Роберта Стибица, которую тот начал строить на своем кухонном столе в ноябре 1937 года, в январе 1940 года в Bell Labs трансформировалась в полнофункциональную модель и стала двоичным компьютером и первым устройством с удаленным доступом. Но в ней использовались электромеханические реле, и, таким образом, она не была полностью электронной. Она не была также ни программируемой, ни универсальной, а предназначалась для решения определенной задачи.
Строительство машины Z3 Германа Цузе было завершено в мае 1941 года, и она стала первым автоматически контролируемым, программируемым электрическим двоичным устройством. Она была разработана для решения инженерных проблем, а не для решения общих задач. Тем не менее позже было показано, что теоретически ее можно было бы использовать в качестве тьюринг-полной машины. Ее главное отличие от современных компьютеров состояло в том, что она была электромеханической, а не электронной. Скорость ее работы определялась медленно срабатывающими переключателями — щелкающими реле. Другим недостатком являлось то, что она никогда не пошла в серию, поскольку была разрушена в результате бомбардировок союзниками Берлина в 1943 году.
Создание компьютера, сконструированного Джоном Винсентом Атанасовым, было остановлено в тот момент, когда Атанасов перестал им заниматься, уйдя служить в ВМФ в сентябре 1942 года, и его компьютер так и не стал полноценно работающим. Он был первым электронным цифровым компьютером в мире, но все-таки не полностью электронным. В его устройствах сложения и вычитания действительно использовались электронные лампы, но блоки памяти и извлечения данных содержали механические вращающиеся барабаны. Другим его основным недостатком, не позволяющим считать его первым современным компьютером, было то, что он не был ни программируемым, ни универсальным, а, напротив, был жестко ориентирован на специальную задачу решения линейных уравнений. Кроме того, Атанасов никогда не смог заставить его работать полноценно, и он был похоронен в подвале Университета Айовы.
Colossus I, завершенный в декабре 1943 года Максом Ньюманом и Томми Флауэрсом (с участием Алана Тьюринга) в Блетчли-Парке, был первым цифровым полностью электронным компьютером, который был и программируемым, и работающим. Он не был, однако, компьютером общего назначения или тьюринг-полной машиной, поскольку предназначался для решения определенной задачи — взлома военных кодов Германии.
Компьютер Mark I Говарда Айкена, построенный с участием IBM и введенный в эксплуатацию в мае 1944 года, был, как мы увидим в следующей главе, программируемым, но это было электромеханическое, а не электронное устройство.
ENIAC, построенный Преспером Эккертом и Джоном Мокли в ноябре 1945 года, был первой машиной, включающей в себя полный набор черт современного компьютера. Он был полностью электронным, сверхбыстрым, и его можно было программировать с помощью подключения и отключения соответствующих кабелей, соединяющих различные его блоки. Он мог менять ветвь программы в зависимости от промежуточных результатов и считался компьютером общего назначения, тьюринг-полной машиной, то есть теоретически мог решать любую задачу. Самое главное его достоинство — в том, что он работал. «Важная черта изобретения, — позже сказал Эккерт, сравнивая их машину с машиной Атанасова, — когда вся ваша система работает как целое»<sup></sup>. Мокли и Эккерт сами проделали на своей машине некоторые очень сложные вычисления, и в течение последующих десяти лет она постоянно использовалась. |