У ИСТОКОВ КОМПЬЮТЕРНОЙ РЕВОЛЮЦИИ
В о все времена людям нужно было считать. В туманном доисторическом прошлом они считали на пальцах или делали насечки на костях. Примерно около 4000 лет назад, на заре человеческой цивилизации, были изобретены уже довольно сложные системы счисления, позволявшие осуществлять торговые сделки, рассчитывать астрономические циклы, проводить другие вычисления. Несколько тысячелетий спустя появились первые ручные вычислительные инструменты. А в наши дни сложнейшие вычислительные задачи, как и множество других операций, казалось бы, не связанных с числами, решаются при помощи “электронного мозга”—компьютера.
Закладка фундамента компьютерной революции происходила медленно и
далеко не гладко. Отправной точкой этого процесса можно считать изобретение
счетов, сделанное более 1500 лет назад, по-видимому, в странах
Средиземноморья. Этим нехитрым устройством купцы пользовались для своих
расчетов. Счеты оказались очень эффективным инструментом и вскоре
распространились по всему свету, а в некоторых странах применяются и по сей
день. Вплоть до XVII в., ознаменовавшегося невиданным подъемом творческой
мысли, счеты как вычислительный инструмент оставались практически вне
конкуренции.
Заметный след в истории оставило изобретение Джоном Непером
логарифмов, о чем сообщалось в публикации 1614 г. Его таблицы, расчет
которых требовал очень много времени, позже были “встроены” в удобное
устройство, чрезвычайно ускоряющее процесс вычисления,—логарифмическую
линейку; она была изобретена в конце 1620-х годов. В 1617 г. Непер придумал
и другой способ перемножения чисел. Инструмент, получивший название
“костяшки Непера”, состоял из набора сегментированных стерженьков, которые
можно было располагать таким образом, что, складывая числа в прилегающих
друг к другу по горизонтали сегментах, мы получали результат их умножения.
Теории логарифмов Непера суждено было найти обширное применение.
Однако его “костяшки” вскоре были вытеснены логарифмической линейкой и
другими вычислительными устройствами—в основном механического типа,—первым
изобретателем которых стал гениальный француз Блез Паскаль. Сын сборщика
налогов, Паскаль задумал построить вычислительное устройство, наблюдая
бесконечные утомительные расчеты своего отца. Суммирующая машина Паскаля,
“паскалина”, представляла собой механическое устройство—ящик с
многочисленными шестеренками. Всего приблизительно за десятилетие он
построил приблизительно 50 различных вариантов машины. Хотя “паскалина”
вызвала всеобщий восторг, она не принесла изобретателю богатства. Тем не
менее изобретенный им принцип связанных колес явился основой, на которой
строилось большинство вычислительных машин на протяжении следующих трех
столетий.
Основной недостаток “паскалины” состоял в неудобстве выполнения на ней всех операций, за исключением простого сложения. Первая машина, позволявшая легко производить вычитание, умножение и деление, была изобретена позже в том же XVII в. в Германии. Заслуга этого изобретения принадлежит Готфриду Вильгельму Лейбницу.
В 1672 г., находясь в Париже, Лейбниц познакомился с голландским математиком и астраномом Христианом Гюйгенсом. Видя, как много вычислений приходится делать астроному, Лейбниц решил изобрести механическое устройство, которое облегчило ба расчеты. “Поскольку это недостойно таких замечательных людей, подобно рабам, терять время на вычислительную работу, которую можно было бы доверить кому угодно при использовании машины.”
В 1673 г. он изготовил механический калькулятор. Но прославился он прежде всего не этой машиной, а созданием дифференциального и интегрального исчисления. Он заложил также основы двоичной системы счисления, которая позднее нашла применение в автоматических вычислительных устройствах.
ТКАЦКОЕ НАСЛЕДИЕ
Следующая ступень развития вычислительных устройств как будто не
имела ничего общего с числами, по крайней мере вначале. На протяжении всего
XVIII в. на французских фабриках по производству шелковых тканей велись
эксперименты с различными механизмами, управляющими станком при помощи
перфорационной ленты, перфорационных карт или деревянных барабанов. Во
всех трех системах нить поднималась или опускалась в соответсвии с наличием
или отсутствием отверстий—так создавался желаемый рисунок ткани. В 1804 г.
инженер Жозеф Мари построил полностью автоматизированный станок, способный
воспроизводить сложнейшие узоры. Работа станка программировалась при помощи
целой колоды перфокарт, каждая из которых управляла одним ходом челнока.
Станок Жаккарда (так его принято называть в нашей стране) вызвал настоящую
революцию в ткацком производстве, а положенные в его основу принципы
используются и по сей день.
Из всех изобретателй прошлых столетий, внесших тот или иной вклад в развитие вычислительной техники, ближе всего к созданию компьютера в современном его понимании подошел англичанин Чарльз Бэббидж.
ГРАНДИОЗНЫЕ ПЛАНЫ И РАЗБИТЫЕ НАДЕЖДЫ
В 1822 г. Бэббидж опубликовал научную статью с описанием машины,
способной рассчитывать и печатать большие математические таблицы. В том же
году он построил пробную модель своей Разностной машины, состоящую из
шестеренок и валиков, вращаемых вручную при помощи специального рычага.
Затем, заручившись поддержкой Королевского общества—самой престижной
научной организации Великобритании,—он обратился к правительству с просьбой
финансировать создание полномасштабной работающей машины.
На протяжении следующего десятилетия Бэббидж без устали работал над своим изобретением. Первоначально он рассчитывал завершить ее за три года, но Разностная машина становилась все сложнее по мере того, как он ее модифицировал, совершенствовал и конструировал заново.
В 1833 г. Бэббидж уже был готов отказаться от своих планов. Однако, продолжая размышлять на ту же тему, он пришел к идее создания еще более мощной машины. Аналитическая машина в отличие от своей предшественницы должна была не просто решать математические задачи одного определенного типа, а выполнять разнообразные вычислительные операции в соответствии с инструкциями, задаваемыми оператором. В действительности это ни что иное, как первый универсальный программируемый компьютер. Но если Разностная машина имела сомнительные шансы на успех, то Аналитическая машина и вовсе выглядела нереалистичной. Ее просто невозможно было построить и запустить в работу. В своем окончательном виде машина должна была быть не меньше железнодорожного локомотива. Ее внутренняя конструкция представляла собой беспорядочное нагромождение стальных, медных и деревянных деталей, часовых механизмов, приводимых в движение паровым двигателем. Малейшая нестабильность какой-нибудь крошечной детали приводила бы к стократно усиленным нарушениям в других частях, и тогда вся машина пришла бы в бешенство.
Аналитическая машина так и не была построена. Все, что дошло от нее
до наших дней,—это ворох чертежей и рисунков, а также небольшая часть
арифмитического устройства и печатающее устройство, сконструированное сыном
Бэббиджа.
Лишь через 19 лет спустя после смерти Бэббиджа один из принципов,
лежащий в основе Аналитической машины,—использование перфокарт—нашел
воплощение в действующем устройстве. Это был статистический табулятор,
построенный американцем Германом Холлеритом с целью ускорить обработку
результатов переписи населения США в 1890 г. Холлерит был удостоен
нескольких премий, получил немало похвал и звание профессора в Колумбийском
университете. Он организовал фирму по производству табуляционных машин
“Tabulating Machine Company” и продавал их железнодорожным управлениям и
правительственным учреждениям.
Предприятию Холлерита сразу же сопутствовал успех, и в дальнейшем оно
становилось все более преуспевающим. С годами оно претерпело ряд
изменений—слияний и переименований. Последнее такое изменение произошло в
1924 г., за 5 лет до смерти Холлерита, когда он создал фирму IBM
(International Business Machines Corporation). Теперь, спустя столетие с
того времени, когда Чарльз Бэббидж героически трудился над созданием
Аналитической машины, IBM является крупнейшей в мире промышленной фирмой,
воплотившей в жизнь его мечту о “машине самого универсального характера”.
ВОЗМОЖНОСТИ ДВОИЧНОГО КОДА
О
дним из первых заинтересовался двоичной системой гениальный немецкий ученый
Готфрид Вильгельм Лейбниц, который, однако, подошел к ней окольным путем. В
1666 г., заканчивая университет—еще задолго до изобретения механического
калькулятора,—двадцатилетний Лейбниц набросал работу “Искусство Составления
комбинаций”, которую скромно охарактеризовал как “сочинение школьника”. В
этой работе были заложены основы общего метода который позволяет свести
мысль человека—любого вида и на любую тему—к совершенно точным и формальным
высказываниям. Таким образом, открывалась возможность перевести логику из
словесного царства, полного неопределенностей, в царство математики, где
отношения между объектами или высказываниями определяются совершенно точно.
В дополнение к своему предложению сделать все рациональное мышление
математически строгим, Лейбниц призвал к принятию “общего языка, бесконечно
отличающегося от всех существовавших до сих пор, поскольку символы и даже
слова его должны направлять наш разум, а ошибки, кроме тех, что заложены в
исходных фактах, будут просто ошибками вычислений. Построить или изобрести
такой язык или такие понятия очень трудно, но зато он будет легко понятен
без всяких словарей”.
РАЗВИТИЕ ДВОИЧНОЙ СИСТЕМЫ
Современники ученого оставили работу без внимания, да и сам Лейбниц, по-видимому, не стал развивать идею нового языка. Однако десятилетие спустя он занялся исследованием законов применительно к новой области—двоичной системе счисления. Лейбниц терпеливо исследовал бесконечные комбинации нулей и единиц, формализуя найденные им закономерности и закладывая тем самым основы современной двоичной системы.
Однако при всей своей гениальности Лейбниц так и не смог найти полезного применения полученным результатам. Изобретенный им механический калькулятор предназначался для работы с десятичными числами, и Лейбниц не стал переделывать его под двоичные числа.
Однако спустя более ста лет после смерти Лейбница (1716) английский математик-самоучка Джордж Буль энергично принялся за поиски универсального языка. В 1847 г. Буль написал важную статью на тему “Математический анализ логики”, а в 1854 г. развил свои идеи в работе под названием “Исследование законов мышления”. Эти основополагающие труды Буля внесли революционные изменения в логику как науку.
Буль изобрел своеобразную алгебру—систему обозначений и правил,
применимую ко всевозможным объектам, от чисел и букв до предложений.
Пользуясь этой системой, Буль мог закодировать высказывания—утверждения,
истинность или ложность которых требовалось доказать,—с помощью символов
своего языка, а затем манипулировать ими подобно тому, как в математике
манипулируют обычными числами.
Большинство логиков того времени либо игнорировали, либо резко
критиковали систему Буля, но ее возможности оказались настолько велики, что
она не могла долго оставаться без внимания. Американский логик Чарльз
Сандерс Пирс познакомил в 1867 г. с булевой алгеброй американскую научную
общественность, кратко изложив существо этой системы в своем докладе для
Американской академии наук и искусств. На протяжении двух последующих
десятилетий Пирс затратил немало времени и сил, модифицируя и расширяя
булеву алгебру. Внедрив булеву алгебру в курсы логики и философии в
американских университетах, Пирс посеял семена, которые дали богатые всходы
полстолетия спустя. В 1936 г. выпускник американского университета Клод
Шеннон, которому было тогда всего 21 год, сумел ликвидировать разрыв между
алгебраической теорией и ее практическим применением.
КАК ТЕОРИЮ СВЯЗАТЬ С ПРАКТИКОЙ
В то время Шеннон только перешел в Массачусетский технологический
университет. Желая подработать, Шеннон выполнял обязанности оператора на
неуклюжем механическом вычислительном устройстве под названием
“дифференциальный анализатор”, который построил в 1930 г. научный
руководитель Шеннона профессор В. Буш. Это была первая машина, способная
решать сложные дифференциальные уравнения, которые позволяли предсказывать
поведение таких движущихся объектов, как самолет, или действие
гравитационного поля. На решение таких уравнений вручную уходили иногда
целые месяцы. Однако машина обладала рядом недостатков. Прежде всего—ее
гигантские размеры: механический анализатор Буша представлял собой сложную
систему валиков, шестеренок и проволок, соединенных в серию больших блоков,
которые занимали целую комнату. Чтобы поставить машине задачу, оператор
вынужден был вручную подбирать множество шестереночных передач, на что
уходило 2—3 дня. При любом измерении параметров задачи оператору
приходилось изрядно потрудиться и перепачкаться в машинном масле.
В качестве темы диссертации Буш предложил Шеннону изучить логическую
отганизацию своей машины. По мере того, как Шеннон все глубже вникал в
устройство машины, у него росло настойчивое желание усовершенствовать ее.
Вспомнив Булеву алгебру, которую он изучал еще студентом, Шеннон поразился
ее сходством с принципом работы электрических схем. Постепенно у Шеннона
стали вырисовываться контуры устройства компьютера. Если построить
электрические цепи в соответствии с принципами булевой алгебры, то они
могли бы выражать логические отношения, определять истинность утверждений,
а также выполнять сложные вычисления. Электрические схемы, очевидно, были
бы гораздо удобнее шестеренок и валиков, щедро смазанных машинным маслом.
Свои идеи Шеннон изложил в докторской диссертации в 1938 г.
А в это время на другом конце страны Джордж Стибиц, математик из фирмы “Белл телефон лабораторис”, по привычке размышлял на досуге “о том, о сем”. Однажды, в 1937 г., ему в голову пришла мысль, что булева логика—это естественный язык, на котором должна основываться работа систем электромеханических телефонных реле.
ОТ СЛОВ К ДЕЛУ
Стибиц сразу приступил к делу, полагая, что руководство фирмы найдет применение его результатам. Как и все любители поизобретать, он начал с того, что собрал необходимые детали и принадлежности. Работая по вечерам за кухонным столом, он собрал аппарат из старых реле, пары батареек, лампочек, проводов и металлических полосок, нарезанных из жестянных банок. Созданное им устройство, было электромеханической схемой, которая выполняла операцию двоичного сложения.
Еще через пару лет Стибиц вместе с другим сотрудником фирмы разработал устройство, способное производить операции вычитания, умножения и деления, а также сложения комплексных чисел. Стибиц назвал свое устройство калькулятором комплексных чисел, и в январе 1940 г. ее начали использовать в управлении фирмы на Манхэттэне. Установленный рядом телетайп передавал на машину сигналы и через считанные секунды получал ответ.
Однако еще до того, как Шеннон закончил диссертацию, а Стибиц начал собирать модель калькулятора на кухонном столе, подобной работой занялся их собрат по духу Конрад Цузе, живший в Берлине.
В 1936 г. Цузе уволился из технической фирмы, где работал, и отдал
все свое время разработке компьютера. Получив немного денег от друзей, он
устроил “мастерскую” на маленьком столе в углу гостинной в доме родителей.
Когда машина стала приобретать форму и разростаться в размерах, ему
пришлось придвинуть еще несколько столов, а затем переместиться со своим
детищем в середину комнаты. Через 2 года он завершил постройку машины,
которая занимала около 4 м2 и представляла собой хитросплетение реле и
проводов.
Машина Z1 имела клавиатуру с которой вводились в нее условия задач.
По завершении вычислений результат высвечивался на панели с множеством
маленьких лампочек. В общем Цузе был доволен своим аппаратом, сомнения
вызывала только клавиатура, которая, на его взгляд, была неудобной и
слишком медленно действовала. Перебрав в уме другие варианты, он придумал
очень остроумное и дешевое устройство ввода: Цузе стал кодировать
инструкции для машины, пробивая отверстия в использованной 35-миллиметровой
фотопленке. Машина, работавшая с перфорированной лентой, получила название
Z2.
Цузе с энтузиазмом продолжал работу в одиночку до 1939 г. Но тут
началась вторая мировая война. Цузе, Стибиц и другие пионеры вычислительной
техники по обе стороны Атлантического океана оказались втянутыми в
лихорадочную гонку, целью которой было создание на основе их разработок
принципиально нового вида вооружений. Война дала мощный импульс дальнейшему
развитию теории и практики вычислительной техники. Она также способствовала
тому, что были собраны воедино разрозненные достижения ученых и
изобретателей, внесших свой вклад в развитие двоичной математики, начиная с
Лейбница. Двухсимвольное представление информации в конце концов было
принято за основу языка ЭВМ.
РАЗРАБОТКИ ВОЕННЫХ ЛЕТ
В конце 1941 г., вскоре после вступления США во вторую мировую войну,
президент фирмы IBM направил телеграмму в Белый дом. Как и многие другие
рукводители крупных компаний, в это трудное для страны время Томас Дж.
Уотсон предложил американскому правительству услуги своей корпорации.
Казалось, производственный потенциал фирмы имеет мало общего с военной техникой. В основном фирма была ориентирована на производство таких изделий, как пишущие машинки, настольные калькляторы и табуляционные машины, подобные той, какую изобрел Герман Холлерит в 1890 г. Уотсон, которому в 1941 г. было уже 67 лет, начинал карьеру, торгуя кассовыми аппаратами для магазинов, и постепенно превратил свою компанию в концерн с многомиллионным оборотом. В нем сочетались интуиция, позволяющая улавливать наиболее перспективные направления технического развития, и талант предпринимателя.
Выполняя обещание, данное Белому дому, фирма IBM “вступила” в войну.
Тысячи табуляторов, гигантских машин для сортировки перфокарт, получивших
позднее название прцессоров данных,—ускоряли поток бумажной работы
порожденной всеобщей мобилизацией. Часть производственных помещений Уотсон
переоборудовал для производства винтовок и прицельных устройств для
бомбометания.
Однако в рукаве белоснежной сорочки Уотсона был припрятан еще один
“козырь”. За два года до нападения Японии на Пирл-Харбор он вложил $500000
из фондов своей фирмы в дерзкое предприятие, задуманное молодым гарвардским
математиком Говардом Эйкеном. Устав от бесконечных вычислений в процессе
работы над докторской диссертацией, Эйкен решил создать универсальный
программируемый компьютер.
КОМПЬЮТЕР “МАРК-1”
С благословения командования военно-морского флота, при финансовой и
технической поддержке фирмы IBM Эйкен принялся за разработку машины, в
основу которой легли непроверенные идеи XIX в. и надежная технология XX в.
Описания Аналитической машины, оставленного самим Бэббиджем, оказалось
более чем достаточно. В качестве переключательных устройств в машине Эйкена
использовались простые электромеханические реле; инструкции были записаны
на перфоленте. В отличие от Стибица Эйкен не осознал преимуществ двоичной
системы счисления, и данные вводились в машину в виде десятичных чисел.
Разработка машины “Марк-1” проходила на удивление гладко. Успешно
пройдя первые испытания в начале 1943 г., она была затем перенесена в
Гарвардский унивеситет, где стала яблоком раздора между ее изобретателем и
его шефом.
Следует заметить, что и Эйкен, и Уотсон, обладая немалым упрямством, любили делать все по-своему. Сначала они разошлись во мнениях по поводу внешнго вида машины. “Марк-1”, достигавший в длину почти 17 м и в высоту более 2,5 м, содержал около 750 тыс. деталей, соединенных проводами общей протяженностью около 800 км. Для инженера такая махина была поистине кошмарным сном. Эйкен хотел оставить внутренности машины открытыми, чтобы специалисты имели возможность видеть ее устройство. Уотсон же, которого, как всегда, больше беспокоила репутация фирмы, настаивал, чтобы машину заключили в корпус из стекла и блестящей нержавеющей стали.
Вскоре Уотсон передал машину в распоряжение ВМФ, и ее стали
использовать для выполнения сложных баллистических расчетов, которыми
руководил сам Эйкен. “Марк-1” мог перемалывать числа длинной до 23
разрядов. На сложение и вычитание тратилось 0,3 с, а на умножение 3 с.
Такое быстродействие было беспрецендентным. За день машина выполняла
вычисления, на которые раньше уходило полгода.
В Германии лидерство захватил Конрад Цузе. В 1941 г., почти за два года до того, как “Марк-1” прелопатил первые числа, и вскоре после создания пробных моделей Z1 и Z2, Цузе построил действующий компьютер—прграммно управляемое устройство, основанное на двоичной системе счисления. Машина Z3 была значительно меньше машины Эйкена и значительно дешевле в производстве.
В 1942 г. он и австрийский инженер-электрик Хельмут Шрайер, который время от времени сотрудничал с Цузе, предложили создать компьютер принципиально нового типа. Они задумали перевести машину Z3 с электромеханических реле на вакуумные электронные лампы. В отличие от электромеханических переключателей электронные лампы не имеют движущихся частей; они управляются электрическим током исключительно электрическим способом. Машина, задуманная Цузе и Шрайером, должна была работать в тысячу раз быстрее, чем любая из машин, имевшихся в то время в Германии.
Но предложение инженеров отклонили. Война еще только начиналась, и
Гитлер, уверенный в быстрой победе, наложил запрет на все долговременные
научные разработки. Говоря о потенциальных сферах применения своего
быстодействующего компьютера, Цузе и Шрайер отмечали возможность его
использования для расшифровывания закодированных сообщений, передаваемых
британским командованием по рациям. Тогда еще никто не знал, что англичане
разрабатывали машину для той же цели.
В отличие от полукустарной работы Цузе в Берлине английский проект относился к разработкам самого высокого приоритета; он осуществлялся в рамках проекта “Ультра”, целью которых был поиск способов расшифровки немецких кодов. Идея проекта “Ультра” зародилась после весьма успешной операции, проведенной польской разведкой. Еще до оккупации Польши Германией в 1939 г. поляки умудрились создать точную копию немецкого шифровального аппарата “Загадка” и переправить его в Англию вместе с описанием принципа работы.
Аппарат “Загадка” представлял собой электромеханический телепринтер,
в котором шифровка сообщений производилась случайным поворотом рычагов.
Отправитель настраивал телепринтер на определенный ключ, вставлял набор
штырьков в ячейки (подобно тому как это делается на телефонном коммутаторе)
в соответствии с определенной схемой и печатал сообщение. После этого
машина автоматически передовала сообщение в зашифрованном виде. Кроме этого
поляки ничего не могли сказать англичанам. Без ключа и схемы коммутации (их
немцы меняли три раза в день) даже использование в качестве приемника еще
одного устройства “Загадка” было бесполезно.
В надежде раскрыть секрет “Загадки” британская разведка собрала
группу блестящих и несколько эксцентричных ученых и поселила их в Блетчли-
Парке, обширном имении викторианской эпохи, расположенном неподалеку от
Лондона, изолировав от остального мира.
Сначала удалось создать несколько дешифраторов, в которых
использовались электромеханические переключатели такого же типа, как у
Конрада Цузе в Берлине, Джона Стибица в “Бэлл телефон лабораторис” и
Говарда Эйкена в Гарвардском университете. Эти машины работали по существу
“методом проб и ошибок”, перебирая до бесконечности всевозможные комбинации
из символов немецкого кода, пока не возникал какой-нибудь осмысленный
фрагмент. Однако в конце 1943 г. затворники Блетчли-Парка сумели построить
гораздо более мощные машины. Вместо электромеханических реле в них
содержалось около 2000 электронных вакуумных ламп. Примечательно, что
именно такую технологию предлагал Цузе для создания новой машины,
признанной в Германии нецелесообразной. Даже количество ламп было то же
самое. Англичане назвали новую машину “Колосс”.
Тысячи перехваченных за день неприятельских сообщений вводились в память “Колосса” в виде символов, закодированных на перфоленте. Ленту вводили в фотоэлектрическое считывающее устройство, которое сканировало ее с удивительной скоростью—5000 символов в секунду, после чего в поисках соответствия машина сопостовляла зашифрованное сообщение с уже известными кодами “Загадки”. Каждая машина имела пять считывающих устройств, в результате за секунду обрабатывалось поразительное количество информации: около 25000 символов.
Хотя использование вакуумных ламп ознаменовало крупный шаг вперед в
развитии вычислительной техники, “Колосс” все же был специализированной
машиной, применение которой ограничивалось расшифровкой секретных кодов.
Однако на другом берегу Атлантического океана, в Филадельфии, потребности
военного времени способствовали созданию устройства, которое по принципам
работы и применению было уже ближе к теоритической универсальной машине
Алана Тьюринга (ученого, внесшего наибольший вклад в создание “Колосса”).
Машина “Эниак” (ENIAC, аббревиатура от Electronic Numerical Integrator and
Computer—электронный цифровой интегратор и вычислитель), подобно “Марку-1”
Говарда Эйкена, также предназначалась для решения задач баллистики. Но в
итоге она оказалась способной решать задачи из самых различных областей.
ПОЯВЛЕНИЕ УНИВЕРСАЛЬНОГО КОМПЬЮТЕРА
Война разрасталась, военные разработки требовали ускорения,
Лаборатория баллистических исследований министерства обороны США не
справлялась с работой и в конце концов была вынуждена обратиться за
помощью. В расположенном наподалеку Высшем техническом училище
Пенсильванского университета был создан вспомогательный вычислительный
центр. Училище располагало дифференциальным анализатором, однако двое
сотрудников вычислительного центра, Джон У. Мочли и Дж. Преспер Экерт,
вознамерились придумать кое-что получше.
9 апреля 1943 г.—в день, когда Экерту исполнилось 24 года,—армия заключила с училищем контракт на $400000, предусматривающий создание компьютера “Эниак”. Группа специалистов, работавшая над этим проектом, в конечном счете выросла до 50 человек. Мочли был главным консультантом проекта, Экерт—главным конструктором. Разные по своему характеру и привычкам эти два человека прекрасно дополняли друг друга.
Конструкция машины выглядела фантастически сложной—предполагалось, что она будет содержать 17 468 ламп. Такое обилие ламп отчасти объяснялось тем, что “Эниак” должен был работать с десятичными числами. Мочли предпочитал десятичную систему счисления, ибо хотел, чтобы “машина была понятна человеку”. Однако столь большое количество ламп, которые, перегреваясь, выходили из строя, приводило к частым поломкам. При 17000 ламп, одновременно работающих с частотой 100000 имп./с, ежесекундно возникало 1,7 млрд. ситуаций, в которых хотя бы одна из ламп могла не сработать. Экерт решил эту проблему, позаимствовав прием, который широко использовался при эксплуатации больших электроорганов в концертных залах: на лампы стали подавать несколько меньшее напряжение, и количество аварий снизилось до одной-двух в неделю.
В конце 1945 г., когда “Эниак” был наконец собран и готов к проведению первого официального испытания, война, нуждам которой он был призван служить, окончилась. Однако сама задача, выбранная для проверки машины,—расчеты, которые должны были ответить на вопрос о принципиальной возможности создания водородной бомбы,—указывала на то, что роль компьютера в последние годы и годы “холодной войны” не снижалась, а скорее возростала.
“Эниак” успешно выдержал испытания, обработав около миллиона
префокарт фирмы IBM. Спустя два месяца машину продемонстрировали
представителям прессы. По своим размерам (около 6 м в высоту и 26 м в
длину) этот компьютер более чем вдвое превосходил “Марк-1” Говарда Эйкена.
Однако двойное увеличение в размерах сопровождалось тысячекратным
увеличением в быстродействии. По словам одного восхищенного репортера,
“Эниак” работал “быстрее мысли”.
ВОЗМОЖНОСТИ ПРОГРАММ, ХРАНИМЫХ В ПАМЯТИ
Не успел “Эниак” вступить в эксплуатацию, как Мочли и Экерт уже
работали по заказу военных над новым компьютером. Главным недостатком
компьютера “Эниак” были трудности, возникавшие при изменении вводимых в
него инструкций, т. е. программы. Объема внутренней памяти машины едва
хватало для хранения числовых данных используемых в расчетах. Это означало,
что программы приходилось буквально впаивать в электронные схемы машины.
Если требовалось перейти от вычислений баллистических таблиц к расчету
параметров аэродинамической трубы, то приходилось бегать по комнате,
подсоединяя и отсоединяя сотни контактов, как на ручном телефонном
коммутаторе. В зависимости от сложности программы такая работа занимала от
нескольких часов до двух дней. Это было достаточно веским аргументом, чтобы
отказаться от попыток использовать “Эниак” в качестве универсального
компьютера.
Следующая модель—машина “Эдвак” (EDVAC, от Electronic Discrete
Automatic Variable Computer—электронный дискретный переменный
компьютер)—была уже более гибкой. Ее более вместительная внутренняя память
содержала не только данные, но и программу. Инструкции теперь не
“впаивались” в схемы аппаратуры, а записывались электронным образом в
специальных устройствах, о которых Экерт узнал работая над созданием
радара: это заполненные ртутью трубки, называемые линиями задержки.
Кристаллы, помещенные в трубку, генерировали импульсы, которые,
распространяясь по трубке, сохраняли информацию, как ущелье “хранит” эхо.
Существенно и то, что “Эдвак” кодировал данные уже не в десятичной системе,
а в двоичной, что позволило значительно сократить количество электронных
ламп.
НАЧАЛО КОНКУРЕНЦИИ
Летом 1946 г. Мочли и Экерт читали цикл лекций об электронных
компьютерах в Высшем техническом училище. Среди слушателей оказался
английский исследователь Морис Уилкс, которого особенно заинтересовал
способ хранения программ в памяти, который предполагалось использовать в
машине “Эдвак”. Вернувшись в Кембриджский университет, он в 1949 г. (на два
года раньше, чем построили машину “Эдвак”) завершил сооружение первого в
мире компьютера с программами, хранимыми в памяти. Компьютер получил
название “Эдсак” (EDSAC, от Electronic Delay Storage Automatic
Calculator—электронный автоматический калькулятор с памятью на линиях
задержки).
Это первое успешное воплощение принципа хранения программы в памяти
явилось завершающим этапом в серии изобретений, начатых в военное время.
Теперь был открыт путь для широкого распространения все более
быстродействующих компьютеров, способных мгновенно извлекать програмы из
памяти и не только выполнять баллистические расчеты или расшифровывать
коды, но и обрабатывать самую разнообразную информацию.
ЭВОЛЮЦИЯ ИНТЕГРАЛЬНЫХ СХЕМ
1 июля 1948 г., через два с половиной года после публичной демонстрации
первого в мире большого цифрового компьютера “Эниак”, в самом конце газеты
“Нью-Йорк таймс” была напечатана короткая заметка. В ней сообщалось об
изобретении нового устройства, “электронного прибора, транзистора, который
может найти применение в радиотехнике вместо обычных электронных вакуумных
ламп”. Хотя позже транзистор был признан одним из важнейших изобретений
века, в то время мало кто смог по достоинству оценить его. Заметка в “Нью-
Йорк таймс” была помещена в самом конце малоприметного раздела “Новости
радио” рядом с объявлением о времени трансляции передачи “В ритме вальса”.
В заметке ничего не говорилось о возможной связи между этим изобретением и компьютерами типа “Эниак”, статьи о которых помещались на первых полосах газет, ибо по-прежнему вызывали большой интерес, и все же благодаря транзистору—германиевому кристаллу величиной с булавочною головку, заключенному в металлический цилиндр длиной около сантиметра,—электроника вступила на путь миниатюризации, которая позволяла конструкторам разместить всю логическую систему “Эниака” на плате величиной в игральную карту.
СОЗДАНИЕ ИНТЕГРАЛЬНОЙ СХЕМЫ
В июле 1958 г. сотрудник “Тексас инструментс” Джек Килби создал первую в мире интегральную схему (ИС). Она представляла собой тонкую германиевую пластинку длиной 1 см. Это устройство еще не отличалось особым изяществом. Пять компонентов схемы (транзисторов, резисторов и конденсаторов) были изолированы друг от друга благодаря своей форме в виде букв U, L и т. п. Крошечные проволочки, соединяющие компоненты схемы друг с другом и с источником питания, просто припаивались. Вся конструкция скреплялась воском. Тем не менее схема работала. Фирма сообщила о рождении нового устройства в январе 1959 г. А чтобы продемонстрировать потенциальные возможности новой технологии, компания построила для ВВС США компьютер, состоявший из 587 ИС, объем которого составлял около 40 см3, т. е. в 150 раз меньше, чем у аналогичной машины старого образца.
Однако у нового устройства были существенные недостатки. И вскоре интегральные схемы Килби быстро вытеснила другая модель, технология изготовления которой оказалась проще.
ИС Херни Нойса были настолько практичнее схем Килби, что даже фирма
“Тексас инструментс” приняла их на вооружение. В 1962 г. началось массовое
производство ИС, вскоре прозванных “чипами”. В 60-е годы, по мере
уменьшения в размере отдельных компонентов на кристалле количество их на
одном чипе возрастало с головокружительной быстротой, примерно удваиваясь
каждый год. Например, в 1964 г. на кристалле размером 7 см2 умещалось 10
транзисторов и других компонентов, а к 1970 г. в кристалле того же размера
содержалось уже не менее 100 элементов приблизитеьно при той же стоимости
ИС.
Интегральные схемы значительно сократили размеры изделий, устранили
необходимость трудоемкого процесса пайки соединений между компонентами, а
уменьшение числа соединений способствовало повышению надежности приборов.
Не менее существенно и то, что они стали работать быстрее. Электрическим
импульсом, распространяющимся от одного переключателя к другому со
скоростью, приблизительно равной половине скорости света, теперь
приходилось преодолевать расстояния лишь в сотые доли сантиметра.
Специалисты, работавшие над военными и космическими проектами, с
воодушевлением приняли эти крошечные удивительные устройства и стали
встраивать их в системы управления все более сложных ракет и космических
аппаратов. Большая скорость действия новых ИС открыла также путь к
разработке менее громоздких, более быстродействующих и мощных компьютеров
для административно-управленческих и научных приложений.
Первая ИС для компьютерной памяти была разработана компанией “Интел”
(Intel, integrated electronics—интегральная электроника). В 1968 г. фирма
организовала предприятие в районе Пало-Альто. Через два года она изготовила
первую ИС памяти, способную хранить целый килобит информации. (Килобит, или
сокращенно К, равен 1024 битам, двоичным элементам информации, что
эквивалентно приблизительно 25 пятибуквенным словам.)
Но в это время 34-летний инженер фирмы “Интел” Хофф работал над еще более замечательным проектом. Выпущенный в конце 1970 г. микропроцессор получил наименование 4004. Хотя он и не совсем точно соответствовал своему описанию, в котором фирма охарактеризовала его как “компьютер в одном кристалле”, но был недалек от этого. Он выполнял все функции центрального процессорного устройства универсального компьютера. И в сочетании еще с четырьма микросхемами—памяти, блока управления и интерфейса ввода и вывода—представлял собой микрокомпютер—машину, не уступавшую по мощности большим ЭВМ середины 50-х годов.
К 1981 г., спустя лишь десятилетие после изобретения Эдварда Хоффа, фирма “Хьюлетт-Паккард” уже смогла в