Блог

Первая компьютерная программа Ады Лавлейс: что она написала на самом деле в 1843 году

«Примечание G» Ады Лавлейс к ее переводу статьи Луиджи Менабреа об Аналитической машине Чарльза Бэббиджа (1843) содержит то, что считается первой компьютерной программой: алгоритм вычисления чисел Бернулли с использованием (так и не построенной) Аналитической машины. Но важность этого примечания выходит далеко за рамки одного алгоритма. Лавлейс поняла в вычислениях то, что сам Бэббидж не смог полностью сформулировать — и что сообщество компьютерных наук в полной мере развило лишь столетие спустя.

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

Чарльз Бэббидж спроектировал Аналитическую машину в 1830-х годах — механический компьютер с памятью («Склад»), процессором («Мельница»), вводом через перфокарты и условным ветвлением. Он так и не был построен из-за стоимости и производственных ограничений, но проект был логически завершенным. Заметки Лавлейс — наше самое ясное объяснение того, как он мог бы работать.

Алгоритм чисел Бернулли

Примечание G содержит таблицу операций — по сути, алгоритм в современных терминах — для вычисления чисел Бернулли с помощью Аналитической машины. Он включает в себя циклы, условные операции и одновременное управление несколькими переменными. Это сложнее всего, что когда-либо документировал Бэббидж, и историки обычно приписывают авторство дизайна в первую очередь Лавлейс, а не Бэббиджу.

Видение за пределами вычислений

Что еще важнее, Лавлейс поняла, что машина — это не просто калькулятор, а манипулятор символами: она могла работать с любыми объектами, которые можно представить символически, а не только с числами. «Машина могла бы сочинять сложные и научные музыкальные произведения любой степени сложности или протяженности», — писала она. Это озарение — о том, что вычисления по своей сути не сводятся к арифметике — на 100 лет предвосхищает теорию вычислимости Чёрча-Тьюринга.

БЕСПЛАТНЫЙ ТЕСТ
А какой у вас?

Двадцать вопросов, восемь минут на часах и процентиль, измеренный по всем, кто его проходил. Без регистрации.

Пройти тест IQ →

Споры о ее роли

Некоторые историки утверждали, что вклад Лавлейс был в основном редакторским, а ключевые идеи исходили от Бэббиджа. Переписка между ними показывает широкое сотрудничество с правками и предложениями Бэббиджа. Однако алгоритм Бернулли в примечании G и философские прозрения о природе вычислений, по-видимому, являются в первую очередь вкладом Лавлейс.

Часто задаваемые вопросы

Что на самом деле запрограммировала Ада Лавлейс?

Лавлейс написала в примечании G (1843) алгоритм для вычисления чисел Бернулли с помощью Аналитической машины Бэббиджа — он считается первой компьютерной программой. Алгоритм включает циклы и условные операции. Она также сформулировала принцип, согласно которому компьютеры могут манипулировать любыми символическими представлениями, а не только числами, — предвосхитив современную теорию вычислений.

Была ли Ада Лавлейс действительно первым программистом?

Это утверждение является предметом споров. Примечание G Лавлейс (1843) содержит первый документированный алгоритм, предназначенный для исполнения машиной. Некоторые историки утверждают, что Бэббидж внес существенный вклад в алгоритм и что роль Лавлейс была преувеличена в современных популярных публикациях. Однако философское видение вычислений, выходящих за рамки арифметики, по-видимому, действительно является личным прозрением Лавлейс.

Что такое число Бернулли?

Числа Бернулли — это последовательность рациональных чисел, имеющих глубокие связи с теорией чисел. Они появляются в формулах сумм степеней целых чисел, дзета-функции Римана и рядах Тейлора тригонометрических функций. Первые несколько: B0=1, B1=-1/2, B2=1/6, B4=-1/30. Алгоритм Лавлейс для их вычисления стал первым алгоритмом, разработанным для машинного исполнения.

Читайте полную статью на Geniuses.Club

Откройте для себя других гениев

1300+ статей · 1300+ биографий · English

Посмотреть все