Аналитическая машина бэббиджа как работает. Принцип аналитической машины Чарльза Бэббиджа

Друзья, настал тот час, когда все мальчики меряются... Мощностью компьютера! Но вот сегодня мне бы хотелось вспомнить можно сказчать первый прототип сего чуда. Не многие знают, что именно Чарльз Бэббидж создал первую программируемую вычислительную машину, сделав попытку реализовать многие идеи, которые в XX веке найдут свое применение в вычислительной технике. Но знаете ли Вы ещё и то, что даже сегодняшний, современный компьютер по сути то так и остался усовершенствованной копией той самой Разностной машины Чарльза Бэббиджа? Давайте именно о этой машине и поговорим.

И так, для начала, дабы немного понять о чём речь- предлагаю не большую цитату Википедии :

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

И так, как всегда предлагаю разделить публикацию на несколько частей. Для начала узнаем кто же такой Чарлз Бэббидж, после чего уже познакомимся с его работами, а в четвёртой части мы поговорим непосредственно о его аналитической машине и о том, почему же эти принципы мы используем до сих пор?

Часть 1. Кто такой Чарлз Бэббидж?

Ну и конечно же, кто, как не Википедия Ивановна нам может рассказать лучше о данном человеке.

Как я уже писала в статье , она не была построена своим создателем. Однако в ходе работы у Бэббиджа возникла идея создания универсального вычислительного автомата, который должен был работать по программе без вмешательства человека.

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

В 1834 году Чарльз Бэббидж описал свою аналитическую машину (Analytical Engine). Это был проект компьютера общего назначения с применением перфокарт, а также парового двигателя в качестве источника энергии.

Перфокарта

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

Кстати, в начале 1980-х свои программы все пользователи-программисты того времени набивали именно на перфокарты.

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

Действительно, без автоматического программного управления вычислительным процессом каждую последующую операцию машине должен «подсказывать» человек, нажимая на соответствующие кнопки. А осмысленно человек в самом лучшем случае может делать это 1-2 раза в секунду из-за инерционности своей нервной системы.

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

По проекту 1834 г., разработанному Бэббиджем на бумаге, аналитическая машина включала 4 блока:

  1. регистры памяти (по терминологии Бэббиджа store - хранилище, склад) – это аналог современного запоминающегося устройства (ЗУ) для хранения исходных данных и результатов;
  2. арифметический блок (по терминологии Бэббиджа mill - мельница) – это аналог современного устройства для вычислений;
  3. барабан, управляющий операциями машины (control barrel) - прообраз современного устройства управления (УУ);
  4. перфокарты – прототип ввода/вывода информации.

Такая схема Вам ничего не напоминает? Ведь это уже практически архитектура электронно-вычислительных машин (ЭВМ). Остается лишь придумать схему совместного хранения программ и данных в памяти компьютера. Это было сделано 100 лет спустя коллективом ученых во главе с американским математиком Джоном фон Нейманом.

Вернемся в 1834 год. Еще не изобретены фотография и электричество, нет телефона и радио. По морям плавают исключительно парусные судна, а на суше лошадь – друг человека. И вдруг – аналитическая машина, то есть, механическое устройство с идеями автоматического программного управления! Человечество смогло это реализовать спустя более 100 лет благодаря появлению электроники.

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

Изобретение регистров предоставляло такие вычислительные возможности, которые поразили Бэббиджа по сравнению с его первой разностной машиной: «Шесть месяцев я составлял проект машины, более совершенной, чем первая. Я сам поражен той вычислительной мощностью, которой она будет обладать; еще год назад я не смог бы в это поверить».

Как уже отмечалось, в единую логическую схему Бэббидж увязал арифметическое устройство («мельница»), регистры памяти, объединенные в единое целое («склад»), и третье устройство, которому автор не дал названия. Оно было реализовано с помощью перфокарт трёх типов:

  1. операционные карты (англ. operation card) служили для переключения машины между режимами сложения, вычитания, деления и умножения;
  2. карты переменных (англ. variable card) управляли передачей информации со «склада» на «мельницу» и обратно;
  3. числовые перфокарты могли быть использованы для ввода данных в машину, а также для сохранения промежуточных результатов вычислений, если место на «складе» было ограничено.

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

