Введение
В конце XIX века машина для суммирования информации, хранящейся на перфокартах.
Табличная машина была электромеханическим устройством, разработанным для облегчения суммирования информации, хранящейся на перфокартах. Изобретенная Германом Холлеритом, машина была создана для помощи в обработке данных переписи населения США 1890 года. Более поздние модели широко использовались в бизнес-приложениях, таких как бухгалтерский учет и контроль запасов. Она положила начало целому классу машин, известных как оборудование для обработки унифицированных записей, и индустрии обработки данных. Газета New York World в 1931 году использовала термин "Супервычисления" для обозначения большого, изготовленного на заказ табулятора, который IBM создала для Колумбийского университета.
Перепись 1890 года
Перепись 1880 года потребовала восемь лет на обработку. Поскольку Конституция США предписывает проведение переписи населения каждые десять лет для распределения мест в Конгрессе и прямых налогов между штатами, потребовалось сочетание увеличения штата сотрудников и внедрения более быстрых систем регистрации данных. В конце 1880-х годов Герман Холлерит, вдохновленный тем, как кондукторы использовали отверстия, пробитые в разных позициях на железнодорожных билетах для записи данных о пассажирах, таких как пол и приблизительный возраст, изобрел способ записи данных на машиночитаемом носителе. Ранее машиночитаемые носители использовались для списков инструкций (а не данных) для управления программируемыми машинами, такими как жаккардовские ткацкие станки. "После некоторых первоначальных испытаний с бумажной лентой он остановился на перфокартах". Холлерит использовал перфокарты с круглыми отверстиями, 12 строками и 24 столбцами. Карты имели размеры 3 1/4 дюйма на 6 5/8 дюйма и могли использоваться для подсчета, сортировки и включения звонка, чтобы оператор знал, что карта была прочитана. Табулятор имел 40 счетчика, каждый с циферблатом, разделенным на 100 делений, с двумя указательными стрелками: одна из которых перемещалась на единицу с каждым импульсом счета, а другая – на единицу каждый раз, когда другая стрелка совершала полный оборот. Такая конструкция позволяла вести счет до 9999. Во время работы табулятора счетчики могли быть назначены на конкретное отверстие или, с помощью релейной логики, на комбинацию отверстий, например, для подсчета супружеских пар. Если карту нужно было отсортировать, крышка отсека сортировочного ящика открывалась для ее хранения, выбор отсека зависел от данных на карте. Метод Холлерита был использован для переписи 1890 года. Клерки использовали перфораторы для пробивания отверстий в картах, вводя возраст, место жительства, пол и другую информацию из анкет. Было сгенерировано около 100 миллионов карт, и "карты проходили через машины всего четыре раза за время всей операции". По данным Бюро переписи населения США, результаты переписи были "завершены за несколько месяцев до запланированного срока и значительно ниже сметы".
После переписи 1890 года
Преимущества технологии сразу стали очевидны для бухгалтерского учета и отслеживания запасов. Холлерит основал собственную компанию под названием The Hollerith Electric Tabulating System, специализирующуюся на оборудовании для обработки данных с помощью перфокарт. В 1896 году он учредил компанию Tabulating Machine Company. В том же году он представил интегральный табулятор Холлерита, который мог складывать числа, закодированные на перфокартах, а не только подсчитывать количество отверстий. Перфокарты по-прежнему считывались вручную с использованием штифтов и ртутного считывателя. В 1900 году автоматический табулятор подачи Hollerith был использован при переписи населения США в этом году. В 1906 году в модель Type 1 была включена панель управления. В 1911 году четыре корпорации, включая фирму Холлерита, были объединены (путем приобретения акций) в пятую компанию – Computing Tabulating Recording Company (CTR). Компания Powers Accounting Machine Company была образована в том же году и, как и Холлерит, использовала машины, впервые разработанные в Бюро переписи населения. В 1919 году был разработан первый прототип табулятора Bull. Табуляторы, способные печатать, и со съемными панелями управления появились в 1920-х годах. В 1924 году CTR была переименована в International Business Machines (IBM). В 1927 году Remington Rand приобрела компанию Powers Accounting Machine Company. В 1933 году The Tabulating Machine Company была поглощена IBM. Эти компании продолжали разрабатывать более быстрые и совершенные табуляторы, кульминацией чего стали такие модели, как IBM 407 (1949) и Remington Rand 409 (1952). Табуляторы продолжали использоваться даже после появления коммерческих электронных компьютеров в 1950-х годах. Многие приложения, использующие табуляторы для обработки отдельных записей, были перенесены на компьютеры, такие как IBM 1401. Для облегчения этой миграции были созданы два языка программирования – FARGO и RPG. Поскольку панели управления табуляторами были основаны на машинном цикле, языки FARGO и RPG эмулировали понятие машинного цикла, а учебные материалы демонстрировали взаимосвязь между панелью управления и листами кодирования языка программирования.
Операция
В своей основной форме табулирующая машина считывала по одной карте за раз, печатала части (поля) карты на непрерывной бумаге, возможно, в измененном порядке, и прибавляла одно или несколько чисел, пробитых на карте, к одному или нескольким счетчикам, называемым аккумуляторами. На ранних моделях показания регистров аккумуляторов снимались вручную после обработки стопки карт для получения итогов. Более поздние модели могли печатать итоги напрямую. Карты с определенной перфорацией могли рассматриваться как основные карты, вызывающие иное поведение. Например, основные карты клиентов могли объединяться с отсортированными картами, содержащими информацию об отдельных приобретенных товарах. При считывании табулирующей машиной для формирования счетов-фактур адрес для выставления счета и номер клиента печатались с основной карты, а затем перечислялись приобретенные товары и их цена. При обнаружении следующей основной карты общая стоимость печаталась с аккумулятора, а страница переносилась в начало следующей, обычно с использованием ленты управления каретки. Путем последовательных этапов или циклов обработки перфокарт можно было выполнять довольно сложные вычисления, при наличии достаточного количества оборудования. (В современных терминах обработки данных каждый этап можно представить как SQL-запрос: SELECT (выбор столбцов), затем WHERE (фильтр карт, или "строк"), затем, возможно, GROUP BY для вычисления итогов и количества, затем SORT BY; и затем, при необходимости, результаты можно было снова передавать в другой набор циклов SELECT и WHERE.) Оператору необходимо было извлекать, загружать и хранить различные стопки карт на каждом этапе.