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

Где-то в 1800-х годах Чарльз Бэббидж изобрел первый компьютер, тогда слово «компьютер» имело иное значение, и он назвал свое изобретение Разностной машиной или Аналитической машиной. Гениальный изобретатель опережал свое время, но, к сожалению, не завершил свое изобретение, и лишь спустя сто лет был изобретен первый настоящий компьютер, но это уже другая история. А сегодняшняя статья об Аналитической Машине Бэббиджа.

Согласно чертежам Бэббиджа машина должна была состоять из следующих частей:

1. Склад - жесткий диск, память; 2. Мельница - процессор; 3. Паровой двигатель - блок питания; 4. Принтер - принтер; 5. Карты операций - программы; 6. Карты переменных - система адресации; 7. Числовые карты - для ввода чисел; 8. Управляющие барабаны - микропрограммы.

Самовычисляющая машина

В этой статье мы попробуем выяснить устройство Аналитической Машины, но для начала следует отметить, что она принадлежала к распространенному с 1740-х годов семейству «автоматических» (само-) механизмов.

И хотя Бэббидж избегал использования этого понятия, в новостях и изданиях ее описывали именно так:

За завтраком я имела удовольствие сидеть рядом с мистером Бэббиджем, известным в наших кругах изобретателем самовычисляющей машины. Взгляд его кажется столь проницательным, будто он видит науку - или любой другой предмет, ставший объектом его внимания, - насквозь.
Эди Седжвик, 1841 г.
Центробежный регулятор - первый из «самодействующих» механизмов индустриальной эпохи. Кстати, именно он является одной из самых узнаваемых частей парового двигателя.


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

Сама же конструкция Разностной машины была схожа с арифмометрами, и, как арифмометры, Машина состояла из длинной череды зубчатых колес, которые складывают числа, а потом выдают сумму.

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

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

Примерно все взаимодействовало так:

  1. Карты операций (А) указывают картам переменных (В), что нужно запросить числа для расчетов;
  2. Числа вводятся с числовых карт (С) или со склада (D) и поочередно поступают на ось ввода (Е);
  3. Ось ввода передает числа на центральные колеса (F);
  4. Карта операции дает команду сложения чисел или умножения или иную, а барабаны (G) поворачиваются до положения, в котором их штифты будут соответствовать операции.
  5. Барабаны активируют рычаги, соединяя шестерни мельницы (H) с центральными колесами. А уже в мельнице определенные устройства отвечают за сложение, умножение и иные действия;
  6. Шестерни выполняют умножение исходных чисел;
  7. Мельница при необходимости может зацикливать действия, передавая команды на разные участки перфокарты;
  8. Результат попадает на ось вывода (I).
  9. Ось вывода передает данные на принтер (D) или отправляет на склад согласно картам переменных;
  10. Карты операций подают команду на подачу звонка (J) и на остановку Машины. Всё!

Память: склад

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

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

Кроме зубчатых колес числа могли храниться на числовых картах в виде комбинаций отверстий:

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

Рейки и карты переменных для передачи данных

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


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


Для передачи числа с дальнего конца склада требовалась зубчатая рейка длинной в несколько метров.

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


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

Мельница вычислений

После попадания чисел в мельницу начинается главная часть работы Машины - арифметические действия, выполняемые снова и снова.

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

В своих публикациях Бэббидж очеловечивал Машину и про «сквозной перенос» писал:

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

Колесо А обнуляется и на нем задается первое число. Второе число задается на колесе В, которое в сцепке с колесом А. Обнуление первого колеса прибавляет число, которое там содержалось, к значению на колесе В.

Возьмем для примера:

Вспомним школьную арифметику, а именно сложение в столбик и перенос единиц. Если расположить цифры обоих чисел по столбцам, как это сделано в Машине, и складывать их по разрядам, то в первом случае не будет переноса, во втором будет перенесена единица, а в третьем сумма будет равна 9, но перенесенная ранее единица инициирует перенос.

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


Эта штука переносит единицу снизу вверх по одной!

Программы

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


Карта операций

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

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

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

Карты операций управляют и барабанами, и картами переменных, и выглядят примерно так:

Перфокарты

Первой системой, построенной на перфокартах, был жаккардов станок, и именно им вдохновлялся Бэббидж.