Аналитическая машина не была построена. Изобретатель писал в 1851 г.: «Все разработки, связанные с Analytical Engine, выполнены за мой счет. Я провел целый ряд экспериментов и дошел до черты, за которой моих возможностей не хватает. В связи с этим я вынужден отказаться от дальнейшей работы».

Из всех изобретателей прошлых веков, которые внесли свой вклад в развитие вычислительной техники, к созданию компьютера в сегодняшнем его понимании, ближе всех подошел английский математик и изобретатель Чарльз Бэббидж.

Он родился в графстве Девоншир в 1792 году в богатой семье банкира. С детства славился остротой ума и выделялся своими чудачествами. В 1827 году стал заведующим кафедрой математики Кембриджского университета, и занимал этот пост 13 лет, не прочитав ни одной лекции.

Чарльз Бэббидж также участвовал в основании Королевского астрономического общества, был автором работ на различные темы – от технологии производства до политики.

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

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

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

В 1822 г. в своей научной статье Чарльз Бэббидж описал машину, которая способна рассчитывать и воспроизводить большие математические таблицы. Он анонсировал ее как «Разностную машину», и уже построил пробную модель. Модель состояла из валиков и шестеренок, которые вращались вручную при помощи рычага. Получив поддержку Королевского общества, он обратился к правительству за финансированием на создание машины.

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

Сумма правительственных субсидий возросла до 17000 фунтов стерлингов, было потрачено 6000 личных сбережений, а работа все еще не была закончена. Через несколько лет, разочаровавшись в проекте, правительство приостановило выделение средств на ее создание.

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

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

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

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

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

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

Как ни странно, но первое изобретение Бэббиджа – Разностная машина была, все же, воплощена в жизнь шведским издателем, изобретателем и переводчиком Пером Георгом Шойцом. Он, воспользовавшись работами Бэббиджа, построил свой вариант машины. Бэббидж, испытал смешанные чувства, наблюдая за успешными испытаниями Разностной машины Шойца. По иронии судьбы, британское правительство, которое остановило финансирование машины Бэббиджа, заказало для своей канцелярии одну из таких машин.

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

Современная копия разностной машины Бэббиджа экспонируется в Лондонском музее науки. Этот экспонат весит 3 тонны, его размеры – 2,1х3,4х0,5 м. Копия была построена инженерами Р. Криком и Б. Холловеем. На машине можно распечатать сувенир – решение уравнения.

Демонстрация работы машины на странице www.youtube.com/embed/qctHEGKr9Zs :

Небольшое видео о работе Бэббиджа на странице www.youtube.com/watch?v=QVxbNZWLP60 :

Чарльз Беббидж считается основателем современной вычислительной техники. В работе Чарльза Бэббиджа прослеживается два направления: разностная и аналитическая вычислительная машины. Аналитическая машина Чарльза Бэббиджа использует принцип программного управления и является предшественницей современных ЭВМ.

Первая небольшая модель аппарата Чарльза Бэббиджа

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

Бэббидж обратился к правительству Великобритании с просьбой о финансировании полномасштабной разработки. Правительство Великобритании, заинтересовавшись идеей, выделило деньги на дальнейшее развитие проекта. В 1834 году Бэббидж занялся разработкой еще более сложного агрегата - аналитической машины, способной выполнять определенные действия в соответствии с инструкциями, задаваемыми оператором. Модель аналитической машины фактически можно считать прообразом современного компьютера. Главное отличие аналитической машины от разностной заключается в том, что она программируемая и может выполнять любые заданные ей вычисления.

Принцип аналитической машины Чарльза Бэббиджа

Аналитическая машина Чарльза Бэббиджа использует принцип программного управления и является предшественницей современных ЭВМ.

Основные части аналитической машины

Аналитическая машина состояла из следующих четырех основных частей:

  • блок хранения исходных, промежуточных данных и результатов вычислений. (состоял из набора зубчатых колес, идентифицирующих цифры подобно арифмометру);
  • блок обработки чисел из склада, названный мельницей (в современной терминологии - это арифметическое устройство);
  • блок управления последовательностью вычислений (в современной терминологии - это устройство управления УУ);
  • блок ввода исходных данных и печати результатов (в современной терминологии - это устройство ввода/вывода).

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

