Читать книгу Инноваторы. Как несколько гениев, хакеров и гиков совершили цифровую революцию онлайн | страница 25

Третий вклад Ады состоял в том, что в своем заключительном “Примечании G” она подробно, шаг за шагом объяснила, как работает то, что мы сейчас называем компьютерной программой или алгоритмом. Для примера она написала программу вычисления чисел Бернулли[7] – чрезвычайно сложно устроенного бесконечного ряда чисел, которые в том или ином виде играют важную роль в теории чисел.

Чтобы показать, как аналитическая машина могла генерировать числа Бернулли, Ада описала последовательность операций, а затем составила диаграмму, показывающую, как каждая из них может быть закодирована в машине. Попутно она помогла разработать концепцию подпрограмм (последовательности инструкций, которые выполняют определенную задачу, например вычисление косинуса или сложных процентов, и которые могут по мере необходимости вставляться в более крупные программы), а также рекурсивных вложенных циклов (последовательности повторяющихся инструкций)[8]. Это стало возможным сделать благодаря применению перфокарт. Для определения каждого числа Бернулли, как она объяснила, необходимо семьдесят пять карт, затем процесс становится итерационным, поскольку это число отправляется обратно и используется в процессе уже для получения следующего числа. Она пишет: “Очевидно, что те же самые семьдесят пять переменных карт могут быть использованы для вычисления каждого последующего числа”. Она предвидела, что будет создана библиотека часто используемых подпрограмм, и действительно, спустя столетие ее интеллектуальные наследники, в том числе такие женщины, как Грейс Хоппер из Гарварда, а также Кей Макналти и Джин Дженнингс из Пенсильванского университета, создадут такую библиотеку. Кроме того, машина Бэббиджа позволяла переходить туда и обратно внутри последовательности команд на картах в зависимости от полученных промежуточных результатов, и таким образом появилось то, что в будущем станет операцией условного перехода – когда тот или иной тип инструкций выбирается в зависимости от условий.

Бэббидж помогал Аде с расчетами чисел Бернулли, но из ее писем видно, что она сама глубоко погрузилась в сущность задачи. “Я упорно ищу и тщательно анализирую все возможные способы вычисления чисел Бернулли, – писала она в июле, всего за несколько недель до того, как ее перевод и примечания были посланы в печать. – Я в таком смятении из-за того, что возникло такое странное затруднение и разочарование с этими числами, что я сегодня не могу ничего делать… Я в оцепенении и растерянности”40.


Представленный фрагмент книги размещен по согласованию с распространителем легального контента ООО "ЛитРес" (не более 15% исходного текста). Если вы считаете, что размещение материала нарушает ваши или чьи-либо права, то сообщите нам об этом.