Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Глава 1 _2015

.pdf
Скачиваний:
18
Добавлен:
29.03.2016
Размер:
887.69 Кб
Скачать

51

В отличие от машин Цузе, американский проект MARK-I разрабатывался в тепличных условиях, с истинно американским размахом, он был широко разрекламирован в печати. По этой причине долгое время историки науки отдавали приоритет именно этой разработке, хотя она была создана на три года позже Z-3.

Проект MARK-I

Идея машины возникла в 1937 году у со-

трудника Гарвардского университета Говар-

 

да Айкена (Aiken, Howard; 1900—1973) в ходе работы над докторской диссертацией. Он предложил, опираясь на идеи Бэббиджа, построить на современной технической базе из стандартных деталей табуляторов, выпускаемых фирмой IBM, универсальную про- граммно-управляемую машину для сложных научных вычислений.

В 1939 г. Айкен обратился за поддержкой к Томасу Уотсону, президенту IBM, которому в то время было уже 65 лет, но отличавшемуся отменной интуицией и деловой хваткой. Уотсон решил, что, реализовав этот проект, фирма IBM сможет оказать существенную помощь своей стране в начавшейся мировой войне. Поэтому, посоветовавшись с командованием Военно-Морским Флотом, он проект одобрил, выделил на расходы 500 000 долларов, работа закипела и через пять лет, в 1944 году машина была готова.

Заключенная, по настоянию Уотсона, в элегантный корпус из стекла и нержавеющей стали, машина имела в длину 17 м, в высоту 2.5 м, весила 5 т, содержала около 750 тыс. деталей, соединенных проводами общей протяженностью около 800 км.

«Мечта Бэббиджа претворилась в жизнь. Если бы он жил на 75 лет позже, то я бы остался без работы», — так оценил Айкен создание MARK-I.

Как и аналитическая ма-

 

шина Бэббиджа, MARK-I ра-

 

ботала в десятичной системе