Карта Жаккара, 1850 г.

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

Логика и циклы

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

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

Таким образом, условный рычаг замыкает цикл, и Машина «поедает собственный хвост»: перфокарты управляют барабанами, барабаны Машиной, Машина барабанами, а барабаны перфокартами.

На этом я закончу сегодняшнюю статью. Если у вас есть какие-то дополнения, то я буду рад обсуждениям в комментариях.

Всем хорошего дня и точных вычислений!

Литература:
«Невероятные приключения Лавлейс и Бэббиджа. Почти правдивая история первого компьютера»

На момент прекращения работ над созданием разностной машины деятельный мозг Бэббиджа был занят решением уже другой, более тяжелой задачи. Бэббидж пожелал создать новый прибор - Аналитическую машину (Analytical Engine). Ее главным отличием от разностной машины должно было стать то обстоятельство, что она была программируемой и могла выполнять любые заданные ей вычисления.

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

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

Control barrel - управляющий барабан (управляющее устройство - УУ), -store - хранилище (теперь мы называем это памятью - ЗУ) -mill - мельница (арифметическое устройство - АУ).

Регистровая память машины Бэббиджа была способна хранить как минимум сто десятичных чисел по 40 знаков, теоретически же могла быть расширена до тысячи 50-разрядных (для сравнения укажем, что запоминающее устройство одной из первых ЭВМ «Эниак» в 1945 г. сохраняло всего 20 десятиразрядных чисел). Арифметическое устройство имело, как мы бы сейчас сказали, аппаратную поддержку всех четырех действий арифметики. Машина производила сложение за 3 секунды, умножение и деление - за 2 минуты. Эта «мельница» состояла из трех основных регистров: два для операндов, а третий для результатов действий, относящихся к умножению. Имелись также таблица для хранения промежуточных результатов и счетчик числа итераций. Основная программа заносилась на барабан (Управляющее устройство), в дополнение к ней могли использоваться перфокарты, предложенные Жозефом Мари Жаккаром еще в 1801 г. для быстрого перехода с узора на узор в ткацких станках.

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

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

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

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

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

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

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

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

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

В 1810 году Бэббидж поступил в Тринити-колледж в Кембридже. Все свободное время Чарльз посвятил самостоятельному изучению математики. Он изучал труды Лагранжа, Лейбница, Эйлера, Ньютона и других “великих математических умов”. Кроме того, молодой человек имел доступ к работам математиков Парижской, Берлинской и Санкт-Петербургской академий.

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

Неожиданно, в 1812 году Бэббидж покидает Тринити-колледж, сославшись на низкий уровень получаемых студентами знаний. Злые языки, знавшие Чарльза, говорили, что он ушел из-за того, что большинство учителей и учеников считали Бэббиджа третьим человеком в колледже после Гершеля и Пикока. Не смерившись с этим, Бэббидж отправился в колледж св. Петра, где через два года получил степень бакалавра.

В 1815 году Чарльз с молодой супругой (в год окончания колледжа св. Петра он женился на Джорджиане Витмур) перебрались в столицу Англии, где через год Бэббидж стал Членом Королевского общества Лондона.

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

Малая разностная машина.

Первым изобретением, которое сделало Бэббиджа знаменитым, стала вычислительная машина, которую Чарльз назвал “разностная машина”. В 1812 году Бэббидж был занят за изучением логарифмических таблиц. Занятия его так утомили, что молодой математик заснул прямо за письменным столом. Когда его разбудил друг с вопросом: “Чем занят?”, Чарльз ответил, что хочет создать машину, которая сможет проводить сложные математические расчеты.


Семь лет ушло у математика для того, чтоб он смог сформировать идеи и принципы вычисления при помощи машины. Еще через три года в 1822 Бэббидж начал создавать свою “разностную машину”. Она состояла из множества шестеренок и рычагов. Разностная машина оперировала 18-ти разрядными числами, с точностью до восьмого знака после запятой. Она могла сосчитать значение многочленов 7-й степени. За свое изобретение Чарльз Бэббидж получил медаль Астрономического общества.

Большая разностная машина.

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

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

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

Аналитическая машина — прототип первого компьютера

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

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

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

