Аналитическая машина

Аналитическая машина задумывалась как механическая, но ученый предвидел, что она сможет следовать варьируемым наборам инструкций и тем самым служить разным целям. В том же и смысл программного обеспечения. Современная программа – это внушительный набор правил, посредством которых машину «инструктируют», как решать ту или иную задачу. Беббидж понимал, что для ввода таких инструкций нужен совершенно новый тип языка, и он изобрел его, использовав цифры, буквы, стрелки и другие символы. Этот язык позволил бы «программировать» аналитическую машину длинными сериями условных инструкций, что, в свою очередь, позволило бы машине реагировать на изменение ситуации. Он – первый, кто увидел, что одна машина способна выполнять разные функции.

Следующее столетие ученые математики работали над идеями, высказанными Беббиджем, и к середине сороковых годов нашего века электронный компьютер наконец был построен – на основе принципов аналитической машины. Создателей современного компьютера выделить трудно, поскольку все исследования проводились во время второй мировой войны под покровом полной секретности, главным образом – в Соединенных Штатах и Великобритании. Основной вклад внесли три человека: Алан Тьюринг (Alan Turing), Клод Шеннон (Claude Shannon) и Джон фон Нейман (John von Neumann).

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

А в конце тридцатых Клод Шеннон, тогда еще студент, доказал, что машина, исполняющая логические инструкции, может манипулировать информацией. В своей магистерской диссертации он рассмотрел, как с помощью электрических цепей компьютера выполнять логические операции, где единица – «истина» (цепь замкнута), а нуль – «ложь» (цепь разомкнута).

Здесь речь идет о двоичной системе счисления, иначе говоря, о коде. Двоичная система – это азбука электронных компьютеров, основа языка, на который переводится и с помощью которого хранится и используется вся информация в компьютере. Эта система очень проста и в то же время настолько важна для понимания того, как работают компьютеры, что, пожалуй, стоит на этом задержаться.

Представьте, что в Вашей комнате должна гореть лампа мощностью в 250 ватт. Однако Вы хотите регулировать освещение от 0 ватт (полная темнота) до максимума. Один из способов добиться этого – воспользоваться выключателем с регулятором. Чтобы погасить лампу, Вы поворачиваете ручку против часовой стрелки в положение «выкл» (0 ватт), а чтобы включить ее «на всю катушку», – по часовой стрелке до упора (250 ватт). Ну а чтобы добиться полумрака или просто уменьшить яркость, Вы устанавливаете регулятор в какое-то промежуточное положение.