Компьютер MARK-I ((1944 г.).

52

счисления на механических сумматорах, однако параметры ее были гораздо скомнее: точность 23 разряда плюс знак, емкость памяти 132 слова. Зато арифметическое устройство было значительно сложнее, наряду с четырьмя действиями арифметики выполнялись операции вычисления синуса, логарифма, антилогарифма. Сложение выполнялось за 0.3 с, умножение и деление за 5.7 и 15.3 с соответственно. Для ввода констант имелся набор из 420 переключателей, а управление осуществлялось с помощью бумажной перфоленты.

Законченная машина была перенесена в Гарвардский университет, где она под наблюдением Эйкена стала решать задачи расче- та артиллерийских таблиц для ВМФ. Однако вскоре между Айкеном и Уотсоном произошла крупная ссора, так как Айкен проявил черную неблагодарность и во время публичной презентации машины почти не упомянул о роли IBM в этом проекте. В отместку Уотсон решил утереть нос Айкену и приказал своим сотрудником сделать новый компьютер, который бы по всем статьям превзошел MARK- I. Что из этого вышло, мы узнаем позже.

Грейс Хоппер

Машина MARK-I имела полноценное программ-

 

ное управление, следовательно, для нее нужно

было разрабатывать программы. Программным обеспечением этого

 

колосса в военное время зани-

 

малась команда из трех офице-

 

ров Военно-морского флота

 

США: двое мужчин (Роберт

 

Кемпбелл и Ричард Блок) во

 

главе с младшим лейтенантом

 

Грейс Хоппер (Hopper, Grace

 

Murray; 1906—1992).

 

Случилось так, что через

 

сто лет после Ады Лавлейс вто-

 

рым в истории программистом

 

стала опять женщина. Получив

 

математическое образование и

Грейс Мюррей Хоппер

степень доктора математики,

(1906-1992)

Грейс Хоппер в годы войны по-

53

ступила на военную службу в ВМФ США и была напралена в Гарвардский университет для обслуживания самого первого компьютера. Грейс Хоппер внесла очень большой вклад в становление программирования, Она разрабатывала программное обеспечение для первой серийной ЭВМ UNIVAC, принимала активное участие в разработке первых языков и систем автоматизации программирования. В чине контр-адмирала курировала разработку программ для воен- но-морского флота.

Между прочим, с легкой руки Хоппер в практику программирования вошло слово «debugging» (отладка). Дело было так. Однажды жарким, влажным летним днем таинственная неисправность заставила замолчать громыхающий компьютер MARK-I. После тщательно проведенного исследования программисты установили, что контакты одного из реле были заблокированы останками мотылька, невесть как проникшего через лабиринт электрических цепей компьютера. С предельной осторожностью мотылька извлекли пинцетом, а это событие вместе с насекомым зафиксировали в журнале, который по распоряжению ВМС США педантично заполнялся на протяжении всей работы компьютера. Позднее Хоппер вспоминала: «Когда к нам зашел офицер, чтобы узнать, чем мы занимаемся, мы ответили, что очисткой компьютера от насекомых (debugging)". Термин этот прижился и стал использоваться для обозначения поиска ошибок в ком-

Запись в рабочем журнале MARK-1: "Реле номер 70 панель F. (Мотылек) в реле. Первый достоверный случай обнаружения насекомого".

54

пьютере, особенно в их программном обеспечении. Слово «bug» в английском языке имеет несколько значений в том числе и «насекомое» и «техническая неисправность».

Релейные машины

Параллельно с гарвардским проектом

Джорджа Стибица

MARK, работы по созданию сложных ре-

лейных вычислительных устройств велись

 

в Нью-Йорке, в знаменитой своими научными достижениями Bell Laboratiries, где ими руководил математик Джордж Стибиц (Stibitz, George Robert; 1904 — 1995). Простейший двоичный сумматор Стибиц построил еще в 1937 году, а в 1939 году была создана конструкция из 400 телефонных реле, предназначенная для выполнения операций над комплексными числами. Этот вычислитель, названный Bell-I, вошел в историю информатики благодаря эксперименту по телеобработке, проведенному в 1940 году, о чем мы более подробно расскажем в главе 4.

Впоследствии Стибиц построил ряд релейных вычислительных устройств, постоянно усложняя их конструкцию и повышая универсальность. В специализированной машине Bell-II (1943 г.) решались задачи интерполяции и гармонического анализа, причем здесь впервые были применены схемы для автоматического обнаружения ошибок. В 1946 — 1947 годах была построена самая мощная машина этого семейства Bell-V. Она содержала 9 000 реле и весила 10 тонн. Операции выполнялись с 7-разрядными десятичными чмслами с плавающей запятой, сложение, умножение и деление выполнялись соответственно за 0,3, 1,0 и 2,2 с. Хотя по скорости вычислений эта электромеханическая машина не могла сравниться с уже работающей в то время электронной ENIAC, однако в ней присутствовали технические решения, опередившие свое время и оказавшие заметное влияние на архитектуру будущих ЭВМ. К ним относятся арифметика с плавающей запятой и мультипроцессорная, пользуясь современной терминологией, организация.

Попытки конструровать релейные вычислительные машины продолжались вплоть до 50-х годов. После успешного дебюта MARK- I Говард Айкен в 1947 построил более мощную чисто релейную (13

55

тыс. реле) модель MARK-II, в СССР уже в 1957 г. была сконструирована надежная релейная вычислительная машина РВМ-I . Однако эти достижения бледнели на фоне первых работающих элекктронных компьютеров. Электромеханическая эра безвозвратно ушла, наступил век электроники.

1.9. Выводы

1.В доэлектронной истории вычмслительной техники можно выделить три эпохи:

домеханическая (до XVII в.),

механическая (XVII в. - первая половина XIX в.),

электромеханическая (вторая половина XIX в. - первая половина XX в.),

2.Простейшими вычислительными устройствами домеханической эпохи были абак и счеты. По принципу действия они являются цифровыми (дискретными), так как оперируют с цифровой записью числа.

3.Наряду с цифровыми вычислительными устройствами существуют аналоговые, оперирующие с физическими величинами, представляющими значение числа. Простейшим аналоговым вычислителем является логарифмическая линейка, изобретенная в первой половине XVII в. В дальнейшем аналоговые вычислительные машины развивались вместе с цифровыми, они прошли все эпохи вплоть до электронной, однако в 70-х годах были вытеснены дешевыми цифровыми компьютерами.

4.Первая цифровая механическая вычислительная машина — «Паскалина» — была изобретена французским ученым и изобретателем Блезом Паскалем в 1642 году. Она могла выполнять операции сложения и вычитания.

5.Машина Паскаля была усовершенствована великим немецким

56

ученым Готфридом Лейбницем в 1673 году. Он ввел в конструкцию ступенчатый «валик Лейбница» и подвижную каретку. В результате получился прообраз арифмометра, выполняющего четыре арифметических жействия. Арифмометры постоянно совершенствовались на протяжении XVIII и XIX в., они выпускались промышленностью в массовых количествах и дожили до второй половины XX в. Впоследствии их заменили электромеханические, а затем электронные калькуляторы.

6.Принцип механического программного управления был впервые реализован французским механиком Жаккаром, который в 1804 году построил ткацкий станок, управляемый перфокартами. Перфокарта Жаккара была впоследствии использована Бэббиджем и Холлеритом для управления вычислительными машинами.

7.Программно-управляемая механическая вычислительная машина была изобретена английским ученым Чарльзом Бэббиджем в его проекте аналитической машины, первый набросок которой появился в 1834 году. Идеи Бэббиджа на столетие опередили свое время, структура аналитической машины соответствует всем современным представлениям об архитектуре компьютера. Из-за технологических и организационных трудностей аналитическая машина не была построена.

0. Первой в истории программисткой была ученица Бэббиджа Ада Лавлейс (урожденная леди Байрон). Для непостроенной еще машины она разработала программу, применив в ней все основные принципы программирования (условная передача управления, циклы, рабочие переменные и т. д.).

9. Электромеханическая эпоха в истории вычислительной техники началась с изобретения в 1887 году американским инженером Германом Холлеритом перфокарточного табулятора, предназна- ченного для переписи населения. Холлерит основал компанию по производству табуляторов, впоследствии превратившуюся в корпорацию IBM. На основе табуляторов в 20-30-е годы XX в.

57

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

10.В конце 1930-х — начале 40-х годов был построен ряд сложных электромеханических вычислительных маших, предвосхитивших появление ЭВМ. К ним относятся проекты Конрада Цузе (Германия), Говарда Айкена (США, Гпрвардский университет, г. Бостон)) и Джорджа Стибица (США, Bell Laboratories, НьюЙорк).