Чарльз Бэббидж умер в 1871 году. После себя он оставил чертежи аналитической машины Первый программист - Ада Лавлейс и конспекты лекций, которые записал преподаватель туринской артиллерийской академии Луиджи Менабреа. На английский язык конспекты перевела друг и соратник Бэббиджа – Ада Лавлейс (дочь Джорджа Байрона). Она снабдила конспекты своими комментариями, которые по объему превосходили основной текст.

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

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

Личность Чарльза Бэббиджа и его заслуги.

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


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

Поучаствовал наш герой и в реформировании почтовой системы Англии, занимался вопросами шифрования и электромагнетизма.

Чарльз Бэббидж был очень разносторонним человеком. Среди его друзей значились Жан Фуко, Чарльз Дарвин, Юнг, Фурье и Пьер Лаплас. В истории талантливый изобретатель и математик оставил огромный след, недаром Бэббиджа называют изобретателем первого компьютера.

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

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

Основными частями Аналитической машины являлись:
1.«склад» - устройство для хранения чисел, то есть память в современной терминологии;
2.«мельница» - устройства для выполнения арифметических действий (Арифметическое устройство);
3.устройство, управляющее операциями машины;
4.устройства ввода и вывода;

(Элемент «мельницы». Рисунок Генри Бэббиджа. )

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

«Шину обмена» данными между АЛУ и памятью представлял собой набор зубчатых реек. Объём памяти должен был составлять тысячу чисел по 50 десятичных знаков. Для числа из 50-ти десятичных разрядов со знаком необходимо 168 бит, то есть объём ОЗУ был чуть больше двадцати килобайт. Для сравнения советую посмотреть объём ОЗУ первых компьютеров.

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

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

Операции умножения и деления предполагалось реализовать как последовательные сложения или вычитания.

Расчётное время выполнения операций должно было составлять одну секунду для сложения и вычитания и одну минуту для умножения и деления, что не так уж и плохо для 19го века.

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

(Ткацкий станок с картами Жаккара. )

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

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

Работая над аналитической машиной, Бэббидж сделал более 200 чертежей её различных узлов и около 30 вариантов компоновки машины. Однако размер замысла, и сложный характер изобретателя отсрочили рождение его изобретений на добрую сотню лет. Если взглянуть на разностную машину, которая по замыслу Бэббиджа должна был табулировать до 20-го знака функции с постоянными седьмыми разностями, то близкая по возможностям машина появилась в 1934-м году - она табулировала функции с постоянными разностями седьмого порядка и с точностью до 13 знаков. Что же говорить об исполинских возможностях задуманной аналитической машины…

(Часть печатающего механизма машины. )

После смерти Чарльза Бэббиджа, его сын, Генри, занялся аналитической машиной, решив сосредоточиться на двух узлах - «мельнице» и печатающем устройстве. В 1888-м году были готовы данные узла машины, которые смогли вычислить и напечатать произведение на числа натурального ряда с 29 знаками. При вычислении 32-го члена машина выдала неверный результат из-за сбоя в механизме переноса. Всю оставшуюся жизнь Генри продолжал работу над аналитической машиной отца, а также занимался популяризацией идей вычислительных машин.

Не смотря на то, что Бэббидж за свою жизнь написал немало книг и статей, он так и не создал подробного изложения принципов работы разностной и аналитической машины, так как считал создание машин более важным занятием, нежели их описание. Подробное описание разностной машины было дано Дионисием Ларднером, а аналитическая машина была описана в статье Луиджи Фредериго Менабреа. Именно эта статья и привела к тому, что на свет появилась первая в мире программа и первый программист. Честь носить такое звание имеет Ада Августа Лавлейс, дочь поэта Байрона. Чарльз Бэббидж был знаком с семьёй юной талантливой девушки и всячески поощрял её тягу к науке. Однажды Ада заинтересовалась вычислительными машинами Бэббиджа и взялась за перевод статьи Менабреа. Работая над переводом, Ада, дополнила её своими комментариями, примерами практического использования машин, а также составила «программу» вычисления чисел Бернулли. Имя Ады было увековечено в названии одного из языков программирования - Ада (Ada). Подробнее углубляться в биографию Ады я не буду, т.к. данная тема уже была на хабре.

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

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

