Аналитическая машина Бэббиджа Чарльза: описание, особенности, история и свойства
Чарльз Бэббидж (1791–1871) – пионер создания вычислительной техники, который разработал 2 класса вычислительных машин – разностные и аналитические. Первый из них свое название получил благодаря математическому принципу, на котором основан — методу конечных разностей. Его красота заключается в исключительном использовании арифметического сложения без необходимости прибегать к умножению и делению, которые сложно реализовать механически.
Больше чем калькулятор
Разностная машина Бэббиджа представляет собой счетное устройство. Она оперирует числами единственным способом, на который способна, постоянно складывая их в соответствии с методом конечных разностей. Ее нельзя использовать для общих арифметических расчетов. Аналитическая же машина Бэббиджа гораздо больше, чем просто калькулятор. Она знаменует переход от механизированной арифметики к полномасштабным вычислениям общего назначения. На разных этапах эволюции идей Бэббиджа насчитывалось по меньшей мере 3 проекта. Поэтому на его аналитические машины лучше ссылаться во множественном числе.
Удобство и инженерная эффективность
Вычислительные машины Бэббиджа являются десятеричными устройствами в том смысле, что они используют 10 цифр от 0 до 9, и цифровыми потому, что оперируют только с целыми числами. Значения представлены шестернями, а каждому разряду отведено свое колесо. Если оно останавливается в промежуточном положении между целыми значениями, то результат считается неопределенным, а работа машины блокируется, чтобы показать нарушение целостности расчетов. Это является своеобразной формой обнаружения ошибок.
Бэббидж также рассматривал использование систем счисления, отличных от десятеричной, в т. ч. двоичной и с основанием 3, 4, 5, 12, 16 и 100. Он остановился на десятеричной по причине ее привычности и инженерной эффективности, поскольку благодаря ей значительно уменьшается количество движущихся частей.
Разностная машина №1
В 1821 г. Бэббидж начал разработки с механизма, предназначенного для расчета и табуляции полиномиальных функций. Автор описывает его как устройство для автоматического вычисления последовательности значений с автоматической печатью результатов в виде таблицы. Интегральной частью конструкции является принтер, механически связанный с расчетной секцией. Разностная машина №1 представляет собой первую полноценную конструкцию для автоматического выполнения расчетов.
Время от времени Бэббидж менял функциональные возможности устройства. Дизайн 1830 г. изображает машину, рассчитанную на 16 цифр и 6 порядков разности. Модель состояла из 25 тыс. частей, разделенных поровну между вычислительной секцией и принтером. Если бы устройство было построено, то весило бы, по оценкам, 4 т и имело бы высоту 2,4 м. Работа по созданию разностной машины Бэббиджа была остановлена в 1832 г., после спора с инженером Джозефом Клементом. Государственное финансирование окончательно прекратилось в 1842 г.
Аналитическая машина
Когда работа над разностным аппаратом застопорилась, в 1834 году Бэббидж задумал более амбициозное устройство, которое позже получило название аналитического универсального программируемого вычислительного механизма. Структурные свойства машины Бэббиджа во многом соответствуют основным блокам современного цифрового компьютера. Программирование производится с помощью перфокарт. Эта идея была заимствована у жаккардового ткацкого станка, где они служат для создания сложных текстильных узоров.
Логическая структура аналитической машины Бэббиджа в основном соответствует доминирующему дизайну компьютеров электронной эры, который подразумевает наличие памяти («магазина»), отделенной от центрального процессора («мельницы»), последовательное выполнение операций и средства для ввода и вывода данных и инструкций. Поэтому звание пионера вычислительной техники автор разработки получил вполне заслуженно.
Память и центральный процессор
У машины Бэббиджа есть «магазин», где хранятся числа и промежуточные результаты, а также отдельная «мельница», где выполнялась арифметическая обработка. Она имела набор из 4 арифметических функций и могла выполнять прямое умножение и деление. Кроме того, устройство было способно производить операции, которые теперь получили названия условного разветвления, цикла (итерации), микропрограммирования, параллельной обработки, фиксации, формирования импульсов и т. п. Сам автор такую терминологию не использовал.
ЦПУ аналитической машины Чарльза Бэббиджа, которое он называл «мельницей», обеспечивает:
- хранение чисел, операции над которыми производятся немедленно, в регистрах;
- имеет аппаратные средства для произведения с ними основных арифметических операций;
- передачу ориентированных на пользователя внешних инструкций в детальное внутреннее управление;
- систему синхронизации (такт) для выполнения инструкций в тщательно подобранной последовательности.
Механизм управления аналитической машины выполняет операции автоматически и состоит из двух частей: нижнего уровня, контролируемого массивными барабанами, называемыми бочками, и высокого уровня, использующего перфокарты, разработанными Жаккардом для ткацких станков, широко применявшихся в начале 1800-х годов.
Устройства вывода
Результат вычислений выводится различными способами, включая печать, перфокарты, построение графиков и автоматическое производство стереотипов – лотков из мягкого материала, на которых производится оттиск результата, способных служить формой для отливки пластин для печати.
Новая конструкция
Новаторскую работу над аналитической машиной Бэббидж в основном завершил к 1840 г. и начал разрабатывать новое устройство. В период с 1847 по 1849 год он закончил разработку разностной машины №2, представлявшей собой улучшенную версию оригинала. Эта модификация была рассчитана на операции с 31-разрядными числами и могла привести в табличную форму любой полином 7-го порядка. Дизайн был изящно простым и требовал лишь третью часть от количества деталей первоначальной модели, обеспечивая равную с ней вычислительную мощность.
В разностной и аналитической машинах Чарльза Бэббиджа использовалась одна и та же конструкция устройства вывода, которое не только делало распечатку на бумаге, но и автоматически создавало стереотипы и самостоятельно производило форматирование согласно заданному оператором макету страницы. При этом предусматривалась возможность настройки высоты строки, числа столбцов, ширины полей, обеспечивались автоматическое сворачивание строк или столбцов и расстановка пустых строк для удобства чтения.
Наследие
Помимо нескольких частично созданных механических сборок и тестовых моделей небольших рабочих секций, ни одна из конструкций не была реализована полностью в течение жизни Бэббиджа. Основная собранная в 1832 г. модель была 1/7 частью разностной машины №1, которая состояла примерно из 2 тыс. деталей. Она безупречно работает по сей день и является первым успешным автоматическим вычислительным устройством, которое реализует математические расчеты в механизме. Бэббидж умер, когда собиралась небольшая экспериментальная часть аналитической машины. Многие детали конструкции сохранились, как и полный архив чертежей и записок.
Проекты огромных механических вычислительных машин Бэббиджа считаются одним из потрясающих интеллектуальных достижений XIX века. Только в последние десятилетия его работа была детально изучена, и степень важности того, что он совершил, становится все более очевидной.
Разностная машина Чарльза Бэббиджа
Друзья, настал тот час, когда все мальчики меряются. Мощностью компьютера! Но вот сегодня мне бы хотелось вспомнить можно сказчать первый прототип сего чуда. Не многие знают, что именно Чарльз Бэббидж создал первую программируемую вычислительную машину, сделав попытку реализовать многие идеи, которые в XX веке найдут свое применение в вычислительной технике. Но знаете ли Вы ещё и то, что даже сегодняшний, современный компьютер по сути то так и остался усовершенствованной копией той самой Разностной машины Чарльза Бэббиджа? Давайте именно о этой машине и поговорим.
И так, для начала, дабы немного понять о чём речь- предлагаю не большую цитату Википедии:
Несмотря на то, что разностная машина не была построена её изобретателем, для будущего развития вычислительной техники главным явилось другое: в ходе работы у Бэббиджа возникла идея создания универсальнойвычислительной машины, которую он назвал аналитической и которая стала прообразом современного цифрового компьютера. В единую логическую схему Бэббидж увязал арифметическое устройство (названное им «мельницей»), регистры памяти, объединённые в единое целое («склад»), и устройство ввода-вывода, реализованное с помощью перфокарт трёх типов. Перфокарты операций переключали машину между режимами сложения, вычитания, деления и умножения. Перфокарты переменных управляли передачей данных из памяти в арифметическое устройство и обратно. Числовые перфокарты могли быть использованы как для ввода данных в машину, так и для сохранения результатов вычислений, если памяти было недостаточно.
И так, как всегда предлагаю разделить публикацию на несколько частей. Для начала узнаем кто же такой Чарлз Бэббидж, после чего уже познакомимся с его работами, а в четвёртой части мы поговорим непосредственно о его аналитической машине и о том, почему же эти принципы мы используем до сих пор?
Часть 1. Кто такой Чарлз Бэббидж?
Ну и конечно же, кто, как не Википедия Ивановна нам может рассказать лучше о данном человеке:
Ча́рлз Бэ́ббидж— английский математик, изобретатель первой аналитической вычислительной машины. Иностранный член-корреспондент Императорской академии наук в Санкт-Петербурге (1832). Труды по теории функций, механизации счёта в экономике. Сконструировал и построил (1820-22) машину для табулирования. С 1822 года работал над постройкой разностной машины. В 1833 году разработал проект универсальной цифровой вычислительной машины — прообраза современной ЭВМ.
Чарлз Бэббидж родился 26 декабря 1791 года в Лондоне в семье банкира Бенджамина Бэббиджа и Элизабет Тип. В детстве у Чарльза было очень слабое здоровье. В 8 лет его отправили в частную школу в Альфингтоне на воспитание священнику. На тот момент его отец уже был достаточно обеспечен, чтобы позволить обучение Чарльза в частной школе. Бенджамин Бэббидж попросил священника не давать Чарльзу сильных учебных нагрузок из-за слабого здоровья.
После чего обучался у нескольких репетиторов, в том числе и репетитора из Оксфорда. Он смог дать Бэббиджу основные классические знания, достаточные для поступления в колледж. Именно там он проявил серьезные математические способности.
После чего Бэббидж продолжил образование во Франции, где познакомился с великими математиками Пьером Лапласом и Жаном Батистом Фурье. Но чистая математика его не привлекла. Сильнейшее влияние на молодого математика оказал барон Гаспар де Прони, чьи работы натолкнули Бэббиджа на мысль о построении технологии вычислений.
В связи с этим он решил создать общество, целью которого являлось внесение современной европейской математики в Кембриджский университет. В 1812 году Чарлз Бэббидж, его друзья, Джон Гершель и Джордж Пикок и ещё несколько молодых математиков основали «Аналитическое общество». Они стали проводить собрания. Обсуждать различные вопросы, связанные с математикой. Начали публиковать свои труды. Например, в 1816 году они опубликовали переведённый ими на английский язык «Трактат по дифференциальному и интегральному исчислению» французского математика Лакруа, а в 1820 году опубликовали два тома примеров, дополняющих этот трактат. Аналитическое общество своей активностью инициировало реформу математического образования вначале в Кембридже, а затем и в других университетах Британии.
Так же в 1814 году Бэббидж получил степень бакалавра, а в 1816 году он стал членом Королевского Общества Лондона. К тому времени им было написано несколько больших научных статей в разных математических дисциплинах. В 1820 году он стал членом Королевского общества Эдинбурга и Королевского астрономического общества. В 1827 году он похоронил отца, жену и двоих детей. В 1827 году он стал профессором математических наук в Кембридже и занимал этот пост в течение 12 лет. После того, как он покинул этот пост, он большую часть своего времени посвятил делу его жизни — разработке вычислительных машин.
Чарлз Бэббидж умер в возрасте 79 лет 18 октября 1871 года. Похоронен на кладбище Кенсал Грин.
Часть 2. Предыстория создания аналитической машины.
Тут стоит вспомнить что на конец восемнадцатого — начало девятнадцатого века пришёлся пик промышленной революции. Переход от ручного труда к промышленным масштабам сопровождался, так сказать, бурным ростом других секторов экономики. Росло банковское и страховое дело, увеличивался объём морских перевозок, строительства — всё это требовало большого количества вычислений — расчёт сложных процентов, вычисление географических координат, инженерных расчётов и т.п. Уже в восемнадцатом веке мореходами активно использовались различные таблицы.
Интересный и одновременно с этим трагичный случай показывает, к чему могут привести подобные ошибки. После окончания Англо-Испанской войны в средиземном море встретились Английское и Испанское суда. Свежеиспечёные друзья решили оказать друг другу знаки почтения и обменятся подарками. На счастье Английского капитана, его Испанский коллега решил преподнести ему лишь серебряный поднос. А вот Испанскому капитану повезло меньше — Англичанин преподнёс ему, без всякого злого умысла, навигационные таблицы Томаса Юнга. Издание было высочайшего качества, однако таблицы были совершенно не верными, так как не учитывали високосных годов. Испанского капитана, принявшего такой дар, больше никто никогда не видел, а вот Английский капитан прекрасно добрался до места назначения, используя французские и итальянские таблицы.
Главная пробелма была в том, что в конце 18го века был предложен оригинальный способ организации вычислительного труда, повышающий надежность вычислений. Его автором был математик Гаспар Клэр Франсуа маркиз де Прони. Вычисления были организованны по «конвеерной системе» состоящей из трёх групп. Первая, наиболее малочисленная, наиболее квалифицированная состояла из 5-6 математиков. Она занималось выбором формул и составлением схем расчётов. Вторая из 7-8 математиков по выбранным формулам определяла значения функций с шагом 5-6 интервалов. Третья же, наиболее многочисленная, состояла из девяноста вычислителей низкой квалификации, которые занимались уплотнением таблицы, заполняя интервалы, вычисленные на предыдущем этапе. Две группы вычислителей работали параллельно, сверяя свои результаты.
Бэббидж заинтересовался данной схемой и у него родилась идея заменить последний этап ручных вычислений, механической машиной, которая позволяла бы автоматизировать, как он писал «самые примитивные действия человеческого интеллекта».
Машины, способные производить простые операции сложения, вычитания и даже умножения к тому времени создавались уже не первый век различными математиками и механиками, хотя большого распространения на тот момент не получили. Бэббидж же задумал не просто «механические счёты». У него родилась идея специализированного вычислительного устройства, заточенного под создание таблиц, позволявшего вычислять их быстро, эффективно, требовавших невысокой квалификации персонала, а также (что немаловажно) позволявших фиксировать результаты проведённых вычислений на бумаге. Для второго десятилетия девятнадцатого века это была весьма смелая задумка. Однако даже сам Бэббидж ещё не догадывался как далеко его заведёт, родившаяся в его голове в 1812-м году идея.
Часть 3. Вычислительные машины Чарльза Бэббиджа.
И так, а теперь перейдём непосредственно к самой машине. начнём с того, что в 1822 г. Бэббидж опубликовал научную статью с описанием машины, способной рассчитывать и печатать большие математические таблицы. В том же году он построил пробную модель своей Разностной машины, состоящую из шестеренок и валиков, вращаемых вручную при помощи специального рычага. Затем, заручившись поддержкой Королевского общества — самой престижной научной организации Великобритании, — он обратился к правительству с просьбой финансировать создание полномасштабной работающей машины. Эта машина, писал он президенту Королевского общества, возьмет на себя «невыносимо утомительную работу», неизбежную при многократно повторяющихся математических расчетах, которые «представляют собой самое низкое занятие, не достойное человеческого интеллекта». Королевское общество сочло его работу «в высшей степени достойной общественной поддержки», и уже через год британское правительство представило Бэббиджу для реализации его проекта субсидию в 1500 фунтов стерлингов
Берясь за разработку машины, Бэббидж и не представлял всех трудностей, связанных с её реализацией. Он не только не уложился в обещанные три года, но и спустя девять лет вынужден был приостановить свою работу. На это повлияла не только сложность конструкции, но и трагические события в жизни 1827 года. В этот год он похоронил отца, жену и двоих детей. После этих событий у него ухудшилось самочувствие, и он не мог заниматься конструированием машины. Чтобы восстановить здоровье, он поехал в путешествие по континенту. После путешествия он конечно продолжил разработку, но денег уже не было. Он обращался ко многим обществам и правительству с просьбой о помощи. Только в 1830 году он получил от правительства ещё 9000 фунтов стерлингов, после чего продолжил конструирование разностной машины.
Но не смотря на всё, в 1834 году работы по созданию машины были приостановлены. На тот момент уже было затрачено 17000 фунтов государственных денег и от 6000 до 17000 личных. Часть машины конечно же была построена и начала функционировать. Причём производила вычисления даже с большей точностью, чем ожидалось!
Хотя стоит заметить, что в ходе работы у Бэббиджа возникла идея создания универсальной вычислительной машины, которую он назвал аналитической. Где в единую логическую схему Бэббидж увязал арифметическое устройство, регистры памяти, объединённые в единое целое («склад»), и устройство ввода-вывода, реализованное с помощью перфокарт трёх типов.
На вход машины должны были поступать два потока перфокарт, которые Бэббидж назвал operation card (операционными картами) и variable card (картами переменных): первые управляли процессом обработки данных, которые были записаны на вторых. Информация заносилась на перфокарты путем пробивки отверстий. Из операционных карт можно было составить библиотеку функций. Помимо этого, Analytical Engine, по замыслу автора, должна была содержать устройство печати и устройство вывода результатов на перфокарты для последующего использования. Так что Бэббидж стал пионером идеи ввода-вывода.
Бэббидж разрабатывал конструкцию аналитической машины в одиночку. Он часто посещал промышленные выставки, где были представлены различные новинки науки и техники. Именно там состоялось его знакомство с Адой Августой Лавлейс (дочерью Джорджа Байрона), которая стала его очень близким другом, помощником и единственным единомышленником. В 1840 году Бэббидж ездил по приглашению итальянских математиков в Турин, где читал лекции о своей машине. Луиджи Менабреа, преподаватель туринской артиллерийской академии, создал и опубликовал конспект лекций на французском языке. Позже Ада Лавлейс перевела эти лекции на английский язык, дополнив их комментариями по объёму превосходящими исходный текст. В комментариях Ада сделала описание ЦВМ и инструкции по программированию к ней. Это были первые в мире программы. Именно поэтому Аду Лавлейс справедливо называют первым программистом. Однако, аналитическая машина так и не была закончена. Вот, что писал Бэббидж в 1851 году: «Все разработки, связанные с Аналитической машиной, выполнены за мой счёт. Я провёл целый ряд экспериментов и дошёл до черты, за которой моих возможностей не хватает. В связи с этим я вынужден отказаться от дальнейшей работы». Несмотря на то, что Бэббидж подробно описал конструкцию аналитической машины и принципы её работы, она так и не была построена при его жизни. Причин этому было много, но основными стали полное отсутствие финансирования проекта по созданию аналитической машины и низкий уровень технологий того времени. Бэббидж не стал в этот раз просить помощи у правительства, так как понимал, что после неудачи с разностной машиной ему всё равно откажут.
Часть 4. Аналитическая машина Чарльза Бэббиджа.
Но не смотря на то, что при жизни изобретателю так и не удалось построить рабочий образец своей самой лучшей разработки- история на этом не закончилась. Ведь как я уже упоминал в начале- именно этими разработками мы пользуемся и до сих пор! Как это часто бывает- ввесь гений был признан только после смерти. После смерти Чарлза Бэббиджа его сын, Генри Бэббидж, продолжил начатое отцом дело. В 1888 году Генри сумел построить по чертежам отца центральный узел аналитической машины. А в 1906 году Генри совместно с фирмой Монро построил действующую модель аналитической машины, включающую арифметическое устройство и устройство для печатания результатов. Машина Бэббиджа оказалась работоспособной!
Кстати говоря, именно центральный узел, построенный сыном Генри Бэббидж, вы можете видеть на картинке левее.
В принципе как саму историю создания, так и общие принципы мы уже разобрали выше. Теперь хотелось бы поговорить, в чём принципиальное отличие этой машины и в чём её гениальность в отличии от предыдущих? Главное отличие аналитической машины заключается именно в том, что принцип её работы оказался продуман до мелочей! Он оказался на только хорош, что по сути используется в вычислительной технике и на сегодняшний день. В ней присутствуют все три классических составляющих компьютера: control barrel — управляющий барабан (управляющее устройство — УУ), store — хранилище (теперь мы называем это памятью — ЗУ) и mill — мельница (арифметическое устройство — АУ). Регистровая память машины Бэббиджа была способна хранить как минимум сто десятичных чисел по 40 знаков, теоретически же могла быть расширена до тысячи 50-разрядных (для сравнения укажем, что ЗУ одной из первых ЭВМ «Эниак» в 1945 г. сохраняло всего 20 десятиразрядных чисел). АУ имело, как мы бы сейчас сказали, аппаратную поддержку всех четырех действий арифметики. Машина производила сложение за 3 секунды, умножение и деление — за 2 минуты. Эта «мельница» состояла из трех основных регистров: два для операндов, а третий для результатов действий, относящихся к умножению. Имелись также таблица для хранения промежуточных результатов и счетчик числа итераций. Основная программа заносилась на барабан (УУ), в дополнение к ней могли использоваться перфокарты, предложенные Жозефом Мари Жаккаром еще в 1801 г. для быстрого перехода с узора на узор в ткацких станках.
Ну вот кажется и всё, что я хотел рассказать вам на сегодняшний день! Конечно, в попытке рассказать всё и во всех подробностях- публикация снова оказалась немного растянутой, но хочется верить, что интерес к истории переломил лень к чтению и вы смогли это осилить! 😉