Немного истории

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

Но настоящая потребность в автоматизации вычислений возникла в средние века в связи с резко возросшими в этот период торговыми операциями и океанским судоходством. Торговля требовала больших денежных расчетов, а судоходство – надежных навигационных таблиц.

Первые эскизы счетной машины создал Леонардо да Винчи (около 1500 года). А первые сведения о работающей счетной машине относятся к 1646 году (Германия). Но подробностей устройства этой счетной машины не сохранилось. В 1646 году во Франции Паскаль создал механическое устройство, которое складывало и вычитало многозначные числа. В 1673 году в Германии Лейбниц строит счетную машину, выполняющую все четыре арифметических действия. Он же предложил использовать двоичную систему счисления для нужд вычислительной математики. В этот период были созданы и другие счетные машины. Все они были построены в одном экземпляре (поскольку создавались десятки лет) и не могли долго работать – слишком сложны были их механизмы и слишком примитивна технология их изготовления. Только в 1820 году был налажен серийный выпуск (сотни штук в год) арифмометров конструкции Томаса де Кальмера. Вычисления, состоящие из последовательности арифметических операций, все еще лежали за пределами возможностей счетной машины.

В 1834 году Ч. Бэббидж разработал проект счетной машины, позволяющей реализовать вычисления любой сложности. Машина была задумана как механическая. Но Ч. Бэббиджа можно назвать пророком, поскольку его "аналитическая" машина стала прообразом ЭВМ, появившейся 100 лет спустя. Его машина содержала механический эквивалент практически всех основных устройств простейшей ЭВМ: память ("склад" на 1000 чисел по 50 десятичных знаков), арифметическое устройство ("мельница"), устройство управления, устройства ввода и вывода информации. Последовательность выполнения операций и пересылки чисел между устройствами задавалась программой на перфокартах Жаккарда (1804), которые использовались для управления работой ткацких станков. Кроме того, в машине Бэббиджа предусматривалась возможность изменения программы в зависимости от результата вычислений. Говоря современным языком, имелись команды условных переходов. Интересно отметить, что Бэббидж изобрел наиболее эффективный способ сложения чисел – сложение по схеме со сквозным переносом. Эту машину Бэббидж строил всю оставшуюся жизнь (до 1871 года), но создал только ее отдельные узлы. В то же время (50-е годы прошлого столетия) благодаря трудам английского математика Ады Лавлейс зародилось машинное программирование. Ада Лавлейс пыталась написать программы к еще не созданной счетной машине Бэббиджа.

В конце XIX –начале XX века начали появляться электромеханические счетно-аналитические машины для выполнения расчетно-бухгалтерских и статистических операций. Сильным толчком к развитию таких устройств стал конкурс, объявленный в США при проведении переписи 1888 года. В нем победил табулятор Холлерита, который явился родоначальником целого семейства электронно-механических машин для обработки статистических данных. В 1898 году Холлерит организовал фирму, которая поставляла такие машины всему миру. Эти машины непрерывно совершенствовались: в 1913 году создан табулятор, печатающий результаты; в 1921 году к нему добавлена коммутационная доска, на которой хранилась программа обработки данных, считываемых с различных позиций перфокарты.

Первые вычислительные машины в современном смысле появились в конце 30-х – начале 40-х годов. В 1936 -1937 году К. Цузе (Германия) спроектировал машину с программным управлением. В 1941 году она была создана (машина на электромагнитных реле). Это первая в мире ЭВМ с программным управлением. Программа наносилась на перфоленту и целиком вводилась в машину. После этого оператор уже не мог влиять на последовательность выполнения команд программы. Поскольку перфолента двигалась в одну сторону, все циклы записывались в развернутом виде, т.е. в виде последовательности групп команд.

В 1937 году Г. Айкин (США) разработал проект электромеханической универсальной ЭВМ с программным управлением. Она была построена в 1944 году фирмой IBM и названа "Марк-1". В 1947 году под руководством Айкина построена более мощная машина "Марк-2". В ней для хранения чисел и выполнения операций использовано 16000 электромеханических реле. В этот период был разработан целый ряд подобных релейных вычислительных машин, одна из которых практически полностью повторяла "аналитическую" машину Бебиджа.

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

В этот же период начали появляться машины, построенные на электронных лампах, причем первоначально лампы стали использоваться в простейших счетчиках импульсов. На них строились схемы с двумя устойчивыми состояниями, впоследствии названные триггерами (впервые подобная схема была разработана в 1918 году Бонч-Бруевичем). Исследуя свойства триггеров, американские ученые
Дж. Моучли и Д. Эккер пришли к выводу о целесообразности использования в вычислительных машинах вместо электромеханических реле ламповых триггеров. В 1946 году под их руководством построена вычислительная машина "ЭНИАК" для баллистических расчетов. Она содержала 18000 электронных ламп и 1500 реле. Использование электронных ламп позволило резко (на два порядка) повысить скорость выполнения операций.

Анализируя работу этой машины, математик Дж. Нейман сформулировал основные концепции организации ЭВМ. В соответствии с этими концепциями началась разработка ЭВМ "ЭДВАК" – прообраза современных ЭВМ. Она была построена в 1950 году. А в 1949 году в Англии была введена в эксплуатацию первая в мире ЭВМ с хранимой в памяти программой – "ЭДСАК", созданная под руководством М. Уилкса.

Вычислительные машины "ЭДВАК" и "ЭДСАК" положили начало первому поколению ЭВМ – поколению ламповых машин. С начала 50-х годов было осуществлено много проектов ЭВМ, в каждом из которых применялись новые типы устройств, способы управления вычислительным процессом и обработки информации. Особое внимание уделялось улучшению характеристик памяти, поскольку в ламповых ЭВМ она была незначительной. Так, в 1952 г. впервые были использованы ферритовые сердечники.

На этом закончим рассмотрение истории развития вычислительных машин и перейдем к принципам действия ЭВМ.