PS: Всем кому интересны механические вычислительные машины, их история создания, описание конструкции и принципов работы и зарождение их электронных собратьев рекомендую найти и прочитать книгу «От абака до компьютера» за авторством Р. С. Гутера и Ю. Л. Полунова 1981 года издания.

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

Биография Чарльза Бэббиджа

Родился в Лондоне 26 декабря 1791 года в семье партнера банка Praeds Бенджамина Бэббиджа, владельца Биттон-эстейт в Тинмуте, и Бетси Пламли Тип. В 1808 году семья решила переехать в старый Роуден-хаус, расположенный в Ист-Тинмуте, и отец стал старостой соседней церкви Святого Михаила.

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

Затем он поступил в гимназию короля в Тотнесе, Саут-Девон, процветающую общеобразовательную школу, которая действует и по сей день, но состояние здоровья вынудило Чарльза на время обратиться к частным преподавателям. Наконец он попал в закрытую академию на 30 учеников, которой руководил преподобный Стивен Фриман. Учреждение располагало обширной библиотекой, которую Бэббидж использовал для самостоятельного изучения математики и научился любить ее. После ухода из академии у него было еще два личных наставника. Один из них был клириком Кембриджа, о преподавании которого Чарльз отозвался следующим образом: «Боюсь, что я не извлек всех преимуществ, которые мог бы получить». Другой был преподавателем Оксфорда. Он обучал Чарльза Бэббиджа классике, чтобы тот мог быть принят в Кембридж.

Учеба в университете

В октябре 1810 года Бэббидж прибыл в Кембридж и поступил в Тринити-колледж. Он имел блестящее образование - знал Лагранжа, Лейбница, Лакруа, Симпсона и был серьезно разочарован доступными математическими программами. Поэтому он вместе с Джоном Гершелем, Джорджем Пикоком и другими друзьями решил сформировать Аналитической общество.

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

В 1814-м Чарльз Бэббидж женился на Джорджиане Уитмор. Его отец по каким-то причинам так никогда и не благословил его. Семья жила в спокойствии в Лондоне, на Девоншир-стрит, 5. Только трое из их восьмерых детей дожили до взрослого возраста.

Отец Чарльза, его жена и один из его сыновей трагически погибли в 1827 году.

Проект компьютера

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

Три различных фактора повлияли на принятие им такого решения:

  • он не любил неаккуратность и неточность;
  • ему легко давались логарифмические таблицы;
  • его вдохновили существующие работы по У. Шикарда, Б. Паскаля и Г. Лейбница.

Основные принципы расчета устройства он обсудил в письме сэру Х. Дэви в начале 1822 года.

Разностная машина

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

Общество одобрило идею, и в 1823 году правительство предоставило ему 1500 фунтов на ее постройку. Бэббидж сделал в одной из комнат своего дома мастерскую и нанял Джозефа Клемента надзирать за постройкой устройства. Каждую часть нужно было делать вручную с помощью специальных инструментов, многие из которых разработал он сам. Чарльз совершил множество поездок по промышленным предприятиям, чтобы лучше понять производственные процессы. На основании этих путешествий и своего личного опыта создания машины в 1832 году Бэббидж опубликовал работу «Об экономике машин и производства». Это была первая публикация о том, что сегодня называется "научная организация производства".

Личная трагедия и путешествие по Европе

Смерть жены Джорджианы, отца Чарльза Бэббиджа и его малолетнего сына прервали строительство в 1827 году. Работа сильно обременяла его, и он был на грани срыва. Джон Гершель и несколько других друзей убедили Бэббиджа совершить поездку в Европу, чтобы восстановить силы. Он проехал через Нидерланды, Бельгию, Германию, Италию, посещая университеты и производства.

В Италии он узнал, что его назначили Лукасовским профессором математики Кембриджского университета. Первоначально он хотел отказаться, но друзья убедили его в обратном. По возвращении в Англию в 1828 году он переехал на Дорсет-стрит, 1.

Возобновление работы

Во время отсутствия Бэббиджа проект разностной машины попал под огонь критики. Распространились слухи, что он впустую потратил деньги правительства, что машина не работает и что она не имела бы никакого практического значения, если бы была сделана. Джон Гершель и Королевское общество публично защищали проект. Правительство продолжило свою поддержку, предоставив 1500 фунтов 29 апреля 1829 года, 3000 фунтов 3 декабря и столько же 24 февраля 1830 года. Работа была продолжена, но Бэббидж постоянно испытывал затруднения с получением денег из казны.

Отказ от проекта

Финансовые проблемы Чарльза Бэббиджа совпали с обострением разногласий с Клементом. Бэббидж за своим домом построил двухэтажную, 15-метровой длины мастерскую. У нее была стеклянная крыша для освещения, а также несгораемая чистая комната для хранения машины. Клемент отказался переезжать в новую мастерскую и потребовал денег на переезды по городу для наблюдения за работой. В ответ Бэббидж предложил ему получать плату непосредственно из казны. Клемент отказался и прекратил работу над проектом.

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

Чарльз Бэббидж и его аналитическая машина

В удалении от разностной машины изобретатель начал думать об ее улучшенном варианте. Между 1833 и 1842 годами Чарльз пытался построить устройство, которое можно бы было запрограммировать на производство любых вычислений, а не только относящихся к полиномиальным уравнениям. Первый прорыв произошел, когда он перенаправил вывод аппарата на его вход для решения дальнейших уравнений. Он описал это как машину, которая «ест свой собственный хвост». Ему не понадобилось много времени на определение основных элементов аналитического двигателя.

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

Компьютер Чарльза Бэббиджа был спроектирован в 1835 году. Масштаб работы был поистине невероятным. Бэббидж и несколько помощников создали 500 крупных проектных чертежей, 1000 листов механических обозначений и 7000 листов описаний. Завершенная мельница была 4,6 м в высоту и 1,8 м в диаметре. Хранилище на 100 цифр простиралось на 7,6 м. Для своей новой машины Бэббидж построил лишь небольшие тестовые части. Полностью аппарат так и не был завершен. В 1842 году, после неоднократных неудачных попыток получить правительственное финансирование, он обратился к сэру Роберту Пилю. Тот отказал и вместо этого предложил ему рыцарское звание. Бэббидж отказался. Он продолжал изменять и совершенствовать конструкцию в течение многих последующих лет.

Графиня Лавлейс

В октябре 1842 года Федерико Луиджи, итальянский генерал и математик, опубликовал статью об аналитической машине. Августа Ада Кинг, графиня Лавлейс, давний друг Бэббиджа, перевела работу на английский язык. Чарльз предложил ей снабдить перевод примечаниями. Между 1842 и 1843 годами пара совместно написала 7 заметок, суммарная длина которых в три раза превысила фактический размер статей. В одной из них Ада подготовила таблицу выполнения программы, которую Бэббидж создал для вычисления чисел Бернулли. В другой она писала об обобщенной алгебраической машине, которая может выполнять операции с символами так же, как с цифрами. Лавлейс была, пожалуй, первой, кто понял более общие цели устройства Бэббиджа, а некоторые считают ее первым в мире компьютерным программистом. Она начала работать над книгой, описывающей аналитическую машину более детально, но не успела ее закончить.

Чудо машиностроения

В период между октябрем 1846-го по март 1849-го Бэббидж приступил к проектированию второй разностной машины, используя знания, полученные им при создании аналитической. В ней использовалось лишь 8000 частей, в три раза меньше, чем в первой. Это было чудо машиностроения.

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

24 чертежа оставались в архивах музея науки, пока идеи Чарльза Бэббиджа не были реализованы в 1985-1991 годах созданием полноразмерной реплики по случаю 200-й годовщины со дня его рождения. Размеры устройства составили 3,4 м в длину, 2,1 м в высоту и 46 см в глубину, а его вес - 2,6 тонны. Пределы точности были ограничены значениями, которых можно было достичь в то время.

Достижения

В 1824 году Бэббидж получил Золотую медаль Королевского астрономического общества «за его изобретение машины для вычисления математических и астрономических таблиц».

С 1828 по 1839 г. Бэббидж был Лукасовским профессором математики в Кембридже. Он много писал для ряда научных периодических изданий, а также сыграл важную роль в создании Астрономического общества в 1820 году и Статистического общества в 1834 году.

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

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

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

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

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