Большое влияние на посмертную судьбу машины оказал генерал Бэббидж, сын изобретателя. Выйдя в отставку в 1874 году, он несколько лет посвятил изучению отцовского наследия, а в 1880 году начал работу по восстановлению Difference Engine в «железе». Работа продолжалась с переменным успехом до 1896 г. В конце концов к 1904 году был создан небольшой фрагмент машины, который печатал результаты вычислений. Кроме того, Бэббидж-младший сделал несколько мини-копий Difference Engine и разослал их по всему миру.

В 1991 году, к двухсотлетию со дня рождения ученого, сотрудники лондонского Музея науки воссоздали по его чертежам 2,6-тонную «разностную машину № 2», а в 2000 году - еще и 3,5-тонный принтер Бэббиджа. Оба устройства, изготовленные по технологиям середины XIX века, превосходно работают - в расчётах Бэббиджа было найдено всего две ошибки.

Александр Костинский Мы живем в эпоху триумфа компьютерной техники. Но кто первым предложил архитектуру современного компьютера? Кто был первым программистом? Одни историки науки предлагают считать родоначальником вычислительной техники знаменитого физика, математика, философа Блеза Паскаля, который разработал проект "Паскалины" - первой механической вычислительной машины. Но большинство исследователей все-таки полагают создателем первой программируемой вычислительной машины Чарльза Бэббиджа (Charles Babbage), а первым программистом называют почитательницу и соратницу Бэббиджа леди Аду Августу Лавлейс - английскую графиню, единственную дочь великого английского поэта лорда Джорджа Байрона. Сегодня мы расскажем о первых шагах современной вычислительной математики, подробно остановившись на этих двух замечательных фигурах. Автор передачи - Михаил Кошкин при участии Владимира Губайловского, текст читают Александр Костинский и Владимир Губайловский.

Михаил Кошкин: Чарльз Бэббидж родился в 1791 году. Он проявил математические способности в период учебы в кембриджском колледже Святой Троицы, куда поступил в 1810 году. Продолжил своё образование он во Франции, где познакомился с великими математиками Пьером Лапласом и Жаном Батистом Фурье. Но чистая математика его не привлекла. Сильнейшее влияние на молодого математика оказал барон Гаспар де Прони, вычислитель при французском правительстве с 1790 по 1800 годы. Успехи де Прони натолкнули Бэббиджа на мысль о построении технологии автоматических вычислений.

Послереволюционное правительство Франции решило существенно улучшить логарифмические и тригонометрические таблицы. Эту работу и поручили барону де Прони, руководившему Бюро переписи.

Он удачно перенес идею разделения труда на вычислительный процесс. Де Прони распределил исполнителей по трем уровням: высшую ступень занимали выдающиеся математики, среди них были Адриен Лежандр и Лазар Карно. Они готовили математическое обеспечение. На втором уровне стояли образованные "технологи", которые организовывали рутинный процесс вычислительных работ. Последними в этой структуре были вычислители computers. От них требовалось только аккуратно складывать и вычитать. На первых порах компьютерами работали в прошлом девушки сомнительного поведения, которым французская революция помогла и настоятельно посоветовала сменить профессию. С этого момента начинается блестящая карьера слова "компьютер".

Выдающаяся заслуга Гаспара де Прони в том, что он свел сложные математические вычисления к рутинным операциям, не требующим от подавляющего большинства исполнителей творческого подхода. Дело в том, что подавляющее большинство практических физических и инженерных задач невозможно решить с необходимой точностью с помощью аналитических выражений. На их смену в начале ХIХ века приходят численные методы. Де Прони создал и заставил работать первую вычислительную машину, где в качестве "процессора" использовался человек-вычислитель. Более точно "машину" де Прони можно назвать "вычислительной мануфактурой". Этот замечательный подход применялся при проектировании очень сложных конструкций кораблей, мостов, самолетов, ракет, при вычислениях траекторий снарядов вплоть до расчетов первых атомных бомб.

Именно распределение вычислительного труда у де Прони наводит Бэббиджа на мысль заменить ошибающегося человека-вычислителя, как он надеялся, безошибочной "машиной".

