Harvard Mark I , или автоматический калькулятор с последовательным управлением IBM ( ASCC ), был одним из первых электромеханических компьютеров общего назначения, использовавшихся в военных целях во время последней части Второй мировой войны .
Одна из первых программ, запущенных на Mark I, была инициирована 29 марта 1944 года [1] Джоном фон Нейманом . В то время фон Нейман работал над Манхэттенским проектом , и ему нужно было определить, является ли имплозия жизнеспособным выбором для взрыва атомной бомбы, которая будет использована годом позже. Марк I также рассчитывал и печатал математические таблицы, что было первоначальной целью британского изобретателя Чарльза Бэббиджа для его « аналитической машины » в 1837 году.
По словам Эдмунда Беркли , операторы Mark I часто называли машину «Бесси, двигатель Бесселя», в честь функций Бесселя . [2]
Mark I был разобран в 1959 году; часть его была передана IBM, часть досталась Смитсоновскому институту , а часть вошла в Гарвардскую коллекцию исторических научных инструментов . На протяжении десятилетий часть Гарварда выставлялась в вестибюле вычислительной лаборатории Эйкена. Примерно в 1997 году его перенесли в Гарвардский научный центр . В 2021 году его снова перенесли в вестибюль нового научно-технического комплекса Гарварда в Олстоне, штат Массачусетс . [3]
Первоначальная концепция была представлена IBM Говардом Эйкеном в ноябре 1937 года. [4] После технико-экономического обоснования, проведенного инженерами IBM, председатель компании Томас Уотсон-старший лично одобрил проект и его финансирование в феврале 1939 года.
Говард Эйкен начал искать компанию для разработки и производства своего калькулятора в начале 1937 года. После двух отказов [5] ему показали демонстрационный набор, который сын Чарльза Бэббиджа подарил Гарвардскому университету 70 лет назад. Это побудило его изучить Бэббиджа и добавить в свое предложение ссылки на аналитическую машину ; Получившаяся машина «почти полностью реализовала принципы аналитической машины Бэббиджа, добавив при этом важные новые функции». [6]
ASCC был разработан и изготовлен IBM на заводе в Эндикотте и отправлен в Гарвард в феврале 1944 года. В мае он начал расчеты для Корабельного управления ВМС США и был официально представлен университету 7 августа 1944 года. [7]
Хотя это и не был первый работающий компьютер , машина была первой, которая автоматизировала выполнение сложных вычислений, что сделало ее значительным шагом вперед в области вычислений. [8]
ASCC был построен из переключателей , реле , вращающихся валов и муфт . В нем использовалось 765 000 электромеханических компонентов и сотни миль проводов, объем которых составлял 816 кубических футов (23 м 3 ), длину 51 фут (16 м), высоту 8 футов (2,4 м) и 2 фута (0,61 м). глубокий. Он весил около 9 445 фунтов (4,7 коротких тонны; 4,3 т). [9] Основные вычислительные блоки должны были быть синхронизированы и приводиться в действие механически, поэтому они приводились в действие приводным валом длиной 50 футов (15 м) , соединенным с электродвигателем мощностью 5 лошадиных сил (3,7 кВт), который служил основным источником энергии и системные часы . Из архивов IBM:
Калькулятор с автоматическим управлением последовательностью (Harvard Mark I) был первой операционной машиной, которая могла автоматически выполнять длинные вычисления. Проект, задуманный доктором Говардом Эйкеном из Гарвардского университета, Mark I был построен инженерами IBM в Эндикотте, штат Нью-Йорк. Стальная рама длиной 51 фут и высотой 8 футов удерживала калькулятор, который состоял из взаимосвязанной панели небольших шестеренок, счетчиков и переключателей. и схемы управления, всего лишь несколько дюймов в глубину. ASCC использовала 500 миль (800 км) проводов с тремя миллионами соединений, 3500 многополюсных реле с 35 000 контактов, 2225 счетчиков, 1464 десятиполюсных переключателя и ряды из 72 арифмометров, каждый с 23 значащими числами. Это был крупнейший в отрасли электромеханический калькулятор. [10]
Корпус для Mark I был разработан футуристическим американским промышленным дизайнером Норманом Белом Геддесом за счет IBM. Эйкена раздражало то, что затраты (50 000 долларов или больше, по словам Грейс Хоппер ) не были использованы для создания дополнительного компьютерного оборудования. [11]
Mark I имел 60 комплектов по 24 переключателя для ручного ввода данных и мог хранить 72 числа длиной 23 десятичных цифры каждое. [12] Он мог выполнять 3 сложения или вычитания в секунду. Умножение заняло 6 секунд, деление — 15,3 секунды, а логарифм или тригонометрическая функция — более одной минуты. [13]
Марк I читал свои инструкции с 24-канальной перфоленты . Он выполнил текущую инструкцию, а затем прочитал следующую. Отдельная лента могла содержать числа для ввода, но форматы лент не были взаимозаменяемыми. Инструкции не могли быть выполнены из регистров хранения. Поскольку инструкции не хранились в рабочей памяти, широко распространено мнение, что Гарвардская модель I стала источником Гарвардской архитектуры . Однако это оспаривается в книге «Миф о Гарвардской архитектуре» , опубликованной в IEEE Annals of History of Computing [14] , где показано, что термин «гарвардская архитектура» не входил в употребление до 1970-х годов (в контексте микроконтроллеров) и был только ретроспективно применялся к гарвардским машинам, и что этот термин мог быть применен только к Mark III и IV , но не к Mark I или II .
Механизм главной последовательности был однонаправленным. Это означало, что сложные программы должны были быть физически длинными. Программный цикл выполнялся путем развертывания цикла или путем соединения конца бумажной ленты, содержащей программу, с началом ленты (буквально создавая цикл ). Сначала условное ветвление в Mark I выполнялось вручную. Более поздние модификации 1946 года представили автоматическое ветвление программы (путем вызова подпрограммы ). [15] [16] [17] [18] [19] Первыми программистами Mark I были пионеры вычислительной техники Ричард Милтон Блох , Роберт Кэмпбелл и Грейс Хоппер . [20] Также существовала небольшая техническая группа, задачей которой было фактическое управление машиной; некоторые из них были сотрудниками IBM до того, как им пришлось пойти в ВМФ для работы над машиной. [21] Эта техническая группа не была проинформирована об общей цели своей работы во время пребывания в Гарварде.
24 канала входной ленты были разделены на три поля по восемь каналов. Каждому месту хранения, каждому набору переключателей и регистрам, связанным с входными, выходными и арифметическими устройствами, был присвоен уникальный идентификационный индексный номер. Эти числа были представлены в двоичном виде на контрольной ленте. Первое поле представляло собой двоичный индекс результата операции, второе — исходные данные для операции, а третье поле — код выполняемой операции . [12]
В 1928 году Л. Дж. Комри был первым, кто применил IBM «перфокарточное оборудование для научного использования: вычисление астрономических таблиц методом конечных разностей, как это задумал Бэббидж 100 лет назад для своей разностной машины». [22] Вскоре после этого IBM начала модифицировать свои табуляторы, чтобы облегчить такого рода вычисления. Одним из таких табуляторов, построенным в 1931 году, был табулятор различий Колумбии. [23]
У Джона фон Неймана в Лос-Аламосе была группа, которая использовала «модифицированные перфокарточные машины IBM» [24] для определения последствий взрыва. В марте 1944 года он предложил решить некоторые задачи, связанные со взрывом Mark I, а в 1944 году он прибыл с двумя математиками, чтобы написать программу моделирования для изучения взрыва первой атомной бомбы . [1]
Лос-Аламосская группа завершила свою работу в гораздо более короткие сроки, чем Кембриджская. Однако машина с перфокартами вычисляла значения с точностью до шести десятичных знаков, тогда как Mark I вычисляла значения с точностью до восемнадцати десятичных знаков . Кроме того, Марк I интегрировал уравнение в частных производных с гораздо меньшим размером интервала [или меньшей сеткой] и таким образом... достиг гораздо большей точности . [24]
«Фон Нейман присоединился к Манхэттенскому проекту в 1943 году, работая над огромным количеством расчетов, необходимых для создания атомной бомбы. Он показал, что имплозионная конструкция, которая позже будет использоваться в бомбах «Тринити» и «Толстяк», вероятно, была быстрее и эффективнее. чем конструкция пистолета». [25]
Эйкен опубликовал пресс-релиз, в котором объявил себя единственным «изобретателем» Mark I. Джеймс В. Брайс был единственным упомянутым человеком из IBM, хотя несколько инженеров IBM, включая Клера Лейка и Фрэнка Гамильтона, помогали создавать различные элементы. Председатель IBM Томас Дж. Уотсон был в ярости и лишь неохотно присутствовал на церемонии открытия 7 августа 1944 года. [26] [ нужна страница ] [27] Эйкен, в свою очередь, решил создавать новые машины без помощи IBM, и появился ASCC. широко известный как «Гарвард Марк I». IBM продолжила создание своего электронного калькулятора выборочной последовательности (SSEC), чтобы протестировать новую технологию и обеспечить большую рекламу усилий компании. [26] [ нужна страница ]
За Mark I последовали Harvard Mark II (1947 или 1948 г.), Mark III/ADEC (сентябрь 1949 г.) и Harvard Mark IV (1952 г.) – все это работа Эйкена. Mark II был усовершенствованием Mark I, хотя он по-прежнему был основан на электромеханических реле . В Mark III использовались в основном электронные компоненты — электронные лампы и кристаллические диоды , но также были и механические компоненты: вращающиеся магнитные барабаны для хранения, а также реле для передачи данных между барабанами. Mark IV был полностью электронным, остальные механические компоненты были заменены памятью на магнитных сердечниках . Mark II и Mark III были доставлены на базу ВМС США в Дальгрене, штат Вирджиния . Mark IV был построен для ВВС США , но остался в Гарварде. [ нужна цитата ]
Mark I был разобран в 1959 году, и его части были выставлены в Научном центре как часть Гарвардской коллекции исторических научных инструментов . В июле 2021 года он был перенесен в новый научно-технический комплекс в Олстоне. [28] Другие части исходной машины были гораздо раньше переданы IBM и Смитсоновскому институту . [29]