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

Рис. 3.5 Программа современного компьютера почти всегда разделена как минимум на две части. Одна из них называется операционной системой или ОС, например Windows, MacOS или Android. Она работает всегда. В этом случае желателен бесконечный цикл. Другая часть программы, которая изменяется в соответствии с вашими индивидуальными потребностями, называется приложением. Похожим образом в памяти хранятся данные, важные для операционной системы, отдельно от данных для приложения. Операционная система просто «занимается всякими делами», например загружает приложение в память в нужном месте и запускает его, обеспечивает ввод данных и управление с помощью мыши и следит за отключением питания. А приложение в современном компьютере — это произвольная машина Тьюринга A. И для каждого алгоритма или систематического процесса есть такая А. Эта идея лежит в основе компьютерного мира.

Сколько программ может выполнить компьютер? Сколько приложений он может запускать? Их настолько много, что вы их даже не сосчитаете. Это все равно что спросить, сколько музыкальных произведений может сыграть рояль. Компьютер — самый гибкий инструмент, когда-либо созданный человечеством. Это чудо Гибкости. Цифровой Свет — лишь один из миров, записанный на его бесконечной ленте.

Джонни фон Нейман

Принститут — сленговое название Института перспективных исследований в городе Принстон — притягивал гениев, особенно тех, кто бежал из нацистской Европы. Когда Тьюринг и Ньюман приехали туда в конце 1930-х (первый — для учебы в аспирантуре, второй — в творческий отпуск), там уже сияло небольшое, но впечатляющее созвездие ученых. Например, в Принституте тогда работал Альберт Эйнштейн. Но для нашей истории важнее, что там оказался Джон фон Нейман.

Янош Лайош Нейман родился 28 декабря 1903 года в Будапеште. Его отец, банкир Макс Нейман, в 1913 году получил от правительства Австро-Венгрии дворянский титул (предположительно, за финансовую помощь), что позволило ему добавить приставку «фон» к австрийской фамилии. Так что его сын стал известен в Америке как Джон фон Нейман. Он переехал туда навсегда в 1933 году и стал одним из первых преподавателей Принститута.

В Будапеште семья Неймана принадлежала к финансовой элите, поэтому и в новой стране он продолжал вести аристократический образ жизни. Он ездил исключительно на машинах марки «Кадиллак», но часто попадал в аварии, после которых приобретал новый автомобиль. Такое поведение немало говорит о его личности. Еще одной подсказкой может быть то, что он отзывался на имя Джонни. На этой знаменитой фотографии (рис. 3.6) Джонни вверху слева в деловом костюме и галстуке — его посведневный наряд — верхом на муле, который смотрит в противоположную сторону (можно сказать, задом наперед), замыкает кавалькаду, направляющуюся в Большой каньон. Он был жизнерадостным повесой и гостеприимным хозяином. Он обожал мартини, нелепые шляпы для вечеринок и непристойные лимерики.

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

Рис. 3.6

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

Фон Нейман не обделил вниманием и одну из знаменитых 23 проблем Гильберта, связанных с основами математики. Он попытался решить Вторую проблему Гильберта за несколько лет до того, как Тьюринг взялся за е-Проблему.

Во Второй проблеме Гильберта ставится вопрос, не противоречивы ли аксиомы арифметики — ее фундаментальные, даже очевидные истины. Гильберт считал важным показать, что по крайней мере простая арифметика поддерживается системой логики, которая не приводит к противоречиям. Это кажется разумным, но в 1931 году Курт Гёдель в Вене доказал, что система логики не может быть полной, если она достаточно надежна, чтобы поддерживать арифметику и при этом быть свободной от противоречий. Столь поразительный результат, известный как теорема Гёделя о неполноте, означает, что в логической системе существуют истины, которые в рамках этой системы не могут быть доказаны. Скажем иначе: цена последовательности требует, чтобы вы довольствовались тем, что не сможете систематически все доказать. Теорема Гёделя утверждает, что не может быть универсальной математической машины для получения любой математической истины. Тьюринг позднее, в 1936-м, пришел к обратному результату: универсальный компьютер для всего, что поддается вычислению, существует.