11.Первая в истории работающая программно-управляемая универсальная вычислительная машина Z-3 была построена немецким инженером Конрадом Цузе в 1941 году. Она была собрана на телефонных реле и управлялась перфолентой. Условия военной Германии не позволили Цузе довести свои проекты до промышленного внедрения.

12.Крупнейшая электромеханическая вычислительная машина MARK-I была построена в 1944 году в США по проекту Говарда Айкена. Она имела полноценное программное управления и использовалась для расчета артиллерийских таблиц. Программное обеспечение для этой машины разрабатывала группа офицеров под руководством женщины-адмирала Грейс Хоппер.

13.Параллельно с гарвардским MARK в крупнейшем в США исследователском институте в области радиотехники Bell Laboratories в 1940 — 1947 годах под руководством Джорджа Стибица было построено несколько релейных вычислительных машин серии Bell. Конструкции этих машин содержали передовые технические решения, оказавшие заметное вдияние на архитектуру будущих ЭВМ (аппаратный контроль ошибок, арифметика с плавающей запятой, сложные команды типа операций с комплексными числами, мультипроцессорные вычисления, телеобработка).

58

1.10. Контрольные вопросы

1.Какие вычислительные устройства домеханической эпохи вам известны?

2.Каким событием отмечено начало механической эпохи в истории вычислительной техники?

3.Когда появились первые электрические машины?

4.Каким событием отмечено начало электромеханической эпохи в истории вычислительной техники?

5.Когда была изобретена логарифмическая линейка?

6.Каковы достоинства аналоговых вычислительных машин по сравнению с цифровыми?

7.Каковы недостатки аналоговых вычислительных машин по сравнению с цифровыми?

8.В каком веке были изобретены первые механические вычислительные устройства?

9.Кто изобрел первую механическую вычислительную машину?

10.Какие арифметические действия выполняла вычислительная машина Паскаля?

11.Кто изобрел механический десятичный счетчик?

12.Что изобрел Готтфрид Лейбниц?

13.Что изобрел Чарльз Бэббидж?

14.В какой вычислительной машине был впервые применен принцип программного управления?

15.На каких конструктивных элементах была построена аналитическая машина Бэббиджа?

59

16.Какие идеи, воплощенные в проекте аналитической машины Бэббиджа, опередили свое время на много десятилетий?

17.Кто был первым в истории программистом?

18.Что изобрел Герман Холлерит?

19.Какие операции выполнял табулятор Холлерита образца 1887 года?

20.Как вводится программа вычислений в табулятор?

21.Кто считается основателем фирмы IBM?

22.Кем была построена первая в истории работающая программно-управляемая вычислительная машина?

23.На каких конструктивных элементах была построена машина Z-3?

24.На каких конструктивных элементах была построена вычислительная машина MARK-I?

25.Где была построена машина MARK-I?

26.Кто такая Грейс Хоппер?

27.Когда появился термин debugging?

28.В какой фирме работал Джордж Стибиц?

29.На каких конструктивных элементах были построены машины Bell-I — Bell-V?

29.Какие архитектурные особенности, оказавшие влияние на организацию будущих ЭВМ, присутствовали в вычислительных машинах Стибица?