Как считали древние люди

Где математика, там жизнь (и наоборот). Но как быть, если у тебя под рукой нет калькулятора, потому что его ещё не изобрели? А мы сейчас расскажем! Но сперва договоримся об определениях

Где начинается компьютерная эра

Компьютерную эру в истории человечества отсчитывают с середины 1940-х годов.

Историки спорят о том, что считать первым компьютером: в числе кандидатов называют не только американский ENIAC (1945), но и немецкий Z3 Конрада Цузе (1941) и некоторые другие разработки.

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

Если исключить исполнение произвольных программ, под такое описание подойдут специализированные вычислители, пригодные для решения только одного класса задач. Например, британские машины Bombe (1940) и Colossus (1943), которые служили для дешифрования немецких криптограмм. Справедливости ради стоит отметить, что ограниченные возможности программирования у «Колосса» всё же были.

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

Куда более известны другие аналоговые приспособления — логарифмические линейки. С помощью таких линеек можно получать только приблизительные результаты (обычно 3–4 значащие цифры), но для множества практических задач большего и не требовалось. Поэтому вплоть до второй половины XX века логарифмические линейки были неизменным атрибутом инженеров, конструкторов и навигаторов.

Рассказывали о логарифмической линейке в специальной статье 8БИТ, инджой!

Логарифмическая линейкаЛогарифмическая линейка

В основе работы таких линеек — возможность заменить умножение и деление чисел сложением и вычитанием их логарифмов. Для этого нужно перемещать движок и бегунок (визир) линейки, подводя их к нужным рискам на её шкалах.

Точность вычислений на логарифмической линейке определяется только её размером и качеством изготовления. В этом основное отличие аналоговой техники от дискретной, в которой вычисление всегда можно произвести с точностью до нужного количества значащих цифр.

Пятиминутка определений. Дискретный — прерывистый, работающий с отдельными значениями/состояниями. Антоним слова «аналоговый». Все современные цифровые устройства также корректно называть дискретными.

В конце XIX века появились аналоговые машины для предсказания приливов, которые при помощи колёс разного диаметра и системы тросов учитывали влияние десятка факторов (самые важные — гравитация Луны и Солнца).

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

Внешне такая машина напоминала гигантский настольный футбол. Программист выигрывает в нём не всегдаВнешне такая машина напоминала гигантский настольный футбол. Программист выигрывает в нём не всегда

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

Наконец, если убрать из определения слово «автоматические», мы получим огромное многообразие дискретных вычислительных устройств докомпьютерной эпохи, которые не умели работать по программе — только выполнять отдельные действия. В их числе «считающие часы» Вильгельма Шиккарда, «паскалина», «машины Тома», «самосчёты» Виктора Буняковского, «математическая граната» и прочие арифмометры всех видов, форм и расцветок.

Арифмометр Шарля Тома де Кольмара — первый коммерчески успешный (1840‑е). Каков дизайн, а!Арифмометр Шарля Тома де Кольмара — первый коммерчески успешный (1840‑е). Каков дизайн, а!

Одну из самых практичных и распространённых конструкций арифмометра предложил шведско-российский изобретатель Вильгодт Теофил Однер. Многим известен советский вариант арифмометра Однера — «Феликс». Эти машины позволяли выполнять четыре основные арифметические операции — сложение, вычитание, умножение и деление, а при определённой сноровке — и извлекать квадратный корень, но самим ходом вычисления всегда управлял человек.

Инструкция к арифмометру «Феликс» рекомендовала использовать его только для умножения и деления, так как более простые операции можно было выполнить и на счётах.

Типичный «вычислительный центр» 1940-х годов представлял собой помещение со множеством небольших столиков, на которых люди-расчётчики (как правило, женщины) с утра до вечера выполняли однотипные операции, нажимая на кнопки и вращая ручки механических счётных машинок.

Иронично, что в англоговорящих странах сотрудников таких учреждений называли словом computer («вычислитель»)Иронично, что в англоговорящих странах сотрудников таких учреждений называли словом computer («вычислитель»)

В послевоенные годы в СССР попало множество трофейных немецких арифмометров с электрическим приводом. Это даже нашло отражение в культуре. Например, у братьев Стругацких:

В Управлении пьют кефир, считают на сломанных «Мерседесах», издают странные распоряжения... («Улитка на склоне»)

...слышно было, как пишущие машинки вяло и неубедительно отвечают на энергичные напористые очереди бухгалтерских «Рейнметаллов». («Сказка о Тройке»)

Речь, конечно, не об автомобилях и не о пулемётах, а о вычислительных машинах производства соответствующих фирм.

Не только арифметика

А как же перфокарты? Так вот же они.

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

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

Ткацкий станок Жаккара, управляемый перфокартами, начало 1800-х. Дизайн Дизайныч!Ткацкий станок Жаккара, управляемый перфокартами, начало 1800-х. Дизайн Дизайныч!

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

Перфокарта ХоллеритаПерфокарта Холлерита

Первопроходцем здесь был Герман Холлерит, а основанная им компания после ряда слияний и переименований стала известна как IBM. Вообще же первым использовать перфокарты для анализа и поиска информации ещё в 1832 году предложил российский чиновник Семён Корсаков. К сожалению, тогда его идеи не встретили поддержки.

Один из самых старых сохранившихся табуляторов оригинальной конструкции Холлерита хранится в Политехническом музее в Москве. Он использовался для проведения первой всеобщей переписи населения Российской империи в 1897 году.

Иллюстрация из журнала Scientific American: радостная операторка табулятора Холлерита считает население. Справа в коробках не пиццы, а листы переписиИллюстрация из журнала Scientific American: радостная операторка табулятора Холлерита считает население. Справа в коробках не пиццы, а листы переписи

Табуляторы IBM также упоминаются в литературе. Например, в романе «Уловка-22» Джозефа Хеллера из-за ошибки машины рядовой с экзотическим именем Майор Майор автоматически получил звание майора.

А вот основным инструментом торговли до массового распространения микрокалькуляторов были обычные счёты (а также их национальные разновидности — суаньпань, соробан и другие). Куда реже применялись аддиаторы («счислители Куммера»). При отсутствии же любых приспособлений пользовались традиционным школьным умножением и делением в столбик либо просто считали в уме.

Немного стимпанка

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

Самые ранние компьютеры вроде Z3 и Harvard Mark I были ещё не электронными, а электромеханическими. Более того, «Аналитическая машина», которую в XIX веке спроектировал британец Чарльз Бэббидж, и вовсе должна была быть чисто механической и приводиться в действие паровым двигателем. При этом, будь она построена, её вполне можно было бы считать компьютером в рамках нашего определения.

Небольшая часть «Аналитической машины», которую изобретатель успел завершить при жизниНебольшая часть «Аналитической машины», которую изобретатель успел завершить при жизни

Предполагаемый полный вид машиныПредполагаемый полный вид машины

То, что компьютер не появился в викторианской Англии, связано не только с ограничениями технологий того времени. В 1840-х годах человечество попросту не нуждалось в таком объёме расчётов, который могли обеспечить автоматические вычислительные машины. Только в XX веке с его атомным проектом и космической гонкой люди поняли, что им не обойтись без приборов, которые смогут расширить возможности их интеллекта.

На этом мы прикроем историческую лавочку и перейдём к другой интереснейшей теме — поговорим о том, почему компьютеры работают в двоичной системе счисления. Поехали!