Выбрать главу

Только через 100 лет были осуществлены основные идеи Бэбиджа. Мы не ставим своей целью подробно останавливаться на истории развития вычислительных машин последних десятилетий. Но для того, чтобы подчеркнуть значение работ Бэбиджа, кратко остановимся на некоторых моментах этой истории.

В 1937 г. английский математик А. М. Тьюринг обосновал возможность построения машины с программным управлением, предложив самую общую и самую простую, с точки зрения логической структуры, идею вычислительной машины. Введенное Тьюрингом понятие такой машины получило название «машины Тьюринга». Это понятие явилось, фактически, одним из наиболее естественных и удобных уточнений понятия алгоритма [1 О машине Тьюринга см., напр.: Айзерман М. А., Гусев Л. А., Розоноэр Л. И. Логика, автоматы, алгоритмы. М.: Физматгиз, 1963.].

В 1938 г. Дж. Стибиц построил небольшую вычислительную машину, работающую в двоичной системе счисления, способную оперировать с комплексными числами (Белл-1). Одна из первых попыток использовать электронные элементы в ЦВМ была предпринята в США в 1939—1941 гг, в колледже-штата Айова (ныне университет) Дж. Атанасовым. Машина Атанасова предназначалась для решения систем алгебраических уравнений с 30 неизвестными. Исходные данные вводились на стандартных перфокартах. Для запоминания информации использовались конденсаторы. Промежуточные результаты записывались на перфокарты. К моменту вступления США в войну (7 декабря 1941 г.) были закончены основные блоки машины. В 1942 г. работы были прекращены, но спустя несколько лет машина была доработана.

Вычислительную машину с программным управлением, работающую полностью на механических элементах, сконструировал немецкий ученый К. Цузе (машина Ц-1). Работа над машиной была начата в 1936 г. и продолжалась два года. В следующем варианте (Ц-2), который не был завершен в связи с тем, что гитлеровская Германия развязала вторую мировую войну, Цузе использовал электромагнитные реле. В 1941 г. Цузе закончил работу, которая финансировалась военным министерством, над машиной Ц-3. Эта машина, выполненная полностью на электромагнитных реле, явилась первой универсальной автоматической ЦВМ с программным управлением. Но работы Цузе были неизвестны за пределами Германии, и ученые других стран ознакомились с ними только спустя некоторое время после окончания второй мировой войны.

Более известна вычислительная машина, разработанная в 1944 г. в вычислительной лаборатории Гарвардского университета под руководством Г. Айкена. Эта машина, которая впоследствии получила название МАРК-1, по принципу действия, своим функциям, применяемой десятичной системе счисления и другим показателям напоминала аналитическую машину Бэбиджа. Айкен утверждал, что он познакомился с машиной Бэбиджа только после трехлетних трудов по разработке МАРК-1.

По своей конструкции и использованию электромагнитных реле МАРК-1, естественно, отличалась от аналитической машины, созданной на чисто механических принципах. Это иногда вызывает недоумение: могут ли быть у МАРК-1 и аналитической машины одни и те же структурные принципы? Тьюринг по этому поводу замечает: «То, что аналитическая машина Бэбиджа была задумана как чисто механический аппарат, помогает нам избавиться от одного предрассудка. Часто придают значение тому обстоятельству, что современные цифровые машины являются электрическими устройствами. . . но поскольку машина Бэбиджа не была электрическим аппаратом и поскольку в известном смысле все цифровые вычислительные машины эквивалентны, становится ясно, что использование электричества в этом случае не может иметь теоретического значения» [101, с. 27].

Мы не будем останавливаться на подробной характеристике МАРК-1. Но отметим, что емкость памяти машины была на порядок меньше величины, запроектированной в свое время Бэбиджем. Кроме того, признак условного перехода в МАРК-1 вел к выбору перфолент с числами, соответствующими различным областям изменения аргумента, или к останову программ при увеличении числа в специальном регистре сверх заданного. Только впоследствии была введена команда условного перехода с выходом на продолжение операций или повторение цикла, как предусматривали Лавлейс и Бэбидж. Конечно, ряд показателей МАРК-1 был лучше, чем у машины Бэбиджа; в первую очередь это относится к скорости выполнения операций, затем к управлению, которое велось по программе, записанной на перфоленте, и др.

После работ Цузе, Айкена, Стибица и других были разработаны и испытаны первые машинные программы. Вначале использовали перфокарты с механическими щупами как у машины Бэбиджа. Впоследствии была введена электромеханическая система считывания, а затем и фотосчитывание.