Первая попытка Чарльза Бэббиджа создать вычислительную разностную машину Difference Engine - окончилась неудачей. Она строилась на принципе счёта "конечных разностей". С середины 30-х годов Бэббидж работает над проектом программируемой машины - Analytical Engine. Она становится делом всей его жизни. То была первая машина, управляемая внешней программой.

Новая машина отличалась от арифмометра наличием регистров. В них сохранялся промежуточный результат вычисления, и с помощью тех же регистров выполнялись действия, предписанные "программой". Возможности изобретенных регистров поразили самого автора: "Шесть месяцев я составлял проект машины, более совершенной, чем первая. Я сам поражен той вычислительной мощностью, которой она будет обладать, еще год назад я не смог бы в это поверить".

Архитектура Analytical Engine практически соответствует современным компьютерам. В ней есть все три классических составляющих: control barrel - управляющий барабан, сейчас говорят управляющее устройство, store - хранилище (теперь мы называем это памятью или запоминающим устройством) и mill - мельница (современный термин - арифметическое устройство). Регистровая память способна была хранить как минимум 100 десятичных чисел по 40 знаков, теоретически же могла быть расширена до тысячи 50-разрядных(!) чисел. Для сравнения укажем, что запоминающее устройство крупнейшей в 1945 году ЭВМ "Эниак" содержало всего 20 десятиразрядных чисел. Арифметическое устройство машины Бэббиджа аппаратно поддерживало все четыре арифметических действия. Машина складывала два числа за 3 секунды, а умножала или делила - за 2 минуты. Эта "мельница" состояла из трех основных регистров: два для операндов, то есть чисел, а третий для результатов действий, относящихся к умножению. Еще имелась таблица для хранения промежуточных результатов и счетчик числа итераций. Основная программа размещалась, можно сказать записывалась, на управляющем барабане. В дополнение к барабану использовались перфокарты, предложенные Жозефом Жаккаром в 1801 году для быстрого перехода с узора на узор в ткацких станках.

На вход машины должны были поступать два потока перфокарт, которые Бэббидж назвал operation card (управляющими картами) и variable card (картами переменных). Управляющие перфокарты руководили процессом обработки данных, записанных на перфокартах переменных. Информация записывалась на перфокартах путем пробивки отверстий. Из операционных перфокарт можно было составить библиотеку функций. Помимо этого, Analytical Engine, по замыслу Бэббиджа, должна была содержать устройство печати и устройство вывода результатов на перфокарты для последующего использования. Так что Бэббидж стал пионером идеи ввода-вывода.

Analytical Engine так реализована и не была. Бэббидж писал в 1851 году: "Все разработки, связанные с Analytical Engine, выполнены за мой счет. Я провел целый ряд экспериментов и дошел до черты, за которой моих возможностей не хватает. В связи с этим я вынужден отказаться от дальнейшей работы".

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

В 1864 году Бэббидж написал: "Пройдет, вероятно, полстолетия, прежде чем люди убедятся, что без тех средств, которые я оставляю после себя, нельзя будет обойтись". Он ошибся на 30 лет: в начале сороковых годов XX века Говард Айкен построил машину Mark I, о которой он говорил, как об "осуществленной мечте Бэббиджа".

Большое влияние на посмертную судьбу машин оказал генерал Бэббидж, сын изобретателя. Выйдя в отставку в 1874 году, он изучал труды отца, а с 1880 года 16 лет восстанавливал в "железе" первую дифференциальную машину. Им был создан небольшой её фрагмент, который печатал результаты вычислений. Кроме того, сын Бэббиджа сделал несколько миникопий Difference Engine и разослал их по всему миру.

В 1991 году, к двухсотлетию со дня рождения ученого сотрудники лондонского Музея науки воссоздали по его чертежам "разностную машину № 2" весом более двух с половиной тонн, а в 2000 году - еще и принтер Бэббиджа. Он весил три с половиной тонны. Оба устройства, превосходно работают - в расчётах Бэббиджа было найдено всего две ошибки.

Августа Ада Байрон Кинг родилась 10 декабря 1815 года и умерла в возрасте 37 лет. Она не помнила отца, а имя его в доме матери было под запретом.

