Квант

8

История рождения компьютера

Академик Болгарской академии наук
Вл. X. СЕНДОВ,
доктор физико-математических наук
Н. X. РОЗОВ

В статье «Предыстория рождения компьютера» (см. «Квант», 1985, № 9) было рассказано о многовековом пути человека от счета на пальцах до арифметметра. Сейчас мы продолжим путьствие по истории — от возникновения теоретической идеи «считающее машины» до создания первых реальных ЭВМ. Этот этап развития вычислительной техники, неосредственно предвариющий эру современных компьютеров, занял примерно столепие.

На грани реализации и фантастического

Великая промышленная революция, ознакомовавшаяся постепенным, но неуклонным переходом от мелкого ручного ремонного труда к крупному машинному фабричному производству, с течение времени затронула все области технически и дала мощь импульс дальнейшем прогрессу науки. Это была эпоха великих открытий, выдавшихся изобретений, плодоворных идеей. Прогресс не мог в конце концов не проявиться и в вычислительной форме, столбец связываном с торгово-индustrialными и научно-техническими проблемами.

С начала XIX века главное внимание учебы, интересавшихся облегчением и обеспечением вычислений, было сосредоточено на всестороннем совершенствовании считающих устройств, получавших все более и более широкое распространение. Основное предназвание считающего устройства (наиболее удачным его примером является арифметметр Однера) состоит в том, чтобы самостояльно осуществлять любую арифметическую операцию над числами.

А можно ли создать машину, которая бы выполняла не просто отделные арифметические операции, но «умела» автоматически проводить всего цепочку вычислений, необходимую для решения задачи в целом? Такая постановка вопроса представляется сегодня абсolutно естественной и логичной, однако действи-полтораста лет назад даже сама по себе эта мысль была нетривиальной и ознакомлена открытием, нового направления в научном поиске. Человеком, который судедно было высказать и впервые попытаться реализовать функ-

9

mentalную идею вычислительной машины, являся английин Чарльз Бэбидж (1791—1871).

Крупный математик, талантливый инженер, разносторонний изобретатель, известный естественныйатель, пытливый исследователь, Ч. Бэбидж, при разработном многообразии своих интересов и осуществленных дел, всю жизнь неутомимо и упорно занимать разработкой и конструктивием вычислительных машин.

В 1822 году он построил образец машинны, названной им «разностной», и приступил к созданию большой разностной машинны, предназначенной для расчета наиг讼ных и астрономических таблиц. Однако эта работа по разным причикам завершена так и не была.

В 1834 году Ч. Бэбидж начинает работу над своим главным детшем — вычислительной машиной, которая он назвал «аналитический» и которая должна была автоматически решать все вычислительные задачи, с которых сталкивались инженеры и математики. Грандиозный проект такой машины, разработанный автором с удивительной подробностью, настоящего обогнал своей времени, что его практическое осуществление не могло не оказаться нереальным.

В чем конкретно состоит сделанный Ч. Бэбидж шаг вперед в развитиии вычислительной техники? Прежде всего, машины Бэбиджа, как аналитическая, так и разностная, расчитаны не на выполнение каждой арифметической операции по отдельным командам человека, поступающих всякий раз после завершения предыдущего операции, а на комплектное проведение — без вышательства человека на промежуточных этапах — всего нужно обмена вычислительной в целом. При этом, если разностная машина была ориентирован на одну в полне определенную, неизменную программу действий с данными чисlamи, то аналитическая машина допускала осуществление различных программы вычислений в зависимости от расматриваемой задачи. Выражаясь современным языком, разностная машина — это специализированная вычислительная машина с фиксированной программикой, а аналитическая машина — это универсальная автоматическая вы-

Чарльз Бэбидж — автор проекта первого универсального программного вычислительного машины.

Нельзя не отметить, что аналитическая машина Бэбиджа представляет собой единый комплект специализированных блоков: устройства для ввода начальной информации (исходных данных), запоминающего устройства (памятки), арифметическое устройство (осуществляющего действия над числами), устройство управления (обеспечивающего выполнение операций в необходимой последовательности), устройство для ввода обработанной информации (результата). Иными словами, эта машина, предвосхизная архитектуру современных компьютеров, обладала практическими всими их нынешними основными структурными компонентами.

Однако — дитя своей эпохи! — аналитическая машина, как и все предшествующие ей считающие устройства, была (и не могла не быть) чисто механическим калькулятором. Ведь в первой половине прошло столетя исследований в области электричесва, работы по его использованию еще только начинались. Именно потому генциальные идеи Ч. Бэбиджа относительно назначения, логического структуры и принципов работы вычислительной машины оказались облепыми в одеждах, заранее предопределившие бес-

10

перспективность попыток внедрения подобных машин в жизнь. Впрочем, и здесь Ч. Бэбидж пытается сказать новое слово: проект предустратival, что приводит аналогичную машину в действие должен паровой дивятель.

Первая леди комьютерного королевства

Как показала дальнейшая история, одним из прочееских замыслов Ч. Бэбиджа является предложенная им система управления вычислительной машиной с помощью перфокарта. Идея использования карточек с пробитыми в них ответящими (perфокарт) получила широкое распространение после того, как в 1804 году французский изобретатель Жозеф Мари Жаккар (1752—1834) примел их для автоматизации работы ткацкого станка. Однако Ч. Бэбиджу впервые пришлось занять детальной разработкой многих вопросов, связанных с введением перфокартами в машину массивов чисел и последовательности команд.

Управление вычислительной машиной, очень/noно, невозможно без развития теории рационального описания комплектов тех операций, которые следует выполнять машине при решении различных задач. Тем самым оказалось неизбежнымождение нового направления науки — программирования. Заслуга создания этого направления принадлежит Августе Аде Лавлейс (1815—1852), дочери великого английского поэта Джорджа Байрона.

Леди Лавлейс, проявлявшая незаурядные математические способности, серьезно интересовалась работой Ч. Бэбиджа и глубоко понимала его идеи. В своей публикации 1843 года, которую по праву считают первый работой по теории программирования, она высказала целый ряд мысли и принципиов, сохраняющих свое значение и сегодня, а не которые предложенные его термины закрепились в научном языке. Ей принадлежит и исторически первая достаточно сложная конкретиная программа — для вычисления так называемых чисел Бернулли по специально разработанному алгоритму (пraktических пробовать эту программу она, конечно, не могла по причине отсутствия машин).

Говоря о программировании, нельзя не отметить еще два факта, относящихся к XIX веку и сыгравших особенно важную роль в становлении этой науки. Первый — «изобретение» Ч. Бэбиджем специальной команды, называемой сейчас командой условияного перехода (говорят еще ветвления) и имеющей в современном программировании исключительное значение. Эта команда позволяет самой машине автоматически определять дальнейшую последовательность операций в зависимости от результата, получающегося на определенном шаге работы. Тем самым открывается возможность поручить машине выполнение не только аргументических, но и логических операций.

Однако для того чтобы продвинуться по этому пути, нужно расположать аппарат формульно-mатематического анализа логических высказываний. Именно таким аппаратом оказалась теория, предложенная в 1847 году английским математиком Джорджем Булем (1815—1864) и получившая название бульевой алгебры.

11

Это — второй исторический факт XIX века, предопределенный использование вычислительных машин для решения логических проблем и автоматизации расчудений.

Время надежд, время исканий

Ч. Бэбидж умер, его аналитическая машина так и осталась незавершенным проектом… Но его основная идея — создать автоматическое вычислительное машину с программным управлением для выполнения научно-технических расчетов — умеет не могла. Ибо она была произрывым предвидением насущенных потребностей продолжшегося развития цивилизации.

Уже с конца прошло столетя быстрого увеличения число модели и модификации арифметметра и других считающих устройств (клавишных, записьвойших и т. п.), начинается их широкое производство и применение. Арифметметр существенно облегчил и укорил наиболеутиментальное и рутинирующее работу — выполнение арифметических операций. Однако фактическое решение сколько-нибуд серьезной конкретной математической задачи, получение в ней реализного ответа в виде численных данных, прежде всего обчную и нужного в приложениях, оставалось целой пробелой, не простым и трудоемким делом, требовавшим длительных успешной больших коллективов вычислителей.

Например, одним из основных местов, связывающих математку сжизнью, является дифференциальные уравнения. Естественно, что отыскание решения (или, как говорят математики, интеррирование) таких уравнений служит типичным объектом вычислительных работ. Вот что говорилось по этому поводу в книге «Численное интеррирование дифференциальных уравнений», изданной всего лишь полвека назад, в 1932 году: «Читатель долженверду услить себе главную мысль: решения этих уравнений в огромном большинстве случае является на практике чрезвычайно трудной операцией, относительной часть много времени на вычисления…»

Было совершено ясно: разрешить все усиливающиеся противоречие между уровнем развития математики

ческой теории и возможность ее реализации приложений,.linkвидировать громадные трудности на пути осуществления расчетов, в которых отсутствнуждались технологии и наука, экономика и управление, может лишь вычислительная машина. Эти в первую очередь и обьясяется, что приставный интерес к конструкрованию вычислительных машин, явно наметився в конце XIX века, стал затем резко растит. Усилями отделных инженеров, физиков, математиков, изобретателей, а чашце — целых коллективов удалось добиться многих замечательных результатов. Нельзя не поддержнуть, что в значительной мере эти результаты были невозможны без сделанных к тому времени открытий и исследования в физике, механике, техническе, без доступного уровня промышленного производства и технической культуры.

Какие же вычислительные машины были проектированны и созданы в первой половине нашего столетия? Далее простое перечисление их модели потребовал бы слишком много места. Поэтому мы ограничимся лишь кратким перечислением их основных, прициппальных особенностей и несколькими примерами.

Большую группу составляли специальизированные электромеханические вычислительные машины, представленные собой механический калькулятор, который приводился в движение электроприводом и управлялся электрическими импульсами. Особое распространение получили табуляторы (начание: счетно-аналитические, или счетно-перфорационные машины), применяющиеся главным образом для механизации решения задачи статистики и учета. Первый табулятор разработал еще в 1884 году американский инженер Герман Холлерит (1860—1929).

Были построены электромеханические вычислительные машины, ориентированные на другие важные практические задачи. Надо признать, что некоторые из них являются более естественным образом совершенным конструкторским мыслями и идеального технического использования. Средние их следует упомянуть первую машину для интегрирования дифференциальных уравнений, изобретенную известным советским математиком и ко-

12

рабелом академиком А. Н. Крыловым (1863—1945). Отметим далее, что в 1915 году фирма «Аскания» (Верлин) изготовила вычислительное машину для определения времени приливов и отливов на северном побережье Германии. Автомат состоит из замыслового кружева несколько сотен бронзовых шестеренок и был не так уж громоздок. Для того, чтобы составить расписание приливов на год, он должен был «шевелить шестеренками» восем часов — быстродействие достаточно妒зительное по тем временам. Но еще более妒зительно, что машина верной и правой безотказно служила 60 лет — до 1975 года!

Другую группу составляли универсальные электромеханические вычислительные машины с программным управлением. В этих машинах применялась техническая новинка — электромагнитное реле. Исторические первоий действияшей машиной такого типа была машина «Ц-3», построенная в 1941 году немецким инженером Конрадом Цузе, одnakо развязывания гитлеровой Германии вона стала прийной того, что это достижение немецкой науки не получило своевременной известности и не оказало влияния на развитие вычислительной техники.

Самая совершенная из машин этой группы, получившая название «Марк-1», создавалась в 1937—1944 года под руководством американского физика Говарда Эйкена. Она была большую роль в решении целого ряда ключевых вопросов конструкрования компьютеров. Вот некоторые ее характеристики. «Марк-1» весил 4,5 тонны, занимал площадь 17×2,5 м и представлялось сложную комбинацию огромного числа релейных и механических элементов, соединенных 800 км электроноводки. Ввод начальных данных — 23-значных чисел в общий (десятичной) форме осуществлялся с помощью перфокарта, аправление работы машины обеспечивает бумжной перфолентой. На операцию сложения (вычитания) затрачивалось 0,3 секунды, а умножение и деление требовали 5,7 с и 15,3 с соответственно.

Наконец, упомянем еще большую группу аналоговых вычислительных машин (или машин непрерывного действия). Работа этих машин базируется на идее конструкрования — по исходным данным — такой модели схемы (главным образом — электрической), изменение одной из физических характеристик (например напряжения) которого и определяет искому волчину. Эти машины особенно хорошо себя зарекомендовали при решении задач, где в первую очередь важно получить качественное или графическое представление об изменении неизвестной. Однако для особых вычислений они практические непргигодны.

Итак, достигнутые успехи в создании вычислительных машин были несомнены. И все же эти машины в коей мере не могли удовлетворить огромные вычислительные потребности», сложившиеся к середине XX века. Непомерно дорогостшей и непримемого громоздкой являются их конструкция, слишком низкой оставалась скорость работы, явно недостаточным был объем памяти, веса негибким оказалось на практике управление процессом вычислений. Дальнейшее интенсивное развитие вычислительной техники, ее массовое использование объективно не могло быть обеспечено лишь улучшением реализации уже имеющихся идеей.

Требовалась принципиальное новая идея…

«АВС» — первый электронный компьютер

Приципиально новая идея состоит в том, чтобы заменить все механические элементы машины, все электромагнитные реле электронными