Вычисления в докомпьютерную эпоху.pptx
- Количество слайдов: 11
Вычисления в докомпьютерную эпоху
Чарльз Бэббидж в начале 1870 - х
Бэббидж разработал две вычислительные машины – Разностную (Difference Engine) и Аналитическую (Analytical Engine). Первая из них предназначалась для табулирования функций по способу конечных разностей, хорошо известному в численном анализе. Бэббидж видел в ней средство повышения точности вычисления различных таблиц, находивших в его время большое практическое применение. По замыслу автора, Разностная машина должна была табулировать функции с постоянными шестыми разностями с точностью до 18 знаков и состояла из вычислительной и печатающей частей. Числа в ней представлялись с помощью регистров, состоящих из вертикально расположенных и находившихся на одной оси 18 десятизубчатых колес, ее арифметические способности были невелики – она выполняла лишь операцию сложения.
От предшествовавших механических счетных машин Разностная машина отличалась тем, что в процессе вычислений не требовала вмешательства человека, но так же, как и они, обладала ограниченными возможностями. Она, пользуясь современной терминологией, представляла собой специализированное вычислительное устройство с фиксированной программой действий: установив в регистрах машины некоторые исходные данные, можно было табулировать функцию только одного вида. Чтобы перейти к вычислению другой функции, требовалось вмешательство человека – он должен был ввести в регистры новые исходные данные.
Собранная часть Разностной машины (январь 1832) Замысел Разностной машины возник у Бэббиджа в 1820 -м или 1821 году. Благодаря поддержке научных кругов и некоторых знатных особ ему удалось получить у правительства средства для найма чертежников и рабочих и в январе 1832 г. собрать и успешно испытать часть машины, которая содержала более 2000 деталей и могла рассчитывать полиномы с постоянными разностями третьего порядка. Далее, однако, работа застопорилась: Бэббидж рассорился и прекратил всякие отношения со своим "главным инженером" – выдающимся машиностроителем Джозефом Клементом (Joseph Clement, 1779– 1884), правительство со скрипом выделяло средства для завершения постройки машины, а в ноябре 1842 г. объявило, что, затратив на поддержку Бэббиджа 17 000 фунтов (6000 он вложил сам), прекращает финансирование столь дорогостоящего проекта.
Но еще ранее, в середине 1834 г. , Бэббидж он понял, что Разностная машина – это лишь первый и весьма робкий шаг на пути к автоматизации вычислений, и задумал создать машину, которая вычисляла бы не только таблицы, но и решала бы все многообразие тех задач, с которыми регулярно сталкиваются математики и инженеры. В течение двух следующих лет он разрабатывает основные принципы построения и первый вариант конструкции новой машины, названной им "Аналитической" и являющейся прообразом универсальных цифровых вычислительных машин, появившихся более чем через столетие! При табулировании функций приходится время от времени заменять значение последней разности, причем это делается в зависимости от результата в "регистре таблицы". Бэббидж попытался автоматизировать эту замену, предложив круговую конструкцию Разностной машины, в которой регистры "последней разности" и "таблицы" располагались бы рядом, а "регистр таблицы" управлял бы ходом вычислительного процесса.
В работе над Аналитической машиной было два периода. Временные рамки первого – середина 1834 -го – конец 1848 -го. Эти годы Бэббидж посвятил разработке различных вариантов построения (компоновки) машины, а также полного комплекта ее чертежей: он еще питал угасавшую с каждым годом надежду, что правительство согласиться финансировать изготовление новой машины. Характерно, что Бэббидж отказался от ее макетирования и экспериментально проверял только работоспособность отдельных узлов; по-видимому, он был полностью уверен в правильности выбранного им пути и в качестве чертежей. Второй период начался в январе 1857 г. и продолжался почти до самой смерти ученого. В это время Бэббидж генерирует все новые идеи, касающиеся, с одной стороны, упрощения конструкции машины, а с другой – внесения в нее изменений, увеличивающих вычислительные возможности и все больше приближающих ее к средствам современной ВТ. Кроме того, пытаясь удешевить изготовление машины, он предлагает и успешно реализует новые технологии – штамповку и литье зубчатых колес.
В течение первого периода Бэббидж сформулировал несколько основополагающих принципов построения машины, не всегда напрямую связанных с технической реализацией. 1. Прежде всего он отделил устройство для хранения чисел от устройства, предназначенного для выполнения арифметических операций (в Разностной машине они были совмещены). 2. Дальнейшее развитие этого принципа позволило Бэббиджу предложить совершенно новую структурную организацию машины. В ее состав должны были входить: • "склад" (store) для хранения чисел (по современной терминологии – запоминающее устройство, память); • "мельница" (mill) для выполнения арифметических операций –арифметическое устройство; • устройство, управляющее в определенной последовательности действиями машины (автор не дал ему названия, но сейчас оно называется устройством управления); • устройства ввода и вывода данных.
3. Бэббидж рассматривал возможность представления чисел в машине не только в десятичной системе счисления, но и в системах с основанием 2, 3, 4, 5 и 100. Он пришел к выводу, что при использовании двоичной системы потребовалось бы иметь в каждом регистре слишком большое число колес (если сохранять ту же разрядность "машинного слова"). С другой стороны, использование системы с основанием 100 позволило бы сделать "склад" более компактным, но привело бы к тому, что арифметические операции выполнялись слишком медленно. 4. Чтобы обеспечить большой диапазон представимых в машине чисел и достичь высокой точности вычислений, Бэббидж планировал создать "склад", способный хранить от 100 до 1000 чисел по 40– 50 десятичных знаков в каждом ("что позволяет иметь некоторый запас по отношению к наибольшему числу, которое может потребоваться"), и "мельницу", соответствующую этой разрядности. Для сравнения скажу, что емкость запоминающего устройства одной из первых английских ЭВМ EDSAC составляла 250 десятиразрядных чисел.
5. Оценивая возможности будущей машины, Бэббидж предположил, что она может быть использована для выполнения операций не только над числами, но и над алгебраическими выражениями. 10 июля 1836 г. он записал в своей рабочей тетради: "Сегодня я пришел к общей, но еще не совсем четкой концепции создания машины, вырабатывающей алгебраические (курсив Бэббиджа. – Ю. П. ) формулы… Я имею в виду, что она должна это делать без обращения к конкретным числовым значениям алгебраических символов". 6. Кроме того, Бэббидж высказал соображения, чрезвычайно важные для современного программирования: предложил идеи "цикла" (правда, не дал ему названия), "библиотеки подпрограмм", операции "условной передачи управления" (о последней будет подробнее сказано позднее).
Конечно, перечисленным выше не исчерпываются все "вычислительные" идеи Бэббиджа. Он, например, предложил вариант Аналитической машины с двумя "мельницами", каждая их которых, работая параллельно, выполняла бы вычисления над 30 -разрядными числами; будучи соединены между собой, они смогли бы обрабатывать числа с вдвое большей разрядностью. Часть Аналитической машины – “мельница” и печатающее устройство
Вычисления в докомпьютерную эпоху.pptx