Мать Ады, Анна Изабелла, занималась математикой. Миссис Байрон пригласила для дочери своего бывшего учителя - шотландского математика Огастеса де Моргана. Среди друзей миссис Байрон был и Чарльз Бэббидж.

Девочка не обманула ожиданий матери. Тринадцати лет от роду она чертила летательные аппараты. Впрочем, есть свидетельства, что Ада тайком сочиняла стихи. В тринадцать лет Ада написала матери: "Если ты не можешь дать мне поэзию, не дашь ли ты мне тогда поэтичную науку?"

Когда Аде исполнилось семнадцать, девушку представили королю и королеве. В июле 1835 года она вышла замуж за Уильяма, 8-го лорда Кинга 29 лет, ставшего первым графом Лавлейсом. Сэр Уильям был спокойным, уравновешенным и приветливым человеком. Он с одобрением относился к научным занятиям жены и помогал ей как мог.

В 1840 году Бэббидж посетил Турин, его пригласили прочесть лекции о своей машине. В отличие от Англии, лекции имели шумный успех. По-видимому, они читались по-французски, поскольку один из слушателей, Луиджи Менабреа, преподававший в Туринской артиллерийской академии, составил и издал конспект на французском языке "Элементы аналитической машины Чарльза Бэббиджа".

Ада Лавлейс перевела очерк Менабреа на английский язык и добавила "Примечания переводчика". "Примечания" вызвали настоящий восторг Бэббиджа.

В очерке Менабреа пишет: "Сам процесс вычисления осуществляется с помощью алгебраических формул, записанных на перфорированных картах, аналогичных тем, что используются в ткацких станках Жаккара. Вся умственная работа сводится к написанию формул, пригодных для вычислений, производимых машиной, и неких простых указаний, в какой последовательности эти вычисления должны производиться".

Хотя Бэббидж написал свыше 70 книг и статей, а также составил большое число неопубликованных описаний вычислительной машины, полного и доступного описания и, главное, анализа возможностей машины для решения различных задач он так и не сделал. Бэббидж говорил, что слишком занят разработкой машины, чтобы уделять время её описанию. Работа Лавлейс не только восполняла этот пробел, но и содержала глубокий анализ особенностей аналитической машины.

Восемь примечаний Ады Лавлейс, посвящены, в основном, трём взаимосвязанным вопросам: особенностям работы устройства; его теоретическим возможностям и программированию решения конкретных задач на аналитической машине.

В Примечании А сравнивая две машины - разностную (то есть калькулятор) и аналитическую программируемую вычислительную машину, леди Лавлейс пишет, что вычислительная машина - совершенно иная область науки и техники и старается выработать терминологию. По ее определению аналитическая машина - воплощение науки об операциях, и она сконструирована специально для действий над абстрактными числами как объектами этих операций. Леди Лавлейс пишет: "Под словом операция, мы понимаем любой процесс, который изменяет взаимное отношение двух или более вещей, какого рода эти отношения ни были бы. Это наиболее общее определение (охватывающее все предметы во Вселенной). Операционный механизм может быть приведён в действие независимо от объекта, над которым производится операция. Этот механизм может действовать не только над числами, но и над другими объектами, основные соотношения между которыми могут быть выражены с помощью абстрактной науки об операциях и которые могут быть приспособлены к действию операционных обозначений и механизма машины. Предположим, например, что соотношения между высотами звуков в гармонии и музыкальной композиции поддаются такой обработке; тогда машина сможет сочинять искусно составленные музыкальные произведения любой сложности или длительности".

Примечание D интересно для истории программирования. Здесь приведена программа решения на машине системы двух линейных уравнений с двумя неизвестными. Лавлейс впервые применяет термин "рабочая переменная".

В примечании Е Ада уточняет и развивает соображения Менабреа о возможности расчёта на аналитической машине функций вида: Y= a + bx , Y = A + BcosX. Здесь Лавлейс формулирует: "Многие лица, недостаточно знакомые с математикой, считают, что роль машины сводится к получению результатов в цифровой форме, а природа самой обработки данных должна быть арифметической и аналитической. Это заблуждение. Машина может обрабатывать и объединять цифровые величины точно так, как если бы они были буквами или любыми другими символами общего характера, и фактически она может выдать результаты в алгебраической форме". В этом же примечании Лавлейс впервые вводит понятие цикла операций, а также понятие цикла циклов.

