Истории о «ненужных» открытиях - Виктор Давыдович Пекелис
Изобретение Чебышева интересно для нас в другом отношении. Создавая в классе арифметических машин оригинальную конструкцию, стремясь в работе ее достигнуть плавности и последовательности операций, Чебышев сумел построить удобную для вычислений машину. Но и на арифмометре Чебышева – так же, как и на других арифметических машинах, – при вычислениях человек все делал сам. Сам крутил рукоятку счетного механизма, сам выписывал или держал в уме промежуточные результаты: человек шаг за шагом вел весь вычислительный процесс, а кроме того, выполнял еще и роль координирующего центра. Человек, а не машина устанавливал правильный порядок операций – был для машины ее живой программой.
Для дальнейшего развития вычислительной техники нужны были не новые усовершенствования старого принципа, нужен был новый принцип: «освободить» машину от человека.
К этому-то принципу и пришел в своих столь необычных, с точки зрения современников, проектах «человек, всю жизнь пытавшийся сделать мир умнее», – Беббидж.
Интересно, почему же теперь, спустя сто лет, выделяют среди других английского математика, члена Королевского общества Чарльза Беббиджа, говорят, что имеппо он, а не кто-либо из тех, других, раньше пего строивших совсем неплохие счетные машины, не просто изобрел еще одну новую машину, а сделал выдающееся открытие, опередившее свое время на целое столетие?
МАШИНА, ПОЖИРАВШАЯ СВОЙ ХВОСТ
Это был грандиозный проект. В век пара, когда электротехника только зарождалась, когда об электрическом реле никто и ничего не мог слышать – оно было создано лишь через год, в 1835 году, – Беббидж задумал «аналитическую машину» из механических узлов. Машина должна была не только вычислять таблицы, но и решать все задачи, с которыми сталкиваются математики и инженеры. Машина должна была выполнять арифметические действия; запоминать начальные данные, промежуточные данные и результаты вычислений; запоминать инструкции и команды, по которым должно выполняться решение задач; выдавать результаты вычислений и последовательно выполнять те команды, которые заданы для программы вычислений. К тому же выполнять все действия без вмешательства человека и в зависимости от полученного па определенном этапе решения результата самой выбирать дальнейший путь вычислений.
Когда наивные люди, не понимавшие ни математики, пи арифметической машины, просили ее создателя объяснить, что же это за чудище его машина, он не без гордости отвечал: «Опа способна идти дальше, поедая свой собственный хвост».
Но одно – замысел, совсем другое – его воплощение. Чтобы строить свои вычислительные машины, Беббидж раньше приобрел дом с земельным участком в очень тихом, уединенном месте. Каретный сарай при доме превратил в кузницу, а конюшню в мастерскую. Еще одну мастерскую построил сам и даже соорудил специальное хранилище для чертежей.
Тогда, во времена бурного развития железных дорог, мастера-механики ценились высоко, их не хватало. Найти специалистов, а главное, удержать их было трудно. Одному из своих помощников Беббидж вынужден был впоследствии прибавлять к жалованью каждый день по гинее, иначе он грозился уйти туда, где больше платят.
Прежде чем приступить к непосредственному изготовлению деталей и механизмов будущей машины, ее создателю пришлось проделать колоссальную подготовительную работу. Надо было сделать чертежи – тысячи листов; найти, как повысить точность изготовления всех деталей и улучшить качество сборки механизмов; решить много чисто технологических задач – ведь с большинством работ сталкивались впервые, назначение многих механизмов не всегда было ясно и понятно изготовителю.
Работа длилась с утра до позднего вечера, а частенько Беббидж прихватывал и ночные часы.
Я листаю объемистые тома в добротных переплетах. В них собраны заметки, статьи, схемы, планы – все, что так или иначе связано с «аналитической машиной». Вот часть из них: «Аналитическая машина Беббиджа» (из «Эдинбургского обозрения», июль 1834 г.); «Описание Аналитической машины» (из «Всеобщей библиотеки Женевы», октябрь 1842 г., № 82); «Общая схема машины» (план 25, датированный б августа 1840 г.).
Даже специалистам трудно разобраться в собрании чертежей и описаний: их более двухсот. Они содержат 30 вариантов общей компоновки машины, более четырех тысяч (!) «механических обозначений». Не легко понять полностью устройство машины, глядя на рисунок, сделанный по оригиналам частей машины, хранящихся в Научном музее Лондона. Поэтому нам придется обратиться за помощью к историкам техники, которые кропотливо, часть за частью, изучали хитросплетения уникального создания Беббиджа и сумели дать довольно простое описание машины.
Машина делилась на три части. Первые две названы Беббиджем образно – «складом», «мельницей». Третью по аналогии можно назвать «конторой».
«Склад» составлял ту часть машины, где хранился весь числовой материал, используемый в ходе длительных вычислений. «Мельница» обрабатывала этот материал. «Контора» управляла – выполняла роль автоматического оператора, регулировала последовательность операций, производила отбор чисел и подавала в нужное место результаты вычислений.
«Склад» состоял из 1000 колонок по 50 цифровых колес в каждой, на которых было выгравировано по 10 цифр. Таким образом, в «складе» помещалась тысяча чисел по 50 десятизначных зпаков. И располагались они так, чтобы можно было их передавать по мере надобности в «мельницу».
Для переноса чисел со «склада» предусматривалось использовать зубчатые рейки, которые должны были сцепляться с зубцами на колесах. Каждая рейка продвигалась до тех пор, пока колесо не занимало нулевое положение.
Когда «мельница» оканчивала данную операцию, устройство управления извлекало новые числа со «склада».
Интересно, что в современных электронно-вычислительных машинах англичане продолжают называть устройство для хранения числового материала складом или накопителем (store). У нас это устройство называется «памятью» или «запоминающим устройством».
Конструируя свою машину, Беббидж заметил, что наличие «склада» для числового материала еще не обеспечивало автоматичности работы. Машина должна была еще знать, что делать с числами: складывать, вычитать или делить. Беббидж решил: в его машине должны храниться не только сами данные, по и команды. Это обеспечивало бы большую скорость работы. Действительно, наличие чисел и команд в распоряжении самой машины делало ее более независимой от человека, а тем самым увеличивало скорость работы.
Беббидж намеревался сделать два разных накопителя: для чисел и для команд. Он предложил зарапее приготовить команды для большого количества операций и помещать их в накопителе команд в том порядке, в каком их будет выполнять машина. Как только «мельница» завершала одну операцию, опа должна была запрашивать о следующей у «склада» команд.
Особо следует сказать об управлении этой машиной.
Для ввода данных в машину и управления ее работой Беббидж предложил использовать перфокарты, которые давно применялись для управления в жаккардовых ткацких станках, ткущих узорчатые рисунки. Хотя подчас рисунки бывали очень сложными, машины безошибочно следовали указаниям перфокарт.