300 ЛЕТ ИЗ ЖИЗНИ АРИФМОМЕТРОВ ОКТЯБРЬ 2004 Леонид Черняк 300 лет из жизни арифмометров Источник: Computerworld, #42/2002 О Готтфриде фон Лейбнице как о математике известно многое, но есть и не слишком широко известные вещи, напрямую относящиеся к современной информатике. У палочек Непера и машины Паскаля во второй половине XVII века было несколько преемников, после изобретения которых, по существу, завершилось развитие принципов механических арифмометров. Последующие усовершенствования, посыпавшиеся как из рога изобилия в XIX веке, были в большей степени инженерными, нежели принципиальными. Более чем столетняя пауза была нарушена новой волной изобретений в области разностных машин, среди них наибольшую известность приобрела машина Бэббиджа. Прогресс механических устройств сдерживался прежде всего неразвитостью точного приборостроения, отсутствием промышленных стандартов и общей низкой культурой производства. Оказалось, что реализация любых идей, относящихся к механическим счетным регистрам, упирается в непреодолимый барьер в виде трения. Если в устройстве есть последовательность взаимосвязанных шестерен, то на каждой паре обязательно теряется крутящий момент, следовательно, на каком-то пределе его не хватит для преодоления трения в очередном узле. Например, когда современными средствами реконструировали таинственное счетное устройство Леонардо да Винчи, то оказалось, что работать оно не может: приложив усилие к первому колесу, не удается, увы, провернуть последнее. К середине XVII сложилось два возможных пути совершенствования механических устройств — «по Неперу» и «по Паскалю», оба они в конечном счете привели в боковую ветвь генеалогического древа компьютеров и представляют лишь исторический интерес. Еще один великий ученый, интересовавшийся проблемой счетных механизмов, — Готтфрид фон Лейбниц. В 1671 году он предложил идею «ступенчатого счетчика», в котором использовались специальные шестерни, получившие название «шестерней Лейбница». Машина могла выполнять четыре действия арифметики, возводить в степень и извлекать квадратные корни. О Лейбнице как о математике известно очень многое, но есть и не слишком широко известные вещи, напрямую относящиеся к современной информатике. Лейбниц одним из первых европейцев исследовал двоичные числа, приписывал себе их открытие, правда, за полторы тысячи лет до этого они были известны в Индии и Китае. Лейбниц придавал двоичной записи религиозно-мистическое значение. Семерка в виде 111 представлялась ему как символ Троицы, он как-то связывал эту запись с семью днями творения. Однако в некоторых рассуждениях Лейбниц был более рационален, он даже приближался к булевой двоичной логике, соотнося значения «1» и «0» с ответами «да» и «нет», или же с положением «включено» и «выключено». Лейбниц был не только математиком, но и инженером, он работал над проектами ветряных мельниц, насосов и оборудования для добычи минералов, в этом ряду было и изобретение калькулятора. О том, насколько сложно было его построить «в металле», используя оборудование той эпохи, можно судить по времени, затраченному на производство калькулятора, от замысла до реализации прошло более 20 лет, законченное изделие увидело свет в только 1694 году. Сложнее всего было выточить те самые уникальные «шестерни Лейбница», которые имели по девять зубцов, причем каждый из них имел свою длину, зубец минимальной длины соответствовал единице, а максимальной — девяти. Такое устройство позволяло ввести любое число заданной разрядности за один оборот. Для ввода значения в каком-то разряде заданного числа нужно было просто установить соответствующую ему считывающую шестерню с десятью зубцами на определенную позицию по длине ступенчатой шестерни. При повороте последней происходило преобразование смещения в заданный градус поворота по числу считанных зубцов. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 1/2 300 ЛЕТ ИЗ ЖИЗНИ АРИФМОМЕТРОВ ОКТЯБРЬ 2004 Рис.1. Лейбниц придавал двоичной записи религиозно-мистическое значение. Семерка в виде 111 представлялась ему как символ Троицы В 1820 году на новом технологическом уровне шестерни Лейбница воспроизвел француз Шарль Томас де Кольмар, создавший первое счетное устройство, выпускавшееся серийно. Наряду со скромными рабочими образцами было изготовлено несколько роскошных, напоминающих по конструкции пианино (Piano Arithmometer). Арифмометры выпускались десятками тысяч на нескольких приборостроительных заводах вплоть до конца 60-х годов XX века, в сотнях модификаций, с ручным и электрическим приводом, с разнообразными устройствами ввода и даже со встроенной печатью. При всем разнообразии их объединяли шестерни, так или иначе наследовавшие конструкцию Лейбница, и невыносимый треск, сопровождавший их работу. В отличие от легендарного «железного Феликса» — Дзержинского, стоявшего на недостижимом пьедестале в центре Лубянской площади, этот маленький, но весьма тяжелый прибор был более доступен, его можно было встретить практически в любой бухгалтерии. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 2/2 СТАРЕЙШЕЕ СЧЕТНОЕ УСТРОЙСТВО ОКТЯБРЬ 2004 Леонид Черняк Старейшее счетное устройство Источник: Computerworld, #25-26/2002 АМ представляет собой настольное устройство, которое имеет размеры 32х16х10 см. Оно состоит из 32 бронзовых шестерен, закрепленных на деревянном каркасе. Устройства подобной сложности в эллинической культуре не обнаруживается. Когда-то давно мне подарили книгу Ричарда Экхауза и Роберта Морриса, изданную Prentice-Hall и посвященную мини-ЭВМ (как тогда говорили) PDP-11. Книга была переведена мною на русский язык вместе с А. Кондратюком, опубликована, но, разумеется, издание, подготовленное в «Финансах и статистике», оказалось более скромным по сравнению с оригиналом и с обложки исчезло изображение антикерского механизма (АМ), считающегося одним из старейших вычислительных устройств. В оригинале книги приводилась небольшая историческая справка, большего, к сожалению, тогда узнать не удалось. В начале 80-х доступ к информации был несколько иным, да и об АМ было известно не слишком много, по существу лишь одна статья выдающегося английского историка науки Дерека де Солла Прайса, опубликованная в 1959 году в журнале Scientific American. Прошли годы, заметно обострился интерес к истории компьютеров, и на этой волне появились новые исследования, посвященные АМ. Пожалуй, самые достоверные материалы принадлежат Робу Райсу и Тони Филипсу. В статье последнего приводится детальный математический анализ AM и Java- анимация работы, еще есть любопытные работы по восстановлению, точнее, по созданию действующих копий АМ. В 90-е годы сложились две удачно дополняющие друг друга школы исследования АМ, одна представлена классическими специалистами по античности, для них он предоставляет возможность переоценить взгляды на исторические процессы и по-новому посмотреть на давно известные факты. И есть вторая, более близкая к информационным технологиям группа историков, которые уделяют основное внимание собственно механизму. На том, что ими достигнуто на этом поприще, мы и остановим свое внимание, хотя все же несколько слов об обнаружении АМ сказать следует. Рис.1. В статье Тони Филипса, расположенной по Web-адресу http://www.math.sunysb.edu/ ~tony/whatsnew/column/ antikytheraI-0400/kyth1.html, приводится детальный математический анализ антикерского механизма и Java-анимация работы Новейшая история античного механизма началась в 1901 году, когда неподалеку от греческого острова Антикера был обнаружен 300-тонный корабль, шедший с Родоса в Рим. Корабль, МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 1/2 СТАРЕЙШЕЕ СЧЕТНОЕ УСТРОЙСТВО ОКТЯБРЬ 2004 наполненный сокровищами, среди которых были статуи, посуда, драгоценности, затонул примерно в 80 году до н.э. Среди прочего был поднят и механизм, чем-то напоминающий часы. Сто лет назад не было современных методов консервации морских находок, кроме того, по понятным причинам окаменевшие куски бронзы привлекли к себе гораздо меньше внимания, чем более ценные вещи. Так АМ и пролежал невидным экспонатом до 1955 года, пока Прайс его не обнаружил в Афинском археологическом музее и не оценил значимость находки. Прайс первым определил реальную функцию АМ, который ранее считали прототипом астролябии, появившейся у средиземноморских мореплавателей в VII веке. Прайс показал, что АМ — это гораздо более сложный механизм и что аналогами его являются астрономические часы. Их начали изготавливать арабы много позже, в XIV веке, а в Европе они получили распространение еще пару веков спустя. Такие часы могут показывать положение Луны и Солнца. Позже удалось показать, что АМ представляет собой настольное устройство, которое имеет размеры 32х16х10 см. Оно состоит из 32 бронзовых шестерен, закрепленных на деревянном каркасе. Устройства подобной сложности в эллинической культуре не обнаруживается. Известно, что греки делали тахиметры, позволявшие измерять число оборотов, сделанных колесом повозки, и таким образом вычислять расстояние, но такой прибор состоял всего из пары простых шестерен. В АМ и число шестерен на порядок больше, и среди них есть, например, эпициклические. В приборе имеются дисковые индикаторы и шкалы, удивительные по точности, они указывают не только положение светил, но и известных грекам планет. Разбивка шкал индикаторов позволяет привязать дату изготовления АМ к 80 году до н.э. Древнее только абак, предшественник счетов, изобретенный шумерами за 3000 лет до н.э., но он существенно проще. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 2/2 ПЕРВЫЙ СУММАТОР ОКТЯБРЬ 2004 Леонид Черняк Первый сумматор Источник: Computerworld, #37/2002 Это устройство юный Блез Паскаль сделал для своего отца, сборщика налогов. Рис.1. Внутри «Паскалины» имеется арифметическое устройство в виде регистра, состоящего из шестерен с храповиками, обеспечивающими вращение только в одном направлении К сумматору Паскаля — «Паскалине» (его называли Pascaline, Pascale или Pascalene), созданному в 1642 году, судьба отнеслась более благожелательно, чем к другим историческим счетным инструментам: из примерно 50 изготовленных образцов до нашего времени дошло целых восемь. Этому способствовало общественное положение ученого, его близость к королевскому двору, где он в 1645 году получил лицензию на исключительное право производства и продажи счетных машин (своего рода предшественница нынешних патентов). Конечно же, сохранности способствовали небольшие габариты и конструкция сумматора. Это было совсем небольшое металлическое устройство размером с обувную коробку (36х13х8 см). Впервые описание «Паскалины» появилось в «Энциклопедии» Дидро, и с тех пор история о том, что юный Блез сделал эту машину для своего отца, бывшего сборщиком налогов, стала широко известна. Предназначение устройства отражено в конструкции: она достаточно неплохо складывает, хуже вычитает и с еще большими сложностями умножает. Основная модификация «Паскалины» была восьмиразрядной (ее младшие разряды приспособлены для оперирования с денье и су), но были и упрощенные шестиразрядные версии для работы только с десятичными цифрами. В базовом варианте первый разряд был двадцатеричным, а второй двенадцатеричным, потому что в те времена французская монетарная система была сложнее современной. Она отчасти повторяла английскую, в ливре было 12 денье, как и в фунте — шиллингов, а эти единицы соответственно делились на 20 су или пенсов. Рис.2. Впервые описание «Паскалины» появилось в «Энциклопедии» Дидро, и с тех пор история о том, что юный Блез сделал эту машину для своего отца, стала широко известна МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 1/2 ПЕРВЫЙ СУММАТОР ОКТЯБРЬ 2004 При выполнении обычных десятичных операций можно было отключать разряды, предназначенные для разменной монеты. В Англии тех времен денежная система была куда сложнее: там ходили еще и фартинги, и флорины... А гинеи (в которых было 13 шиллингов) просуществовали до 70-х годов прошлого века, поскольку стоимость товаров для джентльменов было принято указывать в уже не существовавших на тот период денежных единицах. В отличие от появившихся позже и ставших весьма популярными арифмометров в «Паскалине» использовались шестерни с фиксированными зубцами. Эта конструкция шестерней объединяет замысел Паскаля с проектом Леонардо да Винчи, известным только в виде рисунка. На лицевой панели находятся компоненты, обеспечивающие ввод и вывод, восьмиразрядный «дисплей» и диски с барабанами и фиксаторами, своего рода прообраз цифровой клавиатуры. Внутри имеется арифметическое устройство в виде регистра, состоящего из шестерен с храповиками, обеспечивающими вращение только в одном направлении и, что самое важное, есть механизм переноса на случай, когда сумма в разряде больше девяти. Работа с механическим суммирующим регистром напоминает то, что делается в электронных регистрах, построенных на триггерах. Для сложения нужно: • сбросить предыдущий результат путем вращения барабанов до тех пор, пока в каждом из окошек не появятся нули; • ввести последовательно, начиная с младшего разряда, первое слагаемое, специальным стержнем при этом фиксируется положение, соответствующее цифре, а барабан вращается до этого упора; • таким же образом вводится второе слагаемое, и на дисплее можно видеть полученный результат. Вычитание было заметно сложнее, но, что любопытно, его реализация тоже очень напоминает использование дополнительных кодов, то есть вычитание заменяется суммированием с дополнением до ближайшего наибольшего целого, состоящего из одной единицы и нулей, и циклическим переносом единицы. Можно выполнить при желании и умножение, и деление, но овчинка явно не стоит выделки. Несмотря на видимую изящность, у «Паскалины» были заметные недостатки. Прежде всего, технология «приборостроения» была низка, предмет «Теория машин и механизмов» и культура измерений отсутствовали, поэтому низка была надежность — в работе сумматора часто происходил сбои. «Паскалину» реально можно рассматривать только в качестве сумматора, остальные операции были слишком тяжелы. Паскалина была неодинока. В XVII веке такого рода устройствами, кроме создателя логарифмов Джона Непера и Паскаля, занимались еще два ученых: немецкий Вильгельм Шиккард и английский Сэмюэль Морленд. Письма, в которых Шиккард описывает Иоганну Кеплеру свое изобретение, датированы 1620-1630 годами, то есть немного раньше создания машины Паскаля. Но была ли она построена — неизвестно, хотя есть современные реконструкции, подтверждающие ее работоспособность. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 2/2 ТРОИЧНАЯ МАШИНА В XIX ВЕКЕ ОКТЯБРЬ 2004 Леонид Черняк Троичная машина в XIX веке Источник: Computerworld, #41/2002 На фоне яркой звезды Чарльза Бэббиджа часто забывают о звездах меньшего масштаба, и было бы несправедливо считать, что только один он работал над созданием первого поколения разностных машин. Чарльз Бэббидж вошел в историю автоматизации вычислений звездой первой величины. За свою творческую жизнь он создал три счетные машины: два варианта разностной (differential) и аналитическую (analytical). Последняя работала по программе и в этом отношении оказалась ближе к современному представлению о том, что такое компьютер. Разностные же машины можно отнести к тупиковой ветви компьютерного генеалогического древа, которая еще просуществовала много лет, вплоть до сороковых годов XX века, но в дальнейшем это направление не получило развития. Был период, когда между компьютерами и разностными машинами наблюдалась некоторая конкуренция; так, разностный анализатор Ванневара Буша использовался в расчетах первой атомной бомбы и до поры не уступал первым электронным вычислительным машинам. На фоне такой яркой звезды часто забывают о звездах меньшего масштаба, и было бы несправедливо считать, что только один Бэббидж работал над созданием первого поколения разностных машин. Параллельно с ним, развивая это направление, в конце XVIII века и первой половине XIX века работали еще несколько изобретателей. Еще в 1786 году первым машину этого типа предложил немецкий офицер Йоган Мюллер. О самом Мюллере, как и о его машине, известно предельно мало, пожалуй, только то, он был артиллеристом в армии земли Гессен и что проект его машины остался на бумаге. Мюллер действительно был первым, кто попытался воспользоваться методом разностей для вычисления полиномов, который в начале XVIII века предложил Исаак Ньютон. Таким образом, чисто хронологически Бэббидж оказывается вторым, но масштаб его деятельности намного больше по сравнению с современниками. Работа над разностной машиной в первой версии заняла у него немало времени (проект был опубликован в 1822 году, а машина была построена в 1834-м), ко второй версии он приступил в 1849 году. У Бэббиджа были последователи, тогда же, в сороковых годах XIX века еще несколько изобретателей занимались аналогичной деятельностью, из них в историю вошли англичанин Томас Фоулер, а также Георг и Эдвард Шютц, отец и сын из Швеции. Изобретения Томаса Фоулера в некоторых отношениях очень близки к компьютеру, прозорливость его удивительна для человека, который родился в 1777 году в семье бедного бондаря, не получил никакого систематического образования, с тринадцати лет работал кожевенником, но потом стал одним из ярких мыслителей и инженеров своего времени. Фоулер — автор нескольких изобретений, он один из тех, чьими усилиями была совершена первая промышленная революция. Мало кто знает, но именно он в 1828 году предложил идею термосифона, на которой построены все системы центрального отопления, использующие в качестве теплоносителя воду. Известна более ранняя система центрального отопления в Римских термах, но там, в отличие от всех современных, распространялся теплый воздух. Однако из-за оплошностей по части патентования Фоулер не получил больших денег, хотя это изобретение позволило ему выбиться в люди, перейти на работу в банк, где он столкнулся с необходимостью выполнять трудоемкие вычисления. Вначале Фоулер попытался облегчить свой труд с помощью таблиц, в них и своих арифметических приемах он использовал двоичное и троичное представление чисел. Брошюра, опубликованная им в 1838 году, называлась «Таблицы, облегчающие арифметические вычисления» (Tables for Facilitating Arithmetical Calculations). Она содержала указания на то, как проще считать, раскладывая числа на степени двойки (Binary Table) и степени тройки (Ternary Table). От таблиц Фоулеру удалось перейти к машине. Материальные возможности и общественное положение Фоулера были намного скромнее, чем у его соотечественников — Бэббиджа и Августы Лавлейс, урожденной Байрон. Это наложило заметный отпечаток на его изобретение. В мае 1840 года он представил свое детище в Королевский колледж в Лондоне, в сопроводительной записке значилось: «Машина построена мною, собственными руками, МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 1/2 ТРОИЧНАЯ МАШИНА В XIX ВЕКЕ ОКТЯБРЬ 2004 из дерева, она имеет шесть футов в длину, один в глубину и три в высоту. Если бы ее можно было изготовить из металла, то она оказалась бы не больше компактной пишущей машины». Далее Фоулер написал: «Основная особенность машины заключается в том, что вместо обычной десятичной системы счисления используется запись триадами (имеется в виду троичная система счисления). Так, 1 и 2 представляются как обычно, 1 и 2, а 3 записывается как 10, для 4 служит запись 11, 5 — 12 и т.д.». Если сравнивать «архитектуру» машины Фоулера с другими, то по своему замыслу деревянная машина заметно превосходила не только механические аналоги, но и первую электронную машину ENIAC Эккерта-Мочли. Компьютер ENIAC был на самом деле электронной версией «Паскалины», созданной на 300 лет раньше, в нем компоненты, собранные из вакуумных ламп, заменили шестеренчатые конструкции Блеза Паскаля. И уж, конечно, машина Фоулера была намного проще машин Бэббиджа. Некоторые специалисты вообще критически относятся к деятельности Бэббиджа. Такого мнения придерживается Морис Уилкс, создававший в первые послевоенные годы компьютер EDSAC, который претендует на то, чтобы быть первым устройством с хранимой программой. Уилкс и его единомышленники считают, что неудачи Бэббиджа создали ошибочное представление у власть имущих о бесперспективности механизации вычислений, тем самым затормозили прогресс и оставили без финансирования альтернативные решения, в частности работу Фоулера. Сын Фоулера, ставший его биографом, писал: «Представители правительства, неудовлетворенные работой Бэббиджа, отказались даже осмотреть машину отца, они аргументировали свое отношение тем, что уже безрезультатно затратили на того большие средства». Рис.1. В мае 1840 года Томас Фоулер представил свое детище в Королевский колледж в Лондоне, в сопроводительной записке значилось: «Машина построена мною, собственными руками, из дерева, она имеет шесть футов в длину и три в высоту» МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 2/2 ЧЕЛОВЕК, ПРИДУМАВШИЙ ДЫРКУ В КУСКЕ КАРТОНА ОКТЯБРЬ 2004 Леонид Черняк Человек, придумавший дырку в куске картона Источник: Computerworld, #07/2004 В високосный 1860 год 29 февраля родился изобретатель электрического табулятора Герман Холлерит. Его самая замечательная идея заключается в том, что отверстие в куске картона может нести 1 бит информации Рис.1. Герман Холлерит за работой. С этого табулятора начался более чем столетний период жизни перфокарт в качестве носителя информации Скромное, размером с небольшой письменный стол устройство, один из экспонатов Компьютерного музея в Сан-Хосе, внешне ничем не выдает свою историческую важность. А ведь это табулятор Германа Холлерита, первый прибор для массовой обработки данных и предок всех продуктов, выпускаемых корпорацией IBM. Табулятор был создан для обработки результатов переписи населения, проведенной в США в 1890 году, а стимулом к его созданию было то обстоятельство, что на обработку результатов предыдущей переписи, проведенной десятью годами раньше, потребовалось целых восемь лет. В итоге в условиях массовой иммиграции сведения успевали устареть раньше, чем они становились доступными. Создав табулятор и технологию обработки данных, Холлериту удалось решить эту проблему, заработать почет и славу выдающегося изобретателя. Начало его истории вполне стандартное. Сын эмигрантов, покинувших Германию после революции 1848 года, Холлерит получил домашнее образование, но это не помешало ему поступить в 1879 году в Колумбийскую горную школу и закончить ее с отличием. В 1880 году судьба привела его в Бюро по переписи населения, здесь он познакомился с Джоном Биллингом, который на основании предыдущего опыта обработки переписных листов подал ему идею механизации этого процесса. И разумеется, как и во многих подобных случаях, в своих воспоминаниях Холлерит и Биллинг существенно расходятся, первый утверждает, что старшим коллегой была высказана абстрактная мысль о необходимости механизации, а второй уверяет, что он указал на перспективность перфокарт Жокарда, использовавшихся в текстильном производстве. Этот вид карт применялся для управления, а не для накопления и обработки данных. Идея превратить карты в носитель данных пришла Холлериту, когда он увидел кондуктора с компостером. В 1882-м Холлерит поступил на службу в качестве преподавателя в Массачусетсский технологический институт, где создал основы конструкции. Он искал наилучший тип носителя, выбирая между перфокартой или перфолентой, способы прокалывания отверстий и считывания информации посредством контактов, состоящих из металлических щеток. В табуляторе замыкания контактов превращались в электрические импульсы, передаваемые в электромеханические счетчики, снабженные стрелочными индикаторами. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 1/2 ЧЕЛОВЕК, ПРИДУМАВШИЙ ДЫРКУ В КУСКЕ КАРТОНА ОКТЯБРЬ 2004 Добившись результатов, Холлерит получил свой первый патент (всего у него их более 30). В 1890-м он выиграл конкурс на лучшее средство механизации, данные удалось обработать за три месяца вместо ожидаемых двух лет, сэкономив более 5 млн. долл. Неудивительно, что после такого успеха Холлерит покинул академический мир — и для него началась новая жизнь, он стал предпринимателем. Первые табуляторы изготавливали компания Pratt and Whitney, известная ныне своими авиационными двигателями, и Western Electric Company. Они использовались для обработки статистических данных во многих странах мира, в том числе и в России. В 1896 году Холлерит основал собственную компанию Tabulating Machine Company, которая производила машины со встроенными средствами автоматизации сортировки в расчете на очередную перепись 1900 года. Но эти машины оказались слишком дорогими, и некий Джеймс Пауэрс, обойдя патентные сложности, смог предложить собственное более дешевое решение, которое и было использовано в ходе следующей переписи. В 1911 году в результате слияния компаний Computing Scale и International Time Recording была образована Computer Tabulating Recording, до 1921 года ее возглавлял сам Холлерит, он передал свой пост Томасу Уотсону, под началом которого в 1924 году произошло переименование CTR в International Business Machines Corporation. МИР ПК – ДИСК. 2004. № 10. КУНСТКАМЕРА 2/2