Аналитическая машина Чарльза Бэббиджа
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИСТОРИЧЕСКИЙ ФАКУЛЬТЕТ
КАФЕДРА ИСТОЧНИКОВЕДЕНИЯ
ЭССЕ НА ТЕМУ:
АНАЛИТИЧЕСКАЯ ВЫЧИСЛИТЕЛЬНАЯ МАШИНА ЧАРЛЬЗА БЭББИДЖА.
МИНСК
2007
ВВЕДЕНИЕ:
Аналитическая машина, спроектированная выдающимся английским математиком и изобретателем Чарльзом Бэббиджем, является значительной вехой в истории развития средств вычислительной техники. При ее проектировании в 1836-1848 годах Бэббидж фактически задал направление всему последующему развитию электронно-вычислительных машин (далее – ЭВМ). Ведь проект создания аналитической машины предусматривал целый ряд механизмов, присущих нынешним ЭВМ. Во-первых, предполагалось наличие тех же пяти устройств (арифметическое, устройства памяти, управления, ввода и вывода). Во-вторых, в число операций, помимо четырех арифметических, была включена операция условного перехода и операции с кодами команд. Кроме того, следует выделить, что все программы вычислений в аналитической машине Бэббиджа записывались на перфокартах пробивками.
В своем эссе я попытаюсь рассмотреть причины, сподвигшие Бэббиджа на попытку создания ЭВМ, выявить идеи, повлиявшие на творческий процесс британского изобретателя, объяснить причины, по которым Бэббиджу так и не удалось создать аналитическую машину, несмотря на огромные моральные и физические затраты ученого.
Хотя сам Бэббидж и не увидел плодов своей работы, его несомненное влияние на более чем вековой процесс создания известного нам компьютера доказывают следующие факты: в 1854 году шведским изобретателем Шойцем была-таки построена разностная машина в лишь немного видоизмененном виде, а в 1991 году, к двухсотлетию Бэббиджа, британские ученые по его чертежам воссоздали разностную машину №2, а также 3,5-тонный принтер. Оба устройства превосходно работают и сейчас – в чертежах Бэббиджа найдено всего две ошибки.
1. ЮНОСТЬ ЧАРЛЬЗА БЭББИДЖА
Чарльз Бэббидж появился на свет 26 декабря 1791 года на юго-западе Англии в городке Тотнес графства Девоншир в семье банкира. Отец его, Бенджамин Бэббидж, банкир фирмы «Прэд, Манкворт и Бэббидж», впоследствии оставил сыну довольно большое состояние. Чарльз был весьма слабым, болезненным ребенком, и поэтому родители не спешили отдавать его в школу. С самого детства он индивидуально занимался с учителем алгебры, и неудивительно, что вскоре она стала его любимой наукой. Ко времени поступления в 1811 году в Тринити-колледж Оксфордского университета, восемнадцатилетний Бэббидж превосходил в своих математических познаниях всех своих сверстников. Остались сведения, что вопросы юного Бэббиджа неоднократно ставили в тупик самих преподавателей колледжа.
Несмотря на болезненность, юный Бэббидж был очень разносторонним и общительным молодым человеком. Наиболее близкими его друзьями в колледже стали Джон Гершель, внук великого астронома У. Гершеля, и Джордж Пикок. Друзья однажды даже заключили прелюбопытное соглашение: «оставить этот мир мудрее, чем он был ими найден».
Спустя год после поступления в колледж Бэббидж и его друзья приняли участие в создании Аналитического общества, направленного на реформирование отдельных постулатов математики Ньютона, преподававшейся в университете, и изучение передовых достижений европейской науки. «Аналитическое общество» стало проводить регулярные заседания, на которых его члены выступали с научными докладами, развило бурную издательскую деятельность. Так, Бэббидж, Гершель и Пикок в 1816 году перевели с французского математический трактат профессора Лакруа и дополнили его двумя томами собственных примеров.
Бэббидж был одаренным студентом, но считал, что его друзья – Гершель и Пикок – достигли в математике куда больших успехов, чем он. Не желая по окончании колледжа быть третьим в списке лучших студентов, Чарльз перевелся в колледж святого Петра. Действительно, там он стал первым студентом и в 1814 году получил степень бакалавра. Спустя три года Бэббидж получил ученое звание магистра.
2. УЧЕНЫЕ ИНТЕРЕСЫ. НАЧАЛО РАБОТ НАД ВЫЧИСЛИТЕЛЬНОЙ МАШИНОЙ.
Новоиспеченный магистр был крайне деятельной натурой, обладавшей широчайшим диапазоном научных интересов. В молодые годы он начал писать словарь и грамматику мирового универсального языка, однако эта работа осталась незавершенной. Примерно в это же время Бэббидж заинтересовался возможностью создания вычислительной машины, исключавшей возможность неточных расчетов и математических ошибок при расчете логарифмических таблиц. Существует две красивые легенды касательно того, как Бэббидж окончательно сформулировал для себя задачу создания машины, способной самостоятельно создавать безошибочные таблицы. Согласно первой версии, изложенной Бэббиджем, однажды Гершель принес ему расчеты, выполненные вычислителями Астрономического общества. Однако у Бэббиджа и Гершеля возникли сомнения относительно качества работы вычислителей. Они принялись за утомительную проверку и обнаружили большое число ошибок. Бэббидж сказал: «Я хотел бы, чтобы эти расчеты выполнялись с помощью источника энергии», на что Гершель ответил: «Это вполне возможно». По словам Бэббиджа, этот разговор породил идею, воплощением которой он занимался всю жизнь.
По второй версии, изложенной Бэббиджем, дело обстояло несколько иначе. Однажды вечером Бэббидж сидел в комнате Аналитического общества и размышлял о сложности расчета логарифмических таблиц. В это время в комнату вошел один из его друзей и спросил: «Ну, Чарльз, о чем ты мечтаешь?» Указывая на таблицу логарифмов, Бэббидж ответил: «Я думаю, что все эти таблицы можно рассчитать на машине». Бэббидж пишет, что «это событие, должно быть, произошло в 1812 или 1813 году».
Делом жизни создание вычислительной машины стало для молодого математика после его переезда для продолжения учебы во Францию. Там Бэббидж встречался с великими Пьером Лапласом и Жаном-Батистом Фурье, но наибольшее впечатление на него произвел барон Гаспар де Прони. Именно в трудах де Прони Бэббидж почерпнул мысль о создании технологии вычислений.
Для того, чтобы понять отрешенность, с которой взялся за создание машины британский изобретатель, приведу следующий факт. В 1828 году Бэббидж был избран профессором математики Люкасовского колледжа Кембриджского университета (спустя много лет он скажет, что это была единственная честь, которой он был удостоен в своей стране). Так вот: за 11 лет профессорской деятельности ученый не прочел в университете ни одной лекции, все время посвящая расчетам машины.
Тем не менее, кафедра все-таки отнимала определенное время, и тогда в 1839 году Бэббидж оставляет профессорскую деятельность. Отныне и до конца его жизнь целиком и полностью будет посвящена созданию вычислительных машин.
3. РАЗНОСТНАЯ МАШИНА БЭББИДЖА.
Дабы лучше понять будущие идеи Бэббиджа, рассмотрим подробнее основные научные вехи в жизни де Прони. Правительство обновленной после пе периода империи Франции решило создать новые логарифмические и тригонометрические таблицы. Эту работу и поручили барону де Прони, руководившему в ту пору Бюро переписи.
Де Прони перенес идею разделения труда на вычислительный процесс. Он распределил исполнителей по трем уровням квалификации: высшую ступень занимали несколько выдающихся математиков, среди которых были Лежандр и Лазар Никола Карно, - они готовили математическое обеспечение. На втором уровне стояли образованные «технологи», которые организовывали рутинный процесс вычислительных работ. Последними в этой структуре были вычислители - computers (первое использование этого слова): их квалификационный максимум - умение складывать и вычитать (обычно вычислителей набирали из девушек легкого поведения, которые после революции решились сменить профессию).
Заслуга де Прони в том, что он нашел алгоритмический и технологический подходы для сведения сложных вычислений к рутинным операциям, не требующим от большинства исполнителей творческого подхода. В принципе, де Прони создал первую вычислительную машину, где в качестве процессора использовались вычислители. Этот подход 150 лет успешно применялся при проведении сложных и даже очень сложных расчетов - от разработки конструкций кораблей до создания первых атомных бомб.
Распределение вычислительного труда у де Прони наводит Бэббиджа на мысль о замене человека-вычислителя (который неизбежно ошибается) машиной - которой, как полагал Бэббидж, ошибки неведомы.
Британский ученый с головой бросается в новую для него ипостась математической науки. В 1819 году Бэббидж описал машину, способную рассчитывать и печатать большие математические таблицы, и сконструировал машину для табулирования, состоявшую из валиков и шестеренок, вращаемых с помощью рычага. Машина могла производить некоторые математические вычисления с точностью до восьмого знака после запятой. На ней Бэббидж, в частности, Рассчитал таблицу квадратов. После окончания этой машины Бэббидж был полон творческого энтузиазма, полагая, что основные трудности уже пройдены. Дальнейшие планы изобретателя были весьма оптимистичны.
В 1822 г. Бэббидж обратился к президенту Королевского общества Дэви с письмом, в котором предлагал построить разностную машину значительно больших размеров, чем предыдущая, для расчета, в первую очередь, астрономических и навигационных таблиц Работу над постройкой разностной машины Чарльз Бэббидж начал в 1823 году, сразу после того, как получил правительственную стипендию для продолжения работ над созданием вычислительных машин. Разностная машина должна была производить вычисления с точностью до двадцатого знака после запятой. Постройка механизма отняла у Бэббиджа десять лет, ее конструкция становилась все более сложной, громоздкой и дорогой. Именно из-за финансовой несостоятельности проекта работу над созданием разностной машины пришлось прекратить, так и не достигнув осязаемого результата. Правда, разностная машина все-таки будет построена, но лишь спустя без малого 200 лет (см. введение)…
Ценность разностной машины Чарльза Бэббиджа в том, что он впервые предложил машину, которая в отличие от всех предыдущих могла не только производить один раз заданное действие, но и осуществлять целую программу вычислений. Наряду с табулированием полиномов по методу конечных разностей на машине можно было рассчитывать значения функций, не имеющих постоянных разностей, с помощью искусно подобранных эмпирических формул.
Сам Бэббидж достаточно ясно представлял назначение своей машины. Он пропагандировал использование математических методов в различных областях науки и предсказывал при этом широкое применение вычислительных машин
4. АНАЛИТИЧЕСКАЯ МАШИНА БЭББИДЖА
На момент прекращения работ над созданием разностной машины деятельный мозг Бэббиджа был занят решением уже другой, более тяжелой задачи. Бэббидж пожелал создать новый прибор – Аналитическую машину (Analytical Engine). Ее главным отличием от разностной машины должно было стать то обстоятельство, что она была программируемой и могла выполнять любые заданные ей вычисления.
От арифмометра новая машина отличалась наличием регистров. В них сохранялся промежуточный результат вычисления, и с их же помощью выполнялись действия, предписанные программой. Вычислительные возможности, открывшиеся после изобретения регистров, поразили самого Бэббиджа. На этот счет сохранилась следующая реплика изобретателя: «Шесть месяцев я составлял проект машины, более совершенной, чем первая. Я сам совершенно поражен той вычислительной мощностью, которой она будет обладать. Еще год назад я не смог бы в такое поверить!»
Архитектура Аналитической машины Чарльза Бэббиджа уже практически соответствует современным ЭВМ. В ней присутствуют все три классических составляющих компьютера:
-control barrel - управляющий барабан (управляющее устройство - УУ), -store - хранилище (теперь мы называем это памятью - ЗУ) -mill - мельница (арифметическое устройство - АУ).
Регистровая память машины Бэббиджа была способна хранить как минимум сто десятичных чисел по 40 знаков, теоретически же могла быть расширена до тысячи 50-разрядных (для сравнения укажем, что запоминающее устройство одной из первых ЭВМ «Эниак» в 1945 г. сохраняло всего 20 десятиразрядных чисел). Арифметическое устройство имело, как мы бы сейчас сказали, аппаратную поддержку всех четырех действий арифметики. Машина производила сложение за 3 секунды, умножение и деление - за 2 минуты. Эта «мельница» состояла из трех основных регистров: два для операндов, а третий для результатов действий, относящихся к умножению. Имелись также таблица для хранения промежуточных результатов и счетчик числа итераций. Основная программа заносилась на барабан (Управляющее устройство), в дополнение к ней могли использоваться перфокарты, предложенные Жозефом Мари Жаккаром еще в 1801 г. для быстрого перехода с узора на узор в ткацких станках.
Большую помощь в разработке машины Бэббиджу оказала Ада Лавлейс (урожденная Байрон). Лавлейс была дочкой знаменитого английского поэта лорда Байрона, но так его никогда и не увидела, так как незадолго до ее рождения он уехал в Грецию, где и погиб в составе отряда повстанцев. Лавлейс бывала в гостях у Бэббиджа со своей подругой Мэри Соммервилл. Бэббидж всегда относился к ним приветливо и подолгу объяснял назначение всех устройств машины. А вскоре он обнаружил незаурядные математические способности Ады Лавлейс. Именно она впоследствии создаст первые в мире теоретические основы программирования, напишет первый учебник по программированию, и войдет в историю как «первая программистка».
Именно Лавлейс принадлежит идея использования для подачи на вход машины двух потоков перфокарт, которые были названы операционными картами и картами переменных: первые управляли процессом обработки данных, которые были записаны на вторых.
Информация заносилась на перфокарты путем пробивки отверстий. Из операционных карт можно было составить библиотеку функций. Помимо этого, Analytical Engine, по замыслу автора, должна была содержать устройство печати и устройство вывода результатов на перфокарты для последующего использования. Так что Бэббидж стал пионером идеи ввода-вывода.
Бэббидж предлагал также создать механизм для перфорирования цифровых результатов на бланке или металлических пластинках. Для хранения информации в памяти ученый собирался использовать не только перфокарты, но и металлические диски, которые будут поворачиваться на оси. Металлические пластинки и металлические диски могут теперь рассматриваться нами как далекие прототипы магнитных карт и магнитных дисков.
Только в одном отношении аналитическая машина не была автоматической. Функции, записанные таблично, должны были быть заранее отперфорированы. Предвосхищая будущее вычислительных машин, Бэббидж писал: «Кажется наиболее вероятным, что она рассчитывает гораздо быстрее по соответствующим формулам, чем пользуясь своими же собственными таблицами». И действительно, в современных вычислительных машинах существует обширная библиотека стандартных подпрограмм, с помощью которой рассчитываются функции различной степени сложности. Интересно, что термин «библиотека» для данного применения также был впервые употреблен Чарльзом Бэббиджем!
5. ПРИЧИНЫ НЕУДАЧИ БЭББИДЖА
И все же, несмотря на целый ряд блестящих догадок и новаторских изобретений, опередивших свое время на целый век, Чарльзу Бэббиджу так и не удалось закончить Аналитическую машину. Основной причиной неудачи является главное достоинство машины: Бэббидж действительно слишком превзошел свое время (не случайно в конце жизни он скажет: «я готов отдать последние годы своей жизни за то, чтобы прожить три дня через 150 лет, и чтобы мне подробно объяснили принцип работы будущих машин»). Как видим, Бэббидж уже не сомневался в будущем развитии вычислительной техники. Дело в том, что одна из двух главных причин незаконченности работы – невозможность в то время обрабатывать металл с высокой степенью точности (в то время как для реализации проекта Аналитической машины только зубчатых колес потребовалось бы несколько тысяч!) И в наши дни технологи бы сильно призадумались над возможностью постройки подобной машины, а в те времена самому Бэббиджу нередко приходилось изобретать технологии производства деталей, отвлекаясь от общего направления проекта.
Второй проблемой являлась финансовая. Если поначалу различные научные общества с энтузиазмом поддерживали Бэббиджа, то совсем скоро они охладели к затратному проекту с размытыми целями. В 1851 году Бэббидж с горечью заявлял, что все, связанное с машиной, он сделал за собственные деньги. Известно, что ученый в целях добычи материальных средств написал роман, пытался избраться в Парламент Британской империи, даже одно время играл в лотерею!
Судьба Бэббиджа – это трагическая судьба ученого, так и не увидевшего плодов своего труда. До самого своего конца он заявлял, что ненавидит жизнь, людей и Английское правительство. Когда он 14 декабря 1871 года почувствовал себя плохо, он сказал лишь одно: «Долгожданное время приходит!». Он умер в этот же день, вечером, на руках у собственного сына, не дожив до восьмидесятилетия всего нескольких дней. На похоронах человека, предвосхитившего развитие вычислительной техники на сотни лет вперед, присутствовало всего лишь несколько близких друзей.
ЗАКЛЮЧЕНИЕ
Великий английский ученый Чарльз Бэббидж попытался на механической основе создать машину, принадлежащую электронному периоду. Соответственно, это его начинание просто не могло завершиться успехом. Тем не менее, это же несоответствие подчеркивает гениальность Бэббиджа: задолго до возникновения электронных вычислительных машин он разработал принципы построения машин, основные их узлы, установил возможности вычислительных машин и предсказал пути их дальнейшего развития.
При изучении творчества Бэббиджа поражает даже простое перечисление проблем, которые он поставил и пытался разрешить, одни более успешно, другие менее, в аналитической машине: 1) разработка основного состава блоков; 2) планирование большого объема памяти; 3) разделение арифметического и запоминающего устройства; 4) применение изменяемой программы вычислений; 5) передача управления с помощью условного перехода; 6) работа с адресами и кодами команд; 7) контроль считыванием; 8) наличие библиотеки подпрограмм; 9) применение перфокарт, печатание данных ввода и вывода и некоторые другие. Подавляющее большинство из идей Бэббиджа были реализованы спустя сто с лишним лет.
Каждое новое открытие в современной науке заставляет по-новому смотреть на достижения прошлых веков. Если в конце прошлого и начале нашего века имя Бэббиджа было почти забыто, а его работы не были оценены и поняты, то с развитием ЭВМ интерес к его работам и личности возрос.
Бэббидж предстает перед нами как гениальный ученый, во многом предвосхитивший развитие вычислительной техники, ставшей важнейшим проявлением современной научно-технической революции.
БИБЛИОГРАФИЯ
1. Дорофеева А. В. Чарльз Бэббидж и его аналитическая машина: Разраб. проекта вычисл. машины с про-гр. упр. англ. математиком в середине 40-х годов XIX в. //Новые методы и средства обучения - В огл. авт.: Дорофеева В. В. - М. - 1993. - С. 65-69.
2. Дорофеева А. В. Чарльз Бэббидж и его аналитическая машина: (О жизни и деятельности англ. математика, 1791-1871) // Математика в шк. - 1995. – №2. - С. 78-80.
3. И.А. Апокин, Л.Е.Майстров, И.С. Эдлин «Чарльз Бэббидж».
4. Большая энциклопедия Кирилла и Мефодия – 2004. Статьи «Чарльз Бэббидж» и «Ада Лавлейс».
5. Интернет-сайт: http:/joinbiz.ru. Статья: «Чарльз Бэббидж. Человек, опередивший свою эпоху».
6. Интернет-сайт: http:/eakolesnikov.ru. Статья «Краткая история перфокарт».