Первая электронная вычислительная машина с двоичной системой счисления. Забытый проект ABC
До 70 годов считалось, что первый электронный цифровой компьютер (ENIAC) был создан Джоном Мокли и Джоном П. Эккертом еще в далеких 40 годах. В 1973 году завершился судебный процесс между корпорацией Sperry Rand и компанией Honeywell за авторство изобретения электронной вычислительной машины. Корпорацией Sperry был приобретен патент на ENIAC и после этого компания взыскивала процент от других компаний, которые занимались разработкой ЭВМ. Honeywell платить не захотели, после чего корпорация Sperry подала на них в суд, но не тут то было: им был предьявлен встречный иск. Обвинялась Sperry в том, что использовала недействительный патент и этим самым нарушала антитрестовский закон. Представители компании Honeywell привели как довод созданную до ENIAC конструкцию ЭВМ Анатасова. Анатасов был разыскан, что самое интересное, он не был хорошо знаком с устройством ENIAC. Конструктивные особенности его компьютера ABC были использованы в ЭВМ ENIAC. Джон В. Атанасов — ученый из Айовы, еще в 30 годах создал первую электронную вычислительную машину, которая работала на основе двоичной системы счисления.
4 октября 1903 года Джон Винсент Атанасов родился в нескольких милях к западу от Гамильтона, штат Нью-Йорк, на ферме, принадлежавшей его деду, в семье эмигрантов из Болгарии. Он был первым ребенком в семье Джона (Ивана) Атанасова (1876–1956) и Ив Лаусен Парди (1881–1983). Его отец был инженером, а мать — учительницей математики в школе. В семье было девять детей (один из них умер): Джон, Этелин, Маргарет, Теодор, Авис, Раймонд, Мельва и Ирвинг.
Джон писал о своих родителях:
«Мой отец родился 6 января в 1876 году, наш народ как раз готовился к восстанию против турок (апрельское антиосманское восстание в Болгарии, произошло 18 апреля — 23 мая 1876 года и было жестоко подавлено турками, оно считается кульминацией болгарского национально освободительного движения против османского гнета, в ходе восстания погибло от 25 до 50 тысяч болгар). Людям, проживавшим в нашем поселке было предложено покинуть свои дома вместе с семьями, после чего дома были сожжены. Моя бабушка бежала с ребенком (моим отцом) на руках за дедушкой… прозвучал выстрел… один из турецких солдат выстрелил моему дедушке прямо в грудь, он упал замертво, рикошетом пуля задела моего отца и на всю жизнь оставила шрам, как ужасное напоминание о тех событиях. Бабушка вышла второй раз замуж. В 15 лет мой отец прибыл в США, в 15 лет он остался сиротой. Здесь он закончил Университет Колгейт (американский гуманитарный колледж в г. Хамильтоне, округ Мэдисон штата Нью-Йорк). Позже женился на моей матери-американке, дед по линии матери принимал участие в гражданской войне между Севером и Югом».
с матерью
Происшествие, случившееся в то время, является задокументированным фактом в истории болгарского народа (так называемая Резня в Бояджик). 11 мая 1876 года турецкая армия напала и разграбила деревню Бояджик, убив почти две сотни невооруженных людей, в основном женщин и детей. Только лишь чудо уберегло отца Атанасова от верной гибели.
»… сотни, тысячи болгар всех возрастов и обоего пола погибли при самых страшных обстоятельствах; подробности совершенных жестокостей ужасны; в Перуштице, Батаке, Ветрене вырезано все население. Недавно деревня Бояджик около Ямбола испытала ту же судьбу. Женщин и девушек насиловали, убивали и уводили в рабство, убивали детей, убивали крестьян, убегающих при приближении войска, убивали и тех, кто оставался при них, убивали тех, кто прятался, и тех, что сдавали оружие, — за то, что оно у них было; и тех, у которых его не было, — за то, что они его не сдавали; стреляли из вагонов по служащим на линии железной дороги… вооруженные банды бродят по стране, отнимая у крестьян все, что можно отнять, и регулярные войска появляются при малейшем сопротивлении, чтобы предать все огню и меч».
Иван Атанасов прибыл в США со своим дядей в 1889 году, имя Иван было изменено иммиграционной службой на — Джон. После окончания колгейтского университета в 1990 году родители Атанасова поженились и переехали в Нью-Джерси, где отец получил работу инженера. Отец продолжил свою учебу в вечернее и ночное время, посещал курсы, увлекался электротехникой и электроникой. После рождения Джона семья переехала во Флориду, где отец получил работу в новом городке Brewster инженером на электростанции, на данный момент это город-призрак.
городок Brewster
Джон закончил здесь начальную школу, уже в то время его интересовало все, что было связано с электричеством) В 9 лет он обнаружил неисправность в электропроводке на заднем крыльце дома и смог починить ее. К слову, его отец был первым в округе, кто провел электрическую проводку в своем доме. Джон был развит не по годам, рано научился читать и любил все, что мог узнать из книг. Учился он хорошо, был прилежным учеником, интересовался спортом, особенно был увлечен бейсболом. Но увлечение бейсболом растаяло как туман, после того как отец подарил ему логарифмическая линейку, считается, что до появления карманных калькуляторов этот инструмент был просто незаменим для инженеров при расчетах.
«Эта логарифмическая линейка была моей самой любимой игрушкой, бейсбол был почти забыт, когда я приступил к серьезному изучению логарифмов». В 10 лет он изучал физику и химию, занимался математикой, как-то его мать дала ему книгу, в которой шла речь о вычислениях в других системах счисления, отличных о десятичной.
Еще во время учебы в школе, Атанасов освоил дифференциальное исчисление, а отец взял его как-то на завод и показал работу генератора. Это все определило его дальнейший выбор. Когда мальчику нужно было переходить в старшие классы, семья переехала на ферму в Old Chicora, Флорида. За два года в возрасте 15 лет Атанасов окончил Mulberry High School с отличием по математическим дисциплинам. Он решил, что быть физиком-теоретиком его призвание. Но ему пришлось год проработать в фосфатных шахтах, чтобы заработать денег. В 1924 году Джон поступил в университет во Флориде на электротехнический факультет.
Много времени Атанасов проводил в механических и литейных мастерских университета. Он закончил университет в 1925 году со степенью бакалавра с наилучшими баллами и получил стипендию на обучение в магистратуре по математике и физике от штата Айова. Ему предлагали обучение многие высшие заведения, такие как Гарвард, но он решил все же продолжить обучение в Эймсе.
Летом 1925 года Джон закончил обучение в Айове и получил диплом инженера — электрика, тут же занимался преподавательской деятельностью и вел два математических класса. В 1926 году Джон женился на молодой голубоглазой брюнетке Луре Микс из Оклахомы. Через год у них родилась дочь Эльзи и семья переехала в Висконсин, где Атанасов (май 1930 год) защитил свою докторскую диссертацию. Двое других детей, двойнята Джоан и Джон, родились через год.
В марте 1929 года он стал аспирантом Университета в штате Висконсин и продолжил свою учебу в области теоретической физики. Работая над своей докторской диссертацией, Атанасову приходилось делать много вычислений, его тема была о гелии поляризующемся в электрическом поле, он часами проводил расчеты с помощью калькулятора Монро, одним из самых современных вычислительных устройств того времени. В то время аналоговые методы решения с помощью дифференциального анализатора Ванневара-Буша не могли уже удовлетворять запросы из-за допускаемых неточностей, а устройств, которые реализовали бы цифровой подход, просто — напросто не существовало. И вот, в такие моменты Атанасов понимал, что пришло время разработать что-то, что сможет помочь делать расчеты намного быстрее, точнее, его не покидала мысль о автоматизации решения больших линейных алгебраических уравнений. Атанасов даже попытался модифицировать калькулятор фирмы IBM.
Поэтому после возвращении в Государственный колледж штата Айова, где он работал ассистентом профессора по математике и физике, он всерьез занялся разработкой и созданием быстродействующей вычислительной машины. Он проводил эксперименты с вакуумными трубками, радио, изучал электронику. Атанасов изучил многие доступные на то время вычислительные устройства, и пришел к выводу, что их можно разделить на два класса аналоговые устройства и вычислительные машины (но термин «цифровая вычислительная машина» начал использовался позже). В 1936 году Атанасов попытался создать небольшой аналоговый калькулятор. В Айове никто кроме Джона не занимался созданием новых вычислительных машин, здесь он спокойно обдумывал свои идеи, но с другой стороны и не было людей специалистов с которыми он мог бы обсудить на месте свои задумки, разобраться в возникших технических и теоретических проблемах. Такой себе одинокий изобретатель.
Джон Атанасов изначально думал создать аналоговое устройство, что-то похожее на его любимые логарифмические линейки, но очевидным стал тот факт, что длина таких линейных пленок для точного решения линейных алгебраических уравнений была бы сотни метров. Ограниченность аналоговых средств вычисления толкали ученого на создание чего-то «революционного». Как сохранить числа в машине — вот была первая задача, которую Атанасов попытался решить. Вот так возник термин «память» для описания данной функции в машине. Какие виды памяти только не перебрал Атанасов и механические штырьки, и электромагнитные реле, и электронные лампы. Так как электронные лампы на то время были дорогие, он решил использовать конденсаторы. Конденсаторы сами по себе небольшие и недорогие компоненты, которые могли на некоторое время сохранять электрический заряд, но вот о маленьких размерах машины и ее быстродействии с таким видом памяти можно было забыть.
Вторая задача, которую следовало решить он назвал «вычислительным механизмом». Для этого механизма Атанасов решил использовать электронные лампы, которые использовались бы в качестве двухпозиционных переключателей с функциями включить/выключить. На данном этапе и возникла дилемма, какую систему исчисления использовать в машине (даже система исчисления с основанием на сто показалась ученому многообещающей). В конце-концов была выбрана двоичная система счисления.
Еще была у Атанасова одна страсть — автомобили. Он старался каждый год покупать новый (вот не известно продавал ли предыдущие). Одним из зимних вечеров 1937 года в придорожной таверне, куда заехал Атанасов на новом форде c мощным двигателем V8, его посетила идея и то, по каким принципам должен быть создан новый вычислительный аппарат. Суть этих принципов была сформулирована им позже, а именно она состояла в том, что для работы компьютера будет использоваться электричество, и основана она будет не на привычной десятичной системе счисления, а на двоичной.
»… однажды зимним вечером 1937 года я почувствовал, что совершенно измучен невозможностью найти решение проблем, связанных с конструкцией машины. Я сел в автомобиль, разогнался и ехал так долгое время, пока не стал контролировать свои эмоции. Это было моей привычкой — у меня получалось восстанавливать контроль над собой, после того как проедусь по дороге, сосредоточившись на управлении автомобилем. Но в ту ночь я был слишком измучен и продолжал мчаться, пока не пересек реку Миссисипи и не оказался в штате Иллинойс, в 300 километрах от того места, где сел в машину…(зашел в таверну и заказал выпивку) я почувствовал, что уже не так нервничаю, и мои мысли снова обратились к вычислительным машинам. Я не знаю, почему моя голова тогда заработала и почему она не работала раньше, но там было симпатично, прохладно и тихо».
Принципы работы будущей вычислительной машины Атанасов набросал на салфетке, он думал о том, какой будет конструкция регенеративной памяти, назвал ее «дискретной», он придумал поместить конденсаторы на вращающиеся цилиндрические барабаны (из под банок сока), каждую секунду они бы вступали в контакт со щетками (в виде кабелей) и заряжались бы. Память, состоящая из конденсаторов, «встряхивалась» бы щетками при повороте вращающихся цилиндров, а при необходимости снимались бы старые данные и вводились новые. Придуманная логическая электронная схема позволяла считывать числа с двух разных цилиндров с конденсаторами.
Началась работа над создание прототипа. Нужен был помощник, так в 1939 году произошло знакомство Атанасова с Берри, который на тот момент был выпускником электротехнического отделения, хорошо разбирался в электронике.
Работа над ABC (Atanasoff— Berry Computer) длилась три года, а первый прототип был продемонстрирован еще в 1939 году и его целью было решение системы линейных уравнений, система могла работать с 29 переменными, она обрабатывала два уравнения и убирала одну из переменных, а получившиеся уравнение выводила на двоичные перфокарты размеров 8×11, после этого карты с более простой системой уравнений подавались обратно в машину, процесс начинался заново. Все это сокращало бы такие расчеты с 29 переменными. На калькуляторе это заняло бы 10 недель, а на вычислительной машине всего 7! дней. Но все равно это был бы очень длительный процесс.
В ABC использовалась двоичная арифметика. Длина слова составляла 50 бит. Перфокарты с промежуточными результатами содержали тридцать 50-разрядных двоичных чисел. В машине было два запоминающихся устройства, которые состояли из вращающихся барабанов, к которым были прикреплены небольшие конденсаторы, подключенные к латунному контакту на поверхности барабана.
5/6 периферийной поверхности барабана было занято латунными контактами, а 1/6 оставалась пустой, что предоставляло время для выполнения других операций. Скорость прохождения контактов мимо считывающей щетки составляла 60 в секунду.
По словам Берри:
»… полярность заряда на конденсаторе указывала «единицу» или «ноль», и каждый конденсатор сразу же после считывания перезаряжался, чтобы заряд никогда не оставался на нем более одной секунды. Все слова обрабатывались параллельно, но внутри каждого слова цифры обрабатывались последовательно. Интересно отметить, что прежде чем проектировать память на конденсаторах, мы серьезно рассматривали идею использования магнитных барабанов, но отказались от нее из-за низкого уровня сигналов. Имелось 30 идентичных арифметических устройств, которые по существу были двоичными сумматорами. Каждое состояло из серии электровакуумных ламп с прямой связью (семь сдвоенных триодов), соединенных между собой таким образом, что они выполняли двоичное сложение. Каждое устройство имело три входа (два — для складываемых или вычитаемых чисел и один — для переноса с предыдущего места) и два выхода (один — для результата на том месте, а другой — для переноса на другое место)».
Преобразование десятичных чисел в двоичные осуществлялось с помощью вращающегося барабана, на котором находились контакты, представляющие двоичные эквиваленты 1,2 — 9,10,20 — 9×14. На выходе тот же аппарат в обратном порядке преобразовывал и выдавал на механический счетчик десятичный результат.
Атанасов напечатал на 35 страницах описание такой машины в надежде получить финансирование данного проекта. Сумма расходов составила чуть больше 5 тысяч долларов, но финансирование он позже получил от частного фонда. Адвокат, который был нанят Айовским университетом, по каким-то причинам не подал заявку на патент.
В 1940 году Атанасов и Берри пригласили Мокли (физик из колледжа Урсинуса) в Айову «на помощь», после того как Атанасов прослушал его лекцию о «возможности использования аналоговых компьютеров для решения проблем метеорологии» в Пенсильвании. В 1941 году Мокли посетил дом Атанасова и они втроем 5 дней общались на тему цифровой вычислительной машины ABC, но материалы Атанасов попросил оставить все же в секрете. Так состоялась эта судьбоносная встреча Атанасова и Мокли.
Мокли
Мокли прибыл вечером в пятницу 13 июня из Вашингтона. Атанасов был готов показать свою частично собранную машину, не смотря на предупреждения жены о том, что Мокли ей показался не совсем честным человеком, а ABC не была еще запатентована. Мокли впечатлили пару вещей — идея использования конденсаторов в блоке памяти и метод пополнять их заряд раз в секунду, поместив их на вращающийся цилиндр.
Вот, что вспоминал Мокли о этой встрече и увиденной машине Атанасова — Берри:
«Я думал, что его машина гораздо хитроумнее, но так как она оказалась частично механической, в том числе в ней использовались вращающиеся коммутирующие переключатели, она никоим образом не была похожа на то, что я имел ввиду. Я больше не интересовался подробностями. Полумеханический характер машины Атанасова вызвал у меня довольно сильное разочарование. У него не было в планах ничего, что могло бы сделать машину более универсальной и позволило бы ей решать какие-либо другие задачи, кроме решения системы линейных уравнений».
«Поэтому, когда началось судебное разбирательство за первенство среди электронных вычислительных машин, в своих свидетельствах Мокли сказал, что данный визит для него значил не больше, чем посещение выставки, на которой он просто почерпнул кое-какие идеи». Главным отличием Мокли от Атанасова было его желание и умение работать в коллективе. В результате Мокли и его талантливая команда вошли в историю как изобретатели первого электронного компьютера. Да и потом, как утверждал Мокли это были его идеи, которые были дополнены идеями, опытом других талантливых ученых, во время беседы с ними, при посещении разных выставок. После посещения Атанасова, Мокли был приглашен пройти курс электроники в университете Пенсильвании. Все это сподвигло его на создание компьютера и уже к осени 1941 года Мокли доделал свою версию компьютера. Здесь уже начинается история ENIAK. Первым полностью электронный цифровой компьютер, который собирали при строгой секретности для военных целей в университете Пенсильвании.
Вернемся к Атанасову и его машине.
И так уже через три года к 1942 году машина была почти готова. Размер такой вычислительной машины был с письменный стол и насчитывала такая машина 300 электронных ламп. Проблемой был механизм для прожигания отверстий в перфокартах с помощью искры (он срабатывал через раз).
Пришел 1942 год, военные годы заставили отложить работу Атанасова над проектом ABC. Он был призван на службу на флот и был назначен главой Отдела акустики при Военно-морской Артиллерийской лаборатории (NOL) в Вашингтоне, штат Колумбия. Его зарплата составила 10 тысяч долларов и работал он тут над проблемой акустических мин, участвовал в испытании атомной бомбы на атолле Бикини. В это время вычислительная машина Атанасова пылилась в подвале в университете Айовы, была разобрана каким-то аспирантом, так как занимала много места. О ней было позабыто. Ни Атанасов, ни Берри не были уведомлены о том, что их детище было разобрано и только лишь третья его часть сохранилась.
В 1949 году Атанасов развелся со своей первой женой. Лура переехала с детьми в Денвер. В том же году Джон женился во второй раз на Алисе Гросби.
Даже если бы о АВС вспомнили, у данной машины были ограничения: процесс замедлялся за счет механически поворачивающихся ячеек памяти да и система прожигания отверстий в перфокарте тормозила работу такого компьютера. Для того, чтобы ускорить быстродействие такой вычислительной машины нужно было сделать ее полностью электронной и программируемой.
В 1945 году Артиллерийское ведомство обратилось к Джону Атанасову с запросом помочь в конструировании компьютера для Военно-морской Артиллерийской лаборатории. Атанасов отказался от проекта, аргументируя это тем, что он не сможет одновременно работать над компьютерным проектом и заканчивать работу в Отделе акустики NOL.
После окончания войны Атанасов вернулся к компьютерам. Он сожалел о том, что закинул работу над созданием компьютера, так как его работа была поистине революционной. До 1949 года он был главой отдела акустики NOL. В 1950–1951 году он был директором программы взрывов при NOL.
В 1952 году Джон Атанасов открыл фирму «Артиллерийская инженерная корпорация» в городе Фредерик, штат Мериленд, позже Атанасов работал консультантом по автоматизации в упаковочной фирме.
В один прекрасный день в 1954 году к Атанасову пришел адвокат фирмы IBM, с предложение доказать то, что именно он — Атанасов был первым, кто создал электронный компьютер, а проект ENIAC просто напросто был заимствован у проекта ABC. Атанасов решил побороться за первенство своего проекта.
»… Атанасов все более убеждался, что ENIAC была заимствована от его ABC и что стоит продолжать это дело. Более того, ему придавало силы признание его заслуг в других странах, в частности на родине его предков — Болгарии, которая в 1970 году наградила его орденом Кирилла и Мефодия I степени».
Приговор судьи звучал так:
«Эккерт и Мокли, — читал судья Ларсон, — не сами изобрели этот автоматический электронный цифровой компьютер, но вместо того позаимствовали эту идею у доктора Джона В. Атанасова, а поэтому патент ENIAC является недействительным».
Остаток жизни Джон Винсент Атанасов (после сердечного удара в 1975 году) провел на своей ферме около Монровил, штат Мериленд. Он умер 15 июня в 1995 году в возрасте 92 лет.
Хоть машина Атанасова и не была ни универсальной, ни программируемой, ни полностью электронной, ученый заслуживает считаться первопроходцем, тем, кто придумал первый частично электронный цифровой компьютер.