В примечании F содержится интересное замечание о возможностях аналитической машины получать решение такой задачи, которую из-за объема невозможно решить вручную.

В заключительном примечании G дана программа вычисления чисел Бернулли, в которой Лавлейс демонстрирует возможности программирования на аналитической машине.

Итак, Ада Лавлейс опубликовала три первые в мире вычислительные программы. Наиболее подробно она описала программу решения системы двух линейных алгебраических уравнений с двумя неизвестными. От ее идеи "рабочей переменной" остаётся лишь шаг до общего оператора присваивания - одной из основополагающих операций всех языков программирования. Вторую программу она составила для вычисления тригонометрической функции; для этой процедуры Лавлейс ввела понятие цикла - одной из фундаментальных конструкций структурного программирования. В третьей программе, составленной для вычислений чисел Бернулли, были придуманы рекурсивные вложенные циклы.

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

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

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

Беспроигрышная система ставок себя не оправдала. И Бэббидж, и муж Уильям Лавлейс, проиграв внушительную сумму, сравнительно скоро отказались от участия в игре и от усовершенствования системы. Но Ада, при помощи некоего Джона Кросса, упорно продолжала играть. Она израсходовала почти все принадлежащие ей средства и к 1848 году изрядно задолжала. Её матери пришлось погасить эти долги, а заодно и выкупить компрометирующие письма у Джона Кросса.

В начале пятидесятых годов появлялись первые признаки болезни, унесшей жизнь Ады Лавлейс. В ноябре 1850 года она пишет Бэббиджу: "Здоровье моё настолько плохо, что я хочу принять Ваше предложение и показаться по приезде в Лондон Вашим медицинским друзьям". Несмотря на принимаемые меры, болезнь прогрессировала и сопровождалась тяжёлыми мучениями. 27 ноября 1852 года Ада Лавлейс скончалась в возрасте 37 лет, как и ее отец Джордж Гордон Байрон.

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

В своей знаменитой статье "Может ли машина мыслить?" английский математик и логик Алан Тьюринг цитирует леди Лавлейс: "Аналитическая машина не претендует на то, чтобы создавать что-то действительно новое. Машина может выполнить только то, что мы умеем ей предписать". Тьюринг не соглашается. Он пишет: "Мнение о том, что машины не могут чем-либо удивить человека, основывается, как я полагаю, на одном заблуждении, которому в особенности подвержены математики и философы. Я имею в виду предположение о том, что коль скоро какой-то факт стал достоянием разума, тотчас же достоянием разума становятся все следствия из этого факта. Во многих случаях это предположение может быть весьма полезно, но слишком часто забывают, что оно ложно. Естественным следствием из него является взгляд, что якобы нет ничего особенного в умении выводить следствия из имеющихся данных, руководствуясь общими принципами". Далее Тьюринг пробует логически построить модель самообучающейся машины: "Важная особенность обучающейся машины состоит в том, что ее учитель в значительной мере не осведомлен о многом из того, что происходит внутри нее, хотя он все же в состоянии в известных пределах предсказывать поведение своей ученицы. Сказанное особенно применимо к дальнейшему воспитанию машины, прошедшей уже хорошую подготовку и вышедшей из начальной стадии "машины-ребенка"".

Но аргумент леди Лавлейс тем не менее не был окончательно поколеблен ни Тьюрингом, ни другими современными исследователями. Та острота и жесткость, с которой она поставила проблему нового знания, оказалась очень полезной не столько для программирования, сколько для методологии науки двадцатого века.

В мае 1979 года министерство обороны Соединенных Штатов объявило победителя в конкурсе на разработку универсального языка программирования. Им был признан язык Ада, названный в честь Ады Августы Лавлейс. Его создали ученые и программисты под руководством Жана Ишбиа. Прототипом языка стал другой язык программирования - "Паскаль". Он был назван в честь физика, математика, философа Блеза Паскаля, который в возрасте девятнадцати лет в 1624 году, разработал проект "Паскалины" - первой механической вычислительной машины.