Происхождение вычислительных машин

Абстрактные машины, созданные математиками в первые десятилетия XX века, составляют важную часть родословного дерева современных компьютеров. Другие ветви этого дерева уходят далеко в прошлое. Действительно, поиск машин, которые выполняют алгоритмические задачи, имеет длинную историю.

Одним из первых вычислительных механизмов были счеты. Их история уходит корнями в античную Грецию и Рим. Это устройство очень просто, оно состоит из шариков, нанизанных на стержни, которые в свою очередь крепятся на прямоугольной рамке. Шарики двигаются вправо и влево на стержне, и их местоположение определяет хранящееся значение. Именно при помощи расположения шариков этот «компьютер» представляет и хранит данные. Контролирует выполнение алгоритма человек. Таким образом, счеты сами по себе являются просто системой хранения данных, которая должна быть объединена с человеком, чтобы стать полноценной вычислительной машиной.

Не так давно вычислительные машины были механическими. В число их изобретателей входят француз Блез Паскаль (1623-1662), немец Готфрид Вильгельм Лейбниц (1646-1716) и англичанин Чарльз Бэббидж (1792-1871). В этих машинах данные были представлены различными положениями регистров, причем ввод данных осуществлялся механическим установлением регистров в нужное положение. Выходные данные на машинах Паскаля и Лейбница можно было получить, наблюдая за конечным положением регистров, так же как мы читаем числа на счетчике пройденных километров автомобиля. В отличие от них Бэббидж работал над машиной (названной им Аналитической), которая бы распечатывала полученные значения на бумаге, так чтобы была исключена возможность ошибки при расшифровке результата.

Что касается способности следовать алгоритму, мы можем заметить возрастание гибкости в этих машинах. Машина Паскаля выполняла только операцию сложения. Следовательно, соответствующая последовательность шагов была включена в структуру машины. Подобным же образом в машине Лейбница алгоритмы были заключены в архитектуре машины, хотя она и предлагала разнообразные арифметические операции, из которых оператор мог выбирать. Разностная машина Бэббиджа (только одна демонстрационная модель этой машины была построена) подвергалась изменению для выполнения различных расчетов, а его Аналитическая машина (на постройку которой он не получил субсидий) должна была получать указания в виде отверстий на бумажных картах. Таким образом, Аналитическая машина Бэббиджа была бы программируемой. А его сторонник Августа Ада Байрон считается сегодня первым в мире программистом.

АВГУСТА АДА БАЙРОН

С тех пор как Министерство обороны Соединенных штатов назвало язык программирования в ее честь, Августа Ада Байрон, графиня Лавлейс, является предметом обсуждения в компьютерном сообществе. Ада Байрон прожила в некоторой степени трагическую жизнь, она умерла, когда ей не было и 37 лет (1815-1852). Ее жизнь осложняло слабое здоровье и тот факт, что она была диссидентом в обществе, которое ограничивало профессиональную деятельность женщины. Она была очарована машинами Чарльза Бэббиджа, когда стала свидетельницей демонстрации прототипа его Разностной машины в 1833 году. Ее вклад в развитие вычислительной техники состоит в переводе с французского языка на английский работ, обсуждавших проекты Аналитической машины. Бэббидж поддерживал ее начинания, побуждая дополнить эти переводы данными, описывающими применение машины, и примерами того, как можно программировать машину для выполнения различных задач. Энтузиазм Бэббиджа по отношению к работе Ады Байрон (он внес много предложений и, по-видимому, несколько примеров) объяснялся его надеждами на то, что ее публикация принесет субсидии для конструирования Аналитической машины (поскольку Ада Байрон была дочерью лорда Байрона, она занимала высокое положение в обществе и имела важные финансовые связи). Эти субсидии никогда не были получены, но работа Ады Байрон сохранилась. Считается, что она содержит примеры первых компьютерных программ. Таким образом, Ада Байрон признается сегодня первым в мире программистом.

Идея передачи алгоритма машине при помощи отверстий на бумаге не принадлежит Бэббиджу. Он заимствовал ее у Жозефа Жаккарда (1752-1834), построившего в 1801 году ткацкий станок, в котором шаги, которые должны быть выполнены во время ткацкого процесса, определялись расположением отверстий на бумажных картах (рис. 0.1). Алгоритм, которому следовал ткацкий станок, мог быть легко изменен для производства различных узоров на ткани. Другим исследователем, использовавшим идею Жаккарда, был Герман Холлерит (1860-1929), который применил этот способ кодирования информации в виде отверстий на бумажных картах для ускорения процесса составления таблиц во время переписи населения в Америке в 1890 году (именно эта работа Холлерита привела к созданию IBM). Впоследствии такие карты стали называться перфокартами и оставались распространенным способом управления машиной до 70-х годов XX века. На самом деле этот способ живет и сейчас, как показали проблемы, возникшие в 2000 году во время президентских выборов.

Технологии того времени не позволяли производить сложные механические машины, спроектированные Паскалем, Лейбницем и Бэббиджем, они требовали больших материальных затрат. Но с успехами в области электроники в начале XX века этот барьер был преодолен. Примером этого прогресса являются электромеханическая машина Джорджа Стибица, построенная в 1940 году компанией Bell Laboratories, и машина Mark I, собранная Говардом Эйкеном и группой инженеров IBM в 1944 году в Гарвардском университете (рис. 0.2). Эти машины были созданы с использованием электромеханических реле. Они устарели почти сразу же, как только были построены, потому что другие исследователи применяли технологию электронных ламп, чтобы создать полностью электронную машину. По-видимому, первой такой машиной была машина Атанасова-Берри, построенная в период с 1937 по 1941 год в колледже штата Айова (сейчас университет) Джоном Атанасовым и его ассистентом Клиффордом Берри. Другая машина, названная Colossus, была собрана под руководством Томми Флаверса в Англии для дешифровки кодов, которыми пользовались немецкие войска в конце второй мировой войны (на самом деле таких машин было построено около десяти, но условия военной секретности не позволили стать факту их существования частью «родословного дерева» компьютеров). Скоро последовали другие, более гибкие машины, такие как ENIAC (electronic numerical integrator and calculator - электронно-цифровой интегратор и вычислитель), разработанная Джоном Моучли и Проспером Эккертом в Электротехнической школе Мура университета штата Пенсильвания.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: