Разрядность разностной машины чарльза бэббиджа. Малая разностная машина

Александр Костинский Мы живем в эпоху триумфа компьютерной техники. Но кто первым предложил архитектуру современного компьютера? Кто был первым программистом? Одни историки науки предлагают считать родоначальником вычислительной техники знаменитого физика, математика, философа Блеза Паскаля, который разработал проект "Паскалины" - первой механической вычислительной машины. Но большинство исследователей все-таки полагают создателем первой программируемой вычислительной машины Чарльза Бэббиджа (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 году, разработал проект "Паскалины" - первой механической вычислительной машины.

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

В истории вычислительной техники самыми длительными были : домеханический и механический. Они продолжались вплоть до середины 20 века.

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

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

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

Как решить проблему ошибок людей в вычислениях

В 18 веке возникла большая потребность в вычислениях для составления различных таблиц, которые широко использовались в астрономии, землемерном, страховом и банковском деле, мореплавании, кораблестроении, строительстве и т.д.

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

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

С 1812 г. профессор Кембриджского университета Чарльз Бэббидж приступил к работе над созданием разностной машины.

Почему машина называется разностной

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

По существу, метод разностей основывается на том, что уже вычислено значение произведения 5 на 5, и этот результат может быть использован для получения произведения 5 и следующих чисел (6, 7) путем прибавления 5 к известной сумме. Выглядит это следующим образом:

5 x 6 = 30
5 x 7 = 35 получается путем прибавления 5 к полученному произведению (30+5),
5 x 8 = 40 получается путем прибавления 5 к предыдущему произведению (35+5).

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

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

Трудности Беббиджа при создании машины

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

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

Не было станков, соответствующих инструментов. Найти квалифицированных рабочих и инженеров было трудно и дорого. Проблемой было и соблюдение требуемой точности обработки металла.

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

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

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

Эта машина по замыслу Бэббиджа должна была состоять из 25000 деталей, ее высота 2,4 метра, длина 2,1 метра, вес несколько тонн.

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

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

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

Однако из-за разногласий с исполнителем, выпускающим детали для разностной машины, проект закрылся в 1833 г. с прекращением государственного финансирования.

Разностная машина Ч.Бэббиджа, 1991 г.

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

Заработала через 200 лет

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

Она состоит из 4000 деталей и весит около 3 тонн; выполнена из бронзы, стали и железа, может вычислять разности 7 порядка.

Машина работает при помощи поворота рукоятки, является действующим экспонатом Лондонского научного музея.

В 2000 году к экспозиции добавилось спроектированное Бэббиджем печатающее устройство – принтер весом 3,5 тонны. Оба устройства, изготовленные по технологиям середины XIX века, превосходно работают - в расчётах Бэббиджа было найдено всего две ошибки. Так что, если будете в Лондоне, можете зайти в музей полюбоваться на это чудо техники.

Разностная машина Бэббиджа, США

Если Вы думаете, что лондонская разностная машина является единственной во всем мире, то Вы ошибаетесь.

В 2005 г. мультимиллионер и бывший технический директор Натан Мирвольд заказал специалистам музея вторую копию знаменитого механического вычислителя. Она была доставлена в США.

В специальной экспозиции Музея компьютерной истории эта машина была ровно год. После этого Мирвольд установил ее у себя дома.

Первая идея разностной машины была выдвинута немецким инженером Иоганном Мюллером в книге, изданной в 1788 году.

В период с 1989 по 1991 год к двухсотлетию со дня рождения Чарльза Бэббиджа на основе его оригинальных работ в лондонском Музее науки была собрана работающая копия разностной машины № 2 . В 2000 году в том же музее заработал принтер, также придуманный Бэббиджем для своей машины. После устранения обнаруженных в старых чертежах небольших конструктивных неточностей обе конструкции заработали безупречно. Эти эксперименты подвели черту под долгими дебатами о принципиальной работоспособности конструкций Чарльза Бэббиджа (некоторые исследователи полагают, что Бэббидж умышленно вносил неточности в свои чертежи, пытаясь таким образом защитить свои творения от несанкционированного копирования).

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

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

Влияние на культуру

В 1972 году Гарри Гаррисоном в рассказе «A Transatlantic Tunnel, Hurrah!», написанном в жанре стимпанк , была упомянута «компьютерная машина Бэббиджа, занимавшая почти четверть объёма субмарины», использовавшаяся для анализа состояния тросов и регулирования их натяжения во время транспортировки строительных секций Трансатлантического туннеля, а также для калибровки курса «Наутилуса II».

В 1990 году Майклом Флинном был написан фантастический роман «В стране слепых» (англ. In the Country of the Blind ). Некая тайная организация с помощью усовершенствованных аналитических машин Чарльза Бэббиджа математически рассчитывает возможное развитие событий и таким образом получает возможность влиять на ход истории.

В 1990 году Брюсом Стерлингом и Уильямом Гибсоном написан фантастический роман «Машина различий» (англ. The Difference Engine ). Роман выдержан в стилистике стимпанка и также описывает разностную машину .

В 2005 Джон Краули опубликовал книгу «Роман лорда Байрона». Это вымышленная история о находке и расшифровке рукописи единственного прозаического произведения Байрона - романа «Вечерняя земля» . Чтобы спасти роман от уничтожения, дочь Байрона Ада Лавлейс зашифровала его так, чтобы прочитать текст могли только потомки с помощью счётных машин, восходящих к разностной машине Бэббиджа.

В онлайн-проекте «Рука Ориона» описываются созданные на основе идей Бэббиджа полностью разумные и автономные величиной с крупный астероид.

Перфокарта

Карты РМ делятся на три типа

  1. Программируемые карты.
  2. Числовые карты
  3. Операторы

См. также

Напишите отзыв о статье "Разностная машина Чарльза Бэббиджа"

Литература

  • Пер. с англ. К. Г. Батаев, ред. В. М. Курочкин. Знакомьтесь: компьютер = Understanding computers. - М .: Мир, 1989. - 240 с. - (Знакомство с компьютером). - ISBN 5-03-001147-1.
  • Doron Swade. The difference engine: Charles Babbage and the quest to build the first computer. - ISBN 0-670-91020-1.

Ссылки

  • Georgi Dalakov. (англ.) . Проверено 25 января 2012. .
  • (англ.)
  • (англ.)
  • (англ.)

Отрывок, характеризующий Разностная машина Чарльза Бэббиджа

– Я его тело морю отдала, у них так принято было... А сама домой пошла... Только не дошла никогда... Сил не хватило. Так хотелось солнце наше увидеть, но не смогла... А может Тристан «не отпустил»...
– А как же в книгах говорят, что вы вместе умерли, или что вы убили себя?
– Не знаю, Светлая, не я эти книги писала... А люди всегда любили сказы друг другу сказывать, особенно красивые. Вот и приукрашивали, чтобы больше душу бередили... А я сама умерла через много лет, не прерывая жизни. Запрещено это было.
– Вам, наверное, очень грустно было так далеко от дома находиться?
– Да, как тебе сказать... Сперва, даже интересно было, пока мама была жива. А когда умерла она – весь мир для меня померк... Слишком мала я была тогда. А отца своего никогда не любила. Он войной лишь жил, даже я для него цену имела только ту, что на меня выменять можно было, замуж выдав... Он был воином до мозга костей. И умер таким. А я всегда домой вернуться мечтала. Даже сны видела... Но не удалось.
– А хотите, мы вас к Тристану отведём? Сперва покажем, как, а потом вы уже сама ходить будете. Это просто... – надеясь в душе, что она согласится, предложила я.
Мне очень хотелось увидеть «полностью» всю эту легенду, раз уж появилась такая возможность, и хоть было чуточку совестно, но я решила на этот раз не слушать свой сильно возмущавшийся «внутренний голос», а попробовать как-то убедить Изольду «прогуляться» на нижний «этаж» и отыскать там для неё её Тристана.
Я и правда очень любила эту «холодную» северную легенду. Она покорила моё сердце с той же самой минуты, как только попалась мне в руки. Счастье в ней было такое мимолётное, а грусти так много!.. Вообще-то, как и сказала Изольда – добавили туда, видимо, немало, потому что душу это и вправду зацепляло очень сильно. А может, так оно и было?.. Кто же мог это по-настоящему знать?.. Ведь те, которые всё это видели, уже давным-давно не жили. Вот потому-то мне так сильно и захотелось воспользоваться этим, наверняка единственным случаем и узнать, как же всё было на самом деле...
Изольда сидела тихо, о чём-то задумавшись, как бы не решаясь воспользоваться этим единственным, так неожиданно представившимся ей случаем, и увидеться с тем, кого так надолго разъединила с ней судьба...
– Не знаю... Нужно ли теперь всё это... Может быть просто оставить так? – растерянно прошептала Изольда. – Ранит это сильно... Не ошибиться бы...
Меня невероятно удивила такая её боязнь! Это было первый раз с того дня, когда я впервые заговорила с умершими, чтобы кто-то отказывался поговорить или увидеться с тем, кого когда-то так сильно и трагически любил...
– Пожалуйста, пойдёмте! Я знаю, что потом вы будете жалеть! Мы просто покажем вам, как это делать, а если вы не захотите, то и не будете больше туда ходить. Но у вас должен оставаться выбор. Человек должен иметь право выбирать сам, правда, ведь?
Наконец-то она кивнула:
– Ну, что ж, пойдём, Светлая. Ты права, я не должна прятаться за «спиной невозможного», это трусость. А трусов у нас никогда не любили. Да и не была я никогда одной из них...
Я показала ей свою защиту и, к моему величайшему удивлению, она сделала это очень легко, даже не задумываясь. Я очень обрадовалась, так как это сильно облегчало наш «поход».
– Ну что, готовы?.. – видимо, чтобы её подбодрить, весело улыбнулась Стелла.
Мы окунулись в сверкающую мглу и, через несколько коротких секунд, уже «плыли» по серебристой дорожке Астрального уровня...
– Здесь очень красиво...– прошептала Изольда, – но я видела его в другом, не таком светлом месте...
– Это тоже здесь... Только чуточку ниже, – успокоила её я. – Вот увидите, сейчас мы его найдём.
Мы «проскользнули» чуть глубже, и я уже готова была увидеть обычную «жутко-гнетущую» нижнеастральную реальность, но, к моему удивлению, ничего похожего не произошло... Мы попали в довольно таки приятный, но, правда, очень хмурый и какой-то печальный, пейзаж. О каменистый берег тёмно-синего моря плескались тяжёлые, мутные волны... Лениво «гонясь» одна за другой, они «стукались» о берег и нехотя, медленно, возвращались обратно, таща за собой серый песок и мелкие, чёрные, блестящие камушки. Дальше виднелась величественная, огромная, тёмно-зелёная гора, вершина которой застенчиво пряталась за серыми, набухшими облаками. Небо было тяжёлым, но не пугающим, полностью укрытым серыми, облаками. По берегу местами росли скупые карликовые кустики каких-то незнакомых растений. Опять же – пейзаж был хмурым, но достаточно «нормальным», во всяком случае, напоминал один из тех, который можно было увидеть на земле в дождливый, очень пасмурный день... И того «кричащего ужаса», как остальные, виденные нами на этом «этаже» места, он нам не внушал...
На берегу этого «тяжёлого», тёмного моря, глубоко задумавшись, сидел одинокий человек. Он казался совсем ещё молодым и довольно-таки красивым, но был очень печальным, и никакого внимания на нас, подошедших, не обращал.
– Сокол мой ясный... Тристанушка... – прерывающимся голосом прошептала Изольда.
Она была бледна и застывшая, как смерть... Стелла, испугавшись, тронула её за руку, но девушка не видела и не слышала ничего вокруг, а только не отрываясь смотрела на своего ненаглядного Тристана... Казалось, она хотела впитать в себя каждую его чёрточку... каждый волосок... родной изгиб его губ... тепло его карих глаз... чтобы сохранить это в своём исстрадавшемся сердце навечно, а возможно даже и пронести в свою следующую «земную» жизнь...
– Льдинушка моя светлая... Солнце моё... Уходи, не мучай меня... – Тристан испуганно смотрел на неё, не желая поверить, что это явь, и закрываясь от болезненного «видения» руками, повторял: – Уходи, радость моя... Уходи теперь...
Не в состоянии более наблюдать эту душераздирающую сцену, мы со Стеллой решили вмешаться...
– Простите пожалуйста нас, Тристан, но это не видение, это ваша Изольда! Притом, самая настоящая...– ласково произнесла Стелла. – Поэтому лучше примите её, не раньте больше...
– Льдинушка, ты ли это?.. Сколько раз я видел тебя вот так, и сколько терял!... Ты всегда исчезала, как только я пытался заговорить с тобой, – он осторожно протянул к ней руки, будто боясь спугнуть, а она, забыв всё на свете, кинулась ему на шею и застыла, будто хотела так и остаться, слившись с ним в одно, теперь уже не расставаясь навечно...
Я наблюдала эту встречу с нарастающим беспокойством, и думала, как бы можно было помочь этим двум настрадавшимся, а теперь вот таким беспредельно счастливым людям, чтобы хоть эту, оставшуюся здесь (до их следующего воплощения) жизнь, они могли бы остаться вместе...
– Ой, ты не думай об этом сейчас! Они же только что встретились!.. – прочитала мои мысли Стелла. – А там мы обязательно придумаем что-нибудь...
Они стояли, прижавшись друг к другу, как бы боясь разъединиться... Боясь, что это чудное видение вдруг исчезнет и всё опять станет по-старому...
– Как же мне пусто без тебя, моя Льдинушка!.. Как же без тебя темно...
И только тут я заметила, что Изольда выглядела иначе!.. Видимо, то яркое «солнечное» платье предназначалось только ей одной, так же, как и усыпанное цветами поле... А сейчас она встречала своего Тристана... И надо сказать, в своём белом, вышитом красным узором платье, она выглядела потрясающе!.. И была похожа на юную невесту...
– Не вели нам с тобой хороводов, сокол мой, не говорили здравниц... Отдали меня чужому, по воде женили... Но я всегда была женой тебе. Всегда была суженой... Даже когда потеряла тебя. Теперь мы всегда будем вместе, радость моя, теперь никогда не расстанемся... – нежно шептала Изольда.
У меня предательски защипало глаза и, чтобы не показать, что плачу, я начала собирать на берегу какие-то камушки. Но Стеллу не так-то просто было провести, да и у неё самой сейчас глаза тоже были «на мокром месте»...
– Как грустно, правда? Она ведь не живёт здесь... Разве она не понимает?.. Или, думаешь, она останется с ним?.. – малышка прямо ёрзала на месте, так сильно ей хотелось тут же «всё-всё» знать.
У меня роились в голове десятки вопросов к этим двоим, безумно счастливым, не видящим ничего вокруг, людям. Но я знала наверняка, что не сумею ничего спросить, и не смогу потревожить их неожиданное и такое хрупкое счастье...
– Что же будем делать? – озабочено спросила Стелла. – Оставим её здесь?
– Это не нам решать, думаю... Это её решение и её жизнь, – и, уже обращаясь к Изольде, сказала. – Простите меня, Изольда, но мы хотели бы уже пойти. Мы можем вам ещё как-то помочь?
– Ой, девоньки мои дорогие, а я и забыла!.. Вы уж простите меня!..– хлопнула в ладошки стыдливо покрасневшая девушка. – Тристанушка, это их благодарить надо!.. Это они привели меня к тебе. Я и раньше приходила, как только нашла тебя, но ты не мог слышать меня... И тяжело это было. А с ними столько счастья пришло!
Тристан вдруг низко-низко поклонился:
– Благодарю вас, славницы... за то, что счастье моё, мою Льдинушку мне вернули. Радости вам и добра, небесные... Я ваш должник на веки вечные... Только скажите.

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

Такую машину он назвал аналитической. Более 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, выполнены за мой счет. Я провел целый ряд экспериментов и дошел до черты, за которой моих возможностей не хватает. В связи с этим я вынужден отказаться от дальнейшей работы».