Удивительная история информатики и автоматики - Валерий Шилов
Шрифт:
Интервал:
Закладка:
Как мы видим, за сорок лет алгоритм превратился в одно из ключевых понятий математики, и признанием этого стало включение слова не только в энциклопедии, но и в толковые словари. Например, оно присутствует в «Малом академическом словаре русского языка» (1981 год) — именно как термин из области математики.
Одновременно с развитием понятия алгоритма постепенно происходила и его экспансия из чистой математики в другие сферы. И начало ей положило появление компьютеров, благодаря которому слово алгоритм обрело новую жизнь. Вообще можно сказать, что его сегодняшняя известность напрямую связана со степенью распространения компьютеров. Например, в третьем томе «Детской энциклопедии» (1959 год) о вычислительных машинах говорится немало, но они еще не стали чем-то привычным и воспринимаются скорее как некий атрибут светлого, но достаточно далекого будущего. Соответственно и алгоритмы ни разу не упоминаются на ее страницах. Но уже в начале 70-х годов прошлого столетия, когда компьютеры перестали быть экзотической диковинкой, слово алгоритм стремительно входит в обиход. Это чутко фиксируют энциклопедические издания. В «Энциклопедии кибернетики» (1974 год) в статье «Алгоритм» он уже связывается с реализацией расчетов на вычислительных машинах, а в «Советской военной энциклопедии (1976 год) даже появляется отдельная статья «Алгоритм решения задачи на ЭВМ».
За последние полтора-два десятилетия компьютер стал неотъемлемым атрибутом нашей жизни, компьютерная лексика становится все более привычной. Слово алгоритм в наши дни известно, вероятно, каждому. Оно уверенно шагнуло даже в разговорную речь, и сегодня мы нередко встречаем в газетах и слышим в выступлениях политиков выражения вроде «алгоритм поведения», «алгоритм успеха» (а кто-то даже употребил выражение «алгоритм предательства»!). Академик Н. Н. Моисеев назвал свою книгу «Алгоритмы развития», а известный врач Н. М. Амосов — «Алгоритм здоровья». А это означает, что слово живет, приобретая все новые значения и смысловые оттенки.
От календаря к компьютеру
Человек придумал цифры для того, чтобы считать и вычислять. Но на протяжении многих веков потребности в вычислениях ограничивались в основном подсчетом — т. е. определением числа единиц какого-либо объекта, будь то количество овец в стаде или монет в казне. Вероятно, единственными людьми, которые на самом деле покрывали бумагу (точнее, поскольку бумагу еще не изобрели, свитки папируса, куски пергамента или восковые дощечки) рядами цифр, были астрономы Древнего мира. А в середине первого тысячелетия нашей эры — после распространения христианства в Европе — одной из самых важных задач астрономии стало вычисление точной даты празднования Пасхи.
Искусство ее вычисления столетиями оставалось центральной проблемой математики и астрономии. Оно получило название компут (computus, от латинского computare — «вычислять»). Люди, занимавшиеся компутом, назывались… Нет, не компутерами, а компутистами.
Латынь в Средние века была широко распространенным языком, на котором разговаривали придворные и сочинялись ученые трактаты. Постепенно слово comput, видоизменяясь, проникало и в другие европейские языки, в том числе в английский. В 1646 году известный английский врач и ученый-энциклопедист Томас Браун в сочинении «Pseudodoxia epidemica» впервые использовал слово computer для обозначения человека, профессионально занимающегося пасхальными вычислениями (таким образом, оно заменило латинское computiste).
Слово прижилось, поскольку оно отвечало потребностям времени. Действительно, по сравнению с античностью жизнь общества неимоверно усложнилась. Бурно развивались торговля, промышленность, мореплавание, картография, физика и другие науки. Везде надо было проводить вычисления, но, к сожалению, искусство счета не было общим достоянием. Хотя в школах и университетах обучали вести вычисления на бумаге с использованием арабских цифр, но в основном ограничивались умением складывать и вычитать. Умножение же и особенно деление были известны (и доступны) далеко не каждому. В подтверждение можно привести, например, такой факт. Известный английский мемуарист Сэмюэл Пепис, начавший работать клерком Адмиралтейства, 4 июля 1662 года записал в своем дневнике: «…я пытаюсь изучить математику (прежде всего стараюсь выучить таблицу умножения)». То, что Пепис, окончивший Кембриджский университет, не умел ни умножать, ни делить, ярко характеризует уровень математического образования эпохи.
Поэтому во многих европейских странах начиная с XV века сформировалось сословие мастеров счета. Были они (правда, несколько позже) и в России. Вспомним бессмертную комедию Д. И. Фонвизина «Недоросль» (1782 год), один из персонажей которой, отставной солдат Цыфиркин, так говорит о себе: «Малу толику арихметике маракую, так питаюсь, у счетных дел. Не всякому открыл Господь науку: так кто сам не смыслит, меня нанимает то счетец поверить, то итоги подвести. Тем и питаюсь: праздно жить не люблю».
До середины XVIII века мастера счета, подобно Цыфиркину, в основном перебивались случайными заказами. Но в 1767 году в Англии вышел первый выпуск ставшего впоследствии ежегодным «Морского альманаха» («Nautical Almanac»). Основным предназначением издания было помочь морякам определять долготу в открытом море, поэтому альманах содержал различные астрономические таблицы (в первую очередь лунные расстояния с интервалом в три часа на каждые сутки года). Для расчета таблиц по всей стране нанимались квалифицированные вычислители, выполнявшие свою работу на дому, причем каждый из них производил полный набор расчетов на определенный период времени. Из сохранившихся списков следует, что первой женщиной-компьютером, привлеченной для выполнения счетных работ, стала некая Мэри Эдвардс. Организатором работ и редактором альманаха был королевский астроном Невил Маскелин.
После этого различные схемы организации вычислительных работ с помощью коллектива людей применялись во многих странах в течение почти 200 лет. История знает такие масштабные проекты использования людей-компьютеров, как предложенный в 1922 году кембриджским математиком Льюисом Ричардсоном план задействовать одновременно 64 000 (!) счетчиков в разных странах для расчета прогноза погоды. Компьютеры вели свои расчеты на бумаге, а ближе к концу XIX века впервые стали использовать арифмометры. Для того, чтобы отличить «счетные машины» от «счетных людей», различные устройства для механизации счета стали называть калькуляторами (calculator) или вычислительными машинами (computing machine).
Своего расцвета профессия компьютера достигла в 1930-1940-е годы. В это время была особенно велика потребность в различных таблицах — математических, астрономических, баллистических, навигационных и других. Для их составления требовалось производить огромный объем вычислений, и количество людей, вовлеченных в эту деятельность, исчислялось тысячами. В штатном расписании научных организаций и фирм значились такие должности, как «младший компьютер», «помощник компьютера», «компьютер» и «старший компьютер». Например, известный американский ученый в области вычислительной техники Герберт Грош, начавший свой трудовой путь в 1935 году именно с должности компьютера, в последние годы жизни в шутку называл себя «самым старым компьютером на Земле».
Люди-компьютеры за работой. Фотография. 1920-е годыКогда в середине 1940-х годов стали появляться первые электронные вычислительные машины, их воспринимали всего лишь как большие и очень быстрые арифмометры, способные с огромной скоростью производить вычисления. Они должны были заменить на этой работе людей-компьютеров и, естественно, также получили это наименование. Чтобы избежать терминологической путаницы, в 1945 Г°ДУ знаменитый компьютерный пионер, создатель серии релейных электромеханических машин Джорж Стибиц, предложил сохранить названия калькулятор и вычислительная машина за простыми механизмами, способными выполнять за один раз одну из четырех арифметических операции над парой чисел, а словом компьютер называть машины, «способные автоматически выполнять последовательности таких операций и сохранять промежуточные результаты». Людей, которые работают на таких машинах, Стибиц предложил называть операторами (operator).
Действительно, терминология еще только формировалась. Первая механическая вычислительная машина Mark I, построенная Говардом Айкеном в 1944 году, официально называлась ASCC (Automatic Sequence Controlled Calculator) — т. e. калькулятор, а не компьютер. Название знаменитого ENIAC (первая электронная вычислительная машина, построенная в США в 1946 году) было аббревиатурой слов Electronic Numerical Integrator and Computer. Первая в Европе электронная вычислительная машина, построенная в Англии в 1949 году, называлась EDSAC (Electronic Delay Storage Automatic Calculator). А вот великий английский математик Алан Тьюринг свой проект вычислительной машины назвал АСЕ (Automatic Computing Engine). Слово engine — «устройство, машина» — явно отсылало к знаменитой аналитической машине (analytical engine) его не менее великого соотечественника Чарльза Бэббиджа. Таким образом, слово computer далеко не сразу прижилось даже в США и Англии. Окончательно это произошло только в первой половине 1950-х годов.