Чарльз Беббидж считается основателем современной вычислительной техники. В работе Чарльза Бэббиджа прослеживается два направления: разностная и аналитическая вычислительная машины. Аналитическая машина Чарльза Бэббиджа использует принцип программного управления и является предшественницей современных ЭВМ.
Первая небольшая модель аппарата Чарльза Бэббиджа
В 1822 году Чарльз Бэббидж создал первую небольшую модель своего аппарата, получившего название «разностная машина». Механизм разностной машины состоял из валиков и шестерней, вращаемых вручную при помощи специального рычага. Разностная машина могла управлять шестизначными числами и выражать в числах любую функцию, которая имела постоянную вторую разность. Ценность разностной машины Чарльза Бэббиджа в том, что она могла не только производить один раз заданное действие, но и осуществлять целую программу вычислений. Сам Бэббидж достаточно ясно представлял назначение своей машины. Он пропагандировал использование математических методов в различных областях науки и предсказывал при этом широкое применение вычислительных машин.
Первая в мире разностная аналитическая вычислительная машина Чарльза Бэббиджа
Первая в мире разностная аналитическая вычислительная машина Чарльза Бэббиджа
Принцип аналитической машины Чарльза Бэббиджа
Аналитическая машина Чарльза Бэббиджа использует принцип программного управления и является предшественницей современных ЭВМ.
Основные части аналитической машины
Аналитическая машина состояла из следующих четырех основных частей:
Аналитическая машина так и не была изготовлена Чарльзом Бэббджем. Кроме хронической нехватки финансовых средств, важнейшая из причин — технологическая. Тогда не умели обрабатывать металл с высокой степенью точности и с высокой производительностью — а для реализации проекта требовались тысячи одних только зубчатых колес.
Большое влияние на посмертную судьбу машины оказал генерал Бэббидж, сын изобретателя. Выйдя в отставку в 1874 году, он несколько лет посвятил изучению отцовского наследия, а в 1880 году начал работу по восстановлению Difference Engine в «железе». Работа продолжалась с переменным успехом до 1896 г. В конце концов к 1904 году был создан небольшой фрагмент машины, который печатал результаты вычислений. Кроме того, Бэббидж-младший сделал несколько мини-копий Difference Engine и разослал их по всему миру.
В 1991 году, к двухсотлетию со дня рождения ученого, сотрудники лондонского Музея науки воссоздали по его чертежам 2,6-тонную «разностную машину № 2», а в 2000 году — еще и 3,5-тонный принтер Бэббиджа. Оба устройства, изготовленные по технологиям середины XIX века, превосходно работают — в расчётах Бэббиджа было найдено всего две ошибки.
Аналитическая машина Бэббиджа. Часть первая — кто такой Бэббидж и зачем нужны счётные машины
Аналитическую машину Чарльза Бэббиджа считают первым прообразом современного компьютера. Эта машина фактически на века опередила прогресс. Но как и многие колоссы, опережавшие своё время, так и не была воплощенна в металле. Как всякое великое изобретение она не могла родиться на пустом месте, а её создатель не мог быть заурядным человеком. В последующих постах я хочу немного рассказать о биографии этого человека, что его подтолкнуло с созданию этой машины и чем закончилось главное дело его жизни.
Откуда берутся гении
Родился Чарльз Бэббидж в семье банкира Бенджамина Бэббиджа, 26 декабря 1791 года. В связи со слабым здоровьем, Чарльз не посещал школы, однако рос весьма любознательным ребёнком. Получая новую игрушку, он неизменно задавал вопрос «Мама, а что находится внутри?» и пока не получал ответ, не давал покоя ни игрушке ни окружающим. Если ответ его не устраивал, игрушка подвергалась вскрытию. Я думаю многие читатели хабра узнают в себе подобную черту — блог «старое железо» не страдает от отсутствия контента.
К одиннадцати годам родители всё таки решаются отправить Чарльза в частную школу и помещают под опеку священника, содержащего школу в городке Алфингтон в Девоншире. Бенджамин Бэббидж попросил священника не давать сыну сильных учебных нагрузок, дабы не подорвать его слабое здоровье.
По окончанию этой школы у Чарльза начинается настоящее обучение — его отправляют в академию в Энфилде, где он знакомится с учебником, определившим увлечение всей его дальнейшей жизни. Это было «Руководство Уорда для юных математиков». Он настолько увлёкся алгеброй, что поступив в Кэмбридж с удивлением обнаружил что знает о ней куда больше, чем его репетитор.
В 1811 году Чарльз становится студентом Тринити Коледжа — самого знаменитого коледжа Кембриджа. На тот момент из дверей этого учебного заведения уже вышли такие знаменитые личности как Исаак Барроу и его ученик Исаак Ньютон. Ближе к нашим дням данный колледж оканчивали такие личности как Бертран Рассел, ряд британских монархов и принцев (включая принца Чарльза).
(Тринити коледж, 1838 год)
Но вернёмся к нашему студенту. Обучаясь в Кэмбридже, Чарльз пришёл в выводу что Британия сильно отстала от континентальной Европы по уровню математической подготовки. Как результат родилось «Аналитическое общество», куда входили его друзья — Джон Гершель и Джордж Пикок. На встречах общества друзья обсуждают труды континентальных коллег, издают «Записики Аналитического общества».
Чарльз считал способности своих друзей куда выше собственных и дабы не быть третьим в Тринити коледже он переходит в колледж святого Петра, который он заканчивает на первом месте.
Перед нами вырисовывается портрет пытливого, способного, талантливого и честолюбивого молодого человека. Данное сочетания черт мало кому может позволить прожить жизнь тихо и спокойно. Наш герой не стал исключением. Естественно он интересовался актуальными и передовыми проблемами математики. Одной из таких проблем была проблема эффективного быстрого и точного составление различных таблиц — логарифмических, арифметических, таблиц процентов и т.п.
Почему именно таблицы?
Предпосылки появления вычислительных машин
Стоит вспомнить что на конец восемнадцатого — начало девятнадцатого века пришёлся пик промышленной революции, лидером которой была Британия. Переход от ручного труда к промышленным масштабам сопровождался, так сказать, бурным ростом других секторов экономики. Росло банковское и страховое дело, увеличивался объём морских перевозок, строительства — всё это требовало большого количества вычислений — расчёт сложных процентов, вычисление географических координат, инженерных расчётов и т.п. Уже в восемнадцатом веке мореходами активно использовались различные таблицы.
В 1776 году появился на свет «Морской календарь» (его автор — ученый доктор Маскелин, впоследствии королевский астроном). Календарь представлял из себя свод астрономических, навигационных и логарифмических таблиц, основанных на наблюдениях астронома Брэдли. Не смотря на невиданную доселе тщательность, данный труд имел немало ошибок и неточностей, порождённых малой точностью исходных данных, неточностью вычислений и ошибками при переписывании.
Интересный случай показывает к чему могут привести подобные ошибки. После окончания Англо-Испанской войны в средиземном море встретились Английское и Испанское суда. Свежеиспечёные друзья решили оказать друг другу знаки почтения и обменятся подарками. На счастье Английского капитана, его Испанский коллега решил преподнести ему лишь серебряный поднос. А вот Испанскому капитану повезло меньше — Англичанин преподнёс ему, без всякого злого умысла, навигационные таблицы Томаса Юнга. Издание было высочайшего качества, однако таблицы были совершенно не верными, так как не учитывали високосных годов. Испанского капитана, принявшего такой дар, больше никто никогда не видел, а вот Английский капитан прекрасно добрался до места назначения, используя французские и итальянские таблицы.
(Навигационный прибор 18го века. Источник)
«Морской календарь» выходил ежегодно, издателям приходилось держать большой штат корректоров, но даже это не спасало от ошибок.
В конце 18го века был предложен оригинальный способ организации вычислительного труда, повышающий надежность вычислений. Его автором был математик Гаспар Клэр Франсуа маркиз де Прони.
Вычисления были организованны по «конвеерной системе» состоящей из трёх групп. Первая, наиболее малочисленная, наиболее квалифицированная состояла из 5-6 математиков. Она занималось выбором формул и составлением схем расчётов. Вторая из 7-8 математиков по выбранным формулам определяла значения функций с шагом 5-6 интервалов. Третья же, наиболее многочисленная, состояла из девяноста вычислителей низкой квалификации, которые занимались уплотнением таблицы, заполняя интервалы, вычисленные на предыдущем этапе. Две группы вычислителей работали параллельно, сверяя свои результаты.
Бэббидж заинтересовался данной схемой и у него родилась идея заменить последний этап ручных вычислений, механической машиной, которая позволяла бы автоматизировать, как он писал «самые примитивные действия человеческого интеллекта».
(Калькулятор Блеза Паскаля. 17ый век. Источник)
Машины, способные производить простые операции сложения, вычитания и даже умножения к тому времени создавались уже не первый век различными математиками и механиками, хотя большого распространения на тот момент не получили. Бэббидж же задумал не просто «механические счёты». У него родилась идея специализированного вычислительного устройства, заточенного под создание таблиц, позволявшего вычислять их быстро, эффективно, требовавших невысокой квалификации персонала, а также (что немаловажно) позволявших фиксировать результаты проведённых вычислений на бумаге.
Для второго десятилетия девятнадцатого века это была весьма смелая задумка. Однако даже сам Бэббидж ещё не догадывался как далеко его заведёт, родившаяся в его голове в 1812-м году идея.
В следующей части я расскажу о создании разностной машины Чарльза Бэббиджа и рождении идеи создания Аналитической машины.
Основной источник, использованный при подготовке текста — «От абака до компьютера», Р. С. Гутер, Ю. Л. Поплунов, Москва 1981г.
Аналитическая машина Бэббиджа. Часть третья — заключительная
(Для начала советую прочесть первую и вторую части статьи.)
Разностная машина Чарльза Бэббиджа впервые позволила автоматизировать процесс вычислений и производить его в некоторой степени без вмешательства человека. Как было сказано в предыдущей части, для вычисления функций типа логарифма, тригонометрических функций и прочих, их необходимо было разбить на участки, каждый из которых представлялся своим многочленом, и только потом можно было произвести расчёт значений функции для данного участка. Переходя от одного многочлена к другому, оператор машины должен был вручную ввести все исходные значения регистров. К тому же машина позволяла производить только операцию сложения, что было не много даже по меркам 19го века.
Раздумывая над этой проблемой, Бэббидж пришёл к выводу, что можно построить такую машину, которая бы сама меняла значения исходных регистров в зависимости от значения результата. То есть сама бы могла управлять процессом вычислений. В дальнейшем, развивая эту идею, Бэббидж пришёл к мысли не просто сделать машину, которая бы табулировала функцию полностью автоматически, а создать машину которая бы позволяла решать весь класс вычислительных задач. Для этого алгоритм такой машины должен быть не жёстко зашит в её конструкцию, а задаваться извне, а сама машины должна уметь выполнять все арифметические операции, а также управлять ходом выполнения вычислений. Новую вычислительную машину Бэббидж назвал Аналитической.
Основными частями Аналитической машины являлись:
1.«склад» — устройство для хранения чисел, то есть память в современной терминологии;
2.«мельница» — устройства для выполнения арифметических действий (Арифметическое устройство);
3.устройство, управляющее операциями машины;
4.устройства ввода и вывода;
(Элемент «мельницы». Рисунок Генри Бэббиджа. Источник)
В такой архитектуре не сложно узреть прообраз современного компьютера с его памятью, процессором (мельница + устройство управления) и устройствами ввода вывода.
«Шину обмена» данными между АЛУ и памятью представлял собой набор зубчатых реек. Объём памяти должен был составлять тысячу чисел по 50 десятичных знаков. Для числа из 50-ти десятичных разрядов со знаком необходимо 168 бит, то есть объём ОЗУ был чуть больше двадцати килобайт. Для сравнения советую здесь посмотреть объём ОЗУ первых компьютеров.
Как было сказано в предыдущей части, работая над аналитической машиной, Бэббидж придумал оригинальную схему предварительного переноса. Стоит сказать, что перед этим он продумал более двадцати вариантов исполнения схемы последовательного переноса, прежде чем понял, что для кардинального ускорения процесса необходим совершенной иной принцип.
Как и в разностной машине, регистры, хранящие числа, представляли собой зубчатые колёса. Знак числа задавался отдельным зубчатым колесом. Если данное колесо отображало чётное число, то это интерпретировалось как положительный знак, иначе как отрицательный.
Операции умножения и деления предполагалось реализовать как последовательные сложения или вычитания.
Расчётное время выполнения операций должно было составлять одну секунду для сложения и вычитания и одну минуту для умножения и деления, что не так уж и плохо для 19го века.
Для ввода данных в память и управлением работой машины, Бэббидж задумал использовать перфокарты. На тот момент они уже существовали не один десяток лет, и были изобретены Жаккаром Жозефом-Мари для управления узором автоматизированного ткацкого станка.
Аналитическая машина использовала два механизма с перфокартами — один механизм задавал операции, которые должна была выполнять мельница, второй же управлял переносом данных между «мельницей» и «складом».
(Ткацкий станок с картами Жаккара. Источник)
Во время прибывания Бэббиджа в Италии к нему обратился метематик, профессор Мосотти. «Он заметил, что теперь вполне готов поверить в способность механизма овладеть арифметическими и даже алгебраическими соотношениями в любой нужной степени. Но он добавил что не может понять, как машина может сделать выбор, который часто необходим при аналитическом исследовании (то есть в процессе вычислений), когда представляются два или более путей, особенно в том случае, когда правильный путь, как это часто бывает, неизвестен до тех пор, пока не проделаны предшествующие вычисления». На этот случай в Аналитической машине была предусмотрена возможность организации условного выполнения и циклов. Для этого механизм переноса последнего разряда управлял движением перфокарт и мог заставить этот механизм повторить действие либо пропустить его.
Устройства вывода позволяли выводить на печать в результат вычислений машины в одной или двух копиях, воспроизводить в виде стереотипного отпечатка или пробивать результат на перфокартах.
Работая над аналитической машиной, Бэббидж сделал более 200 чертежей её различных узлов и около 30 вариантов компоновки машины. Однако размер замысла, и сложный характер изобретателя отсрочили рождение его изобретений на добрую сотню лет. Если взглянуть на разностную машину, которая по замыслу Бэббиджа должна был табулировать до 20-го знака функции с постоянными седьмыми разностями, то близкая по возможностям машина появилась в 1934-м году — она табулировала функции с постоянными разностями седьмого порядка и с точностью до 13 знаков. Что же говорить об исполинских возможностях задуманной аналитической машины…
(Часть печатающего механизма машины. Источник)
После смерти Чарльза Бэббиджа, его сын, Генри, занялся аналитической машиной, решив сосредоточиться на двух узлах — «мельнице» и печатающем устройстве. В 1888-м году были готовы данные узла машины, которые смогли вычислить и напечатать произведение на числа натурального ряда с 29 знаками. При вычислении 32-го члена машина выдала неверный результат из-за сбоя в механизме переноса. Всю оставшуюся жизнь Генри продолжал работу над аналитической машиной отца, а также занимался популяризацией идей вычислительных машин.
Не смотря на то, что Бэббидж за свою жизнь написал немало книг и статей, он так и не создал подробного изложения принципов работы разностной и аналитической машины, так как считал создание машин более важным занятием, нежели их описание. Подробное описание разностной машины было дано Дионисием Ларднером, а аналитическая машина была описана в статье Луиджи Фредериго Менабреа. Именно эта статья и привела к тому, что на свет появилась первая в мире программа и первый программист. Честь носить такое звание имеет Ада Августа Лавлейс, дочь поэта Байрона. Чарльз Бэббидж был знаком с семьёй юной талантливой девушки и всячески поощрял её тягу к науке. Однажды Ада заинтересовалась вычислительными машинами Бэббиджа и взялась за перевод статьи Менабреа. Работая над переводом, Ада, дополнила её своими комментариями, примерами практического использования машин, а также составила «программу» вычисления чисел Бернулли. Имя Ады было увековечено в названии одного из языков программирования — Ада (Ada). Подробнее углубляться в биографию Ады я не буду, т.к. данная тема уже была раскрыта на хабре.
Судьба Чарльза Бэббиджа была не менее сложная, чем судьба его вычислительных машин. Отношение современников к этому учёному со временем менялось от гения до чудака и даже до изобретателя, повредившегося рассудком на почве вычислительных машин. За свою жизнь он создал большое количество разнообразных изобретений, таких как спидометр, динамометр, придумал единый почтовый тариф и прочее. Президент Королевского общества лорд Росс писал что «Бэббидж только своими изобретениями в области машиностроения вполне возместил те средства, которые правительство вложило в строительство его разностной машины».
Идея, родившаяся в девятнадцатом веке и ставшая реальностью в веке двадцатом, сделала переворот не только в науке, но и в нашей повседневной жизни. Жизнь Бэббиджа, история создания его вычислительных машин является ярчайшим примером того на сколько дальновидным и упорным может быть гений, и на сколько тернистым и долгим бывает путь созидания.
PS: Всем кому интересны механические вычислительные машины, их история создания, описание конструкции и принципов работы и зарождение их электронных собратьев рекомендую найти и прочитать книгу «От абака до компьютера» за авторством Р. С. Гутера и Ю. Л. Полунова 1981 года издания.
Аналитическая машина Бэббиджа. Часть вторая — трагическая судьба вычислительной техники XIX века
Первую часть статьи вы можете найти по этой ссылке.
Идея разностной машины посетила Чарльза Бэббиджа то ли 1812, то ли 1813 году. Более точную дату история от нас скрывает. Что же должна была делать задуманная машина?
Для того что бы понять это — придётся вспомнить немного математики.
Как мы помним из предыдущей статьи, машина была задумана для табулирования, то есть вычисления математических таблиц.
Немного теории
Предположим, необходимо табулировать функцию N=n^4 (n=1,2. ).
Рассмотрим нижеприведённую таблицу:
Аргумент (n) | Значение (R1) | Разность №1 (R2) | Разность №2 (R3) | Разность №3 (R4) | Разность №4 (R5) |
1 | 1 | 15 | 50 | 60 | 24 |
2 | 16 | 65 | 110 | 84 | 24 |
3 | 81 | 175 | 194 | 108 | 24 |
4 | 256 | 369 | 302 | 132 | 24 |
5 | 625 | 571 | 434 | 156 | 24 |
6 | 1296 | 1105 | 590 | 180 | |
7 | 2401 | 1695 | 770 | ||
8 | 4096 | 2465 | |||
9 | 6561 |
Первый столбец — это аргумент функции, второй — это значение функции для данного аргумента. Третий столбец — это разность последующих значений функции и предыдущих. То есть строка №1 = 16 – 1, строка №2 = 81-16 и так далее. Проделаем то же самое несколько раз (столбцы «Разность №2», «Разность №3»). Нетрудно заметить, что четвёртые разницы у нас полностью совпали. И это неспроста — если функция является многочленом n-ой степени, то в таблице с постоянным шагом (в нашем примере шаг равен единице) её n-е разности постоянны. Эта маленькая хитрость даёт нам одно преимущество — чтобы найти последующие значение функции, необходимо сложить все разности до четвёртой с текущим значением функции.
Например, 9^4 = 4096+1695+590+156+24 = 6561 (кто не верит, может воспользоваться калькулятором).
Бэббидж предполагал вычислять функции с постоянными шестыми разностями. Для этого машина должна была иметь семь регистров — по регистру для каждой разности и один для результата, и результат должен был получаться в результате семи сложений. Весьма затратный по времени вариант, и Бэббидж придумал способ как его оптимизировать. Он предложил записывать разности нечетного порядка из предыдущей строки, тогда вычислить следующее значение функции можно в два приёма, вычисляя сначала параллельно нечётные разницы, а затем уже чётные и значение функции.
Например, рассчитываем для N=8 на первом этапе R2 = 1105 + 590 = 1695, R4 = 132 + 24 = 156, на втором этапе R1 = 2401 + 1695 = 4096, R3 = 434 + 156 = 590. (Если вы запутались, советую заполнить электронную таблицу и выделить попарно соответствующие ячейки, разглядывая их сумму). Уже в 19 веке люди старались оптимизировать вычисления — и в наши дни стоит брать с них пример!
(Механизм передачи десятков в машине Паскаля, источник — Вокруг Света)
Каждый регистр представлял собой набор из восемнадцати десятичных счетных колёс, аналогичных колёсам машины Паскаля. Вычисление происходило в два этапа — первый этапа сложение без учёта переноса, второй этап — сложение с переносом от младшего разряда к старшему (последовательный перенос). Такая схема переноса требует последовательного сложения всех разрядов с учётом переноса, который мог возникнуть на предыдущей ячейке. Это наиболее простая, но самая неэффективная схема переноса, и Бэббиджа она не устроила. В дальнейшем, работая над аналитической машиной, он разработал схему сквозного переноса.
Для табулирования логарифмической, тригонометрической и прочих функций, таблицу предполагалось разбивать на участки, каждый из которых приближался своим многочленом. Переходя от одного участка к другому, оператор должен был вручную изменить значения разностей. Машина была снабжена звонком, который звонил после выполнения определённого числа шагов. Также разностная машина была снабжена печатающим механизмом, который запечатлевал результат на медной пластине. Такую пластину можно было использовать для неограниченного числа оттисков, при этом исключалась возможность внесения ошибки наборщиком.
Стоит заметить, что идея разностной машины была высказана ещё 1786 году Иоганном Гельфрейхом Мюллером, но он даже не приступал к её постройке, и по всей вероятности Бэббидж ни чего не знал об этой идеи.
Начало работ
К воплощению машины в металле и дереве, Бэббидж приступил в 1820 году. В 1822 году он заканчивает создание малой разностной машины. Она была способна вычислять функции с постоянными вторыми разностями с точностью до восьмого знака.
(Счётные колёса разностной машины Бэббиджа. Источник wikipedia)
Бэббидж начинает всячески популяризировать идею вычисления таблиц с помощью машин. В 1823-м году он получает финансирование от правительства в размере 1500 фунтов и начинает работу над машиной, которая смогла бы табулировать функции с постоянными шестыми разностями с точностью до двадцатого знака. Однако к 1828-му году выделенные средства полностью исчезают, также как и средства, выделенные из собственных доходов. В дальнейшем финансирование и постройка машины продолжаются с переменным успехом, однако к началу 1833 года удаётся закончить и испытать часть машины, которая может табулировать с точностью до пятого знака многочлены с постоянными вторыми разностями.
1833 год был также знаковым, так как в этом году было законченно строительство специального пожарозащищённого здания для машины, как сейчас бы сказали — датацентра. Переезд в новое здание вызвал паузу в создании машины. С одной стороны это создало новые проблемы — главный инженер, работавший над созданием машины, потребовал оплатить простой рабочих. Требование было отклонено, и он немедленно уволил всех рабочих и забрал все инструменты и оборудование, созданные во время работы над машиной, что вполне соответствовало английским законам того времени.
Однако вынужденная пауза привела к тому, что Бэббиджу пришла идея создания машины, которая могла бы вычислять не только таблицы, но и решала бы всё то многообразие задач, с которым сталкиваются инженеры и математики. В 1834-м году Бэббидж разрабатывает основные принципы новой машины, которую он называет аналитической. Однако о ней мы поговорим в следующей части статьи.
Как же обстоят дальнейшие дела с разностной машиной? 1834 год выходит статья доктора Дионисия Ларднера «Вычислительная машина Бэббиджа», в которой весьма подробно описывается принцип и устройство машины. Эта статья побудила двух шведов — Георга и Эдварда Шютца (отца и сына) к созданию своей собственной машины.
Трагический финал
Очередная проблема ждёт нашего героя — 1842-му году правительство отказывается от финансирования постройки разностной машины, т.к. будущие затраты на много превосходят изначально предполагавшийся бюджет.
В сороковых годах Бэббидж безуспешно пытается получить финансирование на достройку машины, которую он к тому времени заметно усовершенствовал, работая над идеями аналитической машины.
В тоже время шведы успешно продолжают работу над своей версией разностной машины, и к 1854 году успешно заканчивают её создание. Демонстрация машины состоялась на всемирной выставке в Париже 1855 году, и Бэббидж всячески приветствовал эту демонстрацию. Его сын Генри подготовил плакаты, поясняющие работу машины.
При жизни Бэббидж так и не смог довести своё детище до конца. Готовая часть машина была отправлена в музей Королевского колледжа, а 1862-м году она неудачно выставлялась на международной выставке в Лондоне, где ей отвели маленькую проходную комнату, откуда она вновь возвращается в музей. На этот раз это был научный музей в Южном Кенсингтоне, так как музей Королевского колледжа отказывался принять машину.
(Рабочая разностная машина в музее компьютерной истории в Маунтейн Вью, Калифорния. Источник wikipedia)
Как не парадоксально, но, не смотря на отказ Бэббиджу, в 1858-м году правительство заказывает у английского инженера создание копии шведской разностной машины. Эта копия впоследствии широко использовалась для вычисления таблиц смертности, по которым страховые компании делали свои начисления.
Работая над разностной машиной, Бэббидж пришёл к идее универсальной машины, которая смогла бы решать целый круг математических и инженерных задач. Его идея оказалась настолько оригинальной и опережающей своё время, что её реализация в задуманном виде воплотилась намного позже жизни её автора. Об этой машине, а также о первой программистке, в честь которой был назван язык Ада, и пойдёт речь в следующей части статьи.