Вычислительная машина
Вычисли́тельная маши́на, устройство или комплекс устройств, предназначенных для механизации и автоматизации процесса обработки информации (вычислений). По способу представления обрабатываемой информации вычислительные машины делят на машины непрерывного действия – аналоговые вычислительные машины (АВМ) и машины дискретного действия – цифровые вычислительные машины (ЦВМ). В АВМ информация представлена в виде непрерывно изменяющихся переменных, выраженных физическими величинами (угол поворота вала, сила электрического тока, напряжение и т. п.). С распространением электронно-вычислительных машин (электронных вычислительных машин, ЭВМ) роль аналоговых машин постепенно уменьшалась. В ЦВМ информация представлена в виде набора дискретных значений (чисел) какой-либо физической величины. Решение задачи в ЦВМ сводится к последовательному выполнению операций над числами, которые представлены совокупностью элементов, каждый из которых может принимать ряд устойчивых состояний, соответствующих определённой цифре числа (число этих состояний определяется системой счисления, которая принята в данной ЦВМ). По применяемой элементной базе ЦВМ делят на домеханические, механические, электромеханические (релейные), электронные.
Домеханические вычислительные машины
Человек с древнейших времён применял пальцевый счёт, счёт с помощью зарубок и различных предметов (камешков, зёрен и др.), узелковый счёт. В середине 1-го тыс. до н. э. появился первый цифровой счётный прибор – абак (Древняя Греция), который (в форме счёта на линиях с помощью жетонов) применялся для арифметических вычислений в Западной Европе до 18 в. Аналоги абака существовали и в других странах: в Китае – суанпань, в Японии – соробан, в России – счёты. В 1617 г. появилось описание первого немеханического вычислительного устройства, которое получило название «счётные палочки Непера». Оно состояло из тонких пластин или брусков, на которые особым образом записывалась таблица умножения. Простые манипуляции с брусками позволяли умножать и делить большие числа. Основанные на том же принципе устройства предлагались позднее в России (бруски Иоффе, 1881), во Франции (бруски Женая-Люка, 1885) и др.
Механические вычислительные машины
Первые механические ЦВМ, предназначенные для выполнения арифметических операций, изобретены в 17 в. Их появление в значительной степени явилось следствием общефилософской установки того времени, согласно которой в основе устройства мироздания лежат законы механики. Поэтому механические вычислительные машины должны были показать, что умственная деятельность человека также (хотя бы отчасти) может быть механизирована. Механические вычислительные машины были созданы В. Шиккардом (1623, Германия, не сохранилась), Б. Паскалем (1642) и Г. В. Лейбницем (1672). В 18 в. Дж. Полени (1709, Италия), Ф. М. Ган (1774, Германия), Ч. Стенхоуп (1775) и другие реализовали различные проекты вычислительных машин. Однако малая надёжность и высокая стоимость препятствовали их распространению.
В 1821 г. в Париже Ш. К. Тома де Кольмар организовал первое мелкосерийное производство арифмометров, конструкция которых продолжала совершенствоваться почти до середины 20 в. К началу 20 в. номенклатура выпускаемых вычислительных машин была уже достаточно велика, кроме арифмометров большим спросом пользовались и другие механические вычислительные машины, например, простые и дешёвые карманные сумматоры Куммера (Россия, 1846), Ч. Г. Вебба (США, 1868). Подобные устройства выпускались в разных странах вплоть до 1970 г. В 1884 г. американская фирма NCR наладила производство кассовых аппаратов, которые надолго стали самым массовым видом вычислительных машин. Все эти машины применялись для решения достаточно простых задач с ограниченным объёмом вычислений. Другой вид вычислительных машин – специализированный. Разностные машины предназначались для табулирования функций, аппроксимированных полиномом -й степени (где ). Первым проектом такой вычислительной машины была разностная машина Ч. Бэббиджа (1821–1833, не закончена). Созданные позднее разностные машины П. и Г. Шейцев (1853, Швеция) и М. Виберга (1863, Швеция) применялись для расчёта математических таблиц и были первыми вычислительными машинами, снабжёнными устройством для печати результатов. Они стали первыми вычислительными машинами, которые выполняли достаточно длинную последовательность арифметических операций автоматически. Известны также разностные машины Дж. Гранта (1876, США) и К. Гамана (1909, Германия).
Идея создания универсальной ЦВМ принадлежит Ч. Бэббиджу. В 1834 г. он начал работу над проектом аналитической машины, первой вычислительной машины с программным управлением. Её конструкция, предвосхитившая структуру современных компьютеров, включала арифметическое устройство, устройство для хранения чисел, печатающее устройство. Вычисления должны были производиться специальным устройством в соответствии с программой, записанной на перфокартах. Леди Ада Лавлейс, написавшая несколько программ для аналитической машины, признана первым в мире программистом. Хотя проект Бэббиджа не был реализован, он послужил толчком к разработке других аналитических машин, в т. ч. механической – П. Ладгейта (1909, Великобритания, не построена) и электромеханической – Л. Торрес-и-Кеведо (Испания, 1914).
Электромеханические вычислительные машины
К концу 19 в. сложился достаточно широкий круг задач (экономические, статистические, научно-технические), требующих большого объёма вычислений. В 1889 г. Г. Холлерит создал счётно-перфорационные машины (СПМ), первоначально предназначавшиеся для обработки статистической информации. Исходные данные (вручную с помощью перфоратора) переносились на перфокарты. Набор подготовленных перфокарт вводился в табулятор, который в автоматическом режиме считывал данные и выполнял необходимые вычислительные операции. Порядок выполнения операций задавался установкой электрических связей на коммутационной доске. Промежуточные результаты записывались в запоминающие регистры, окончательные результаты печатались или выводились на перфокарты. Счётно-перфорационные машины содержали арифметическое устройство, память (колода перфокарт и регистры для запоминания промежуточных результатов), устройства ввода (с перфокарт) и вывода данных, т. е. включали все элементы архитектуры автоматических ЦВМ. К 1930 г. СПМ занимали доминирующее положение в области обработки больших массивов числовых данных, однако выполнение арифметических операций механическим способом ограничивало их производительность. В СПМ, как и в механических вычислительных машинах, использовалась десятичная система счисления, исключением было только множительное устройство Т. Фаулера (1844, Великобритания), работавшее в уравновешенной троичной системе.
Первую попытку применить электромагнитное реле для построения ЦВМ предпринял А. Маркванд (США) в 1885, разработавший проект релейной логической вычислительной машины (не был реализован). В начале 1930-х гг., когда в системах телефонной связи уже широко применялись электромагнитные реле, было построено несколько специализированных релейных вычислительных машин. Вслед за ними – универсальные релейные вычислительные машины с программным управлением: двоичная машины Z-3 К. Цузе (1941), серия релейных машин Дж. Стибица (1940–46, США), десятичная машина Mark I Г. Айкена (1944). Их продолжали строить вплоть до конца 1950-х гг. в ФРГ (К. Цузе), СССР (РВМ-1 Н. И. Бессонова, 1957) и других странах. Однако электромеханические вычислительные машины уже не могли обеспечить требуемую вычислительную мощность, и дальнейшее развитие вычислительных машин определила электронная техника.
Электронные вычислительные машины
Элементной базой ЭВМ первого поколения (1945–1955) были вакуумные электронные лампы. До 1930-х гг. электронные вакуумные и газонаполненные лампы использовались главным образом в радиотехнике, но в 1931 г. английский физик Ч. Уинн-Уильямс разработал первые счётчики импульсов (для устройств, регистрирующих заряженные частицы) на тиратронах, открыв тем самым новую область применения электронных ламп. В 1939–1942 гг. Дж. В. Атанасов и К. Берри (США) построили специализированную цифровую электронную вычислительную машину, работавшую в двоичной системе счисления и предназначенную для решения систем линейных алгебраических уравнений. Специализированная электронная вычислительная машина Colossus для расшифровки секретных немецких радиограмм создана в Великобритании в 1943 г. Первая универсальная ЭВМ ENIAC (1946, США, Дж. У. Мокли, Дж. П. Эккерт) выполняла 300 операций умножения (или 5000 операций сложения) многоразрядных чисел в секунду. Машина имела огромные размеры и весила 30 т, потребляемая мощность составляла около 160 кВт, в электронной схеме было задействовано до 18 000 электронных ламп 16 основных типов. Большое внимание приходилось уделять системе охлаждения, т. к. лампы выделяли много тепла. Опыт работы над ENIAC позволил Дж. фон Нейману определить общие требования к конфигурации вычислительной машины, а именно: ЭВМ должна состоять из арифметического устройства, устройства управления, устройства ввода-вывода и памяти. Он также сформулировал требования, которым должна удовлетворять универсальная вычислительная машина (т. н. принципы фон Неймана), важнейшими из которых являлись хранение машиной программы в запоминающем устройстве (памяти) и программное управление работой вычислительной машины. Первая ЭВМ с хранимой в памяти программой – EDSAC (Великобритания, 1949, М. Уилкс), в СССР – МЭСМ [Малая Электронная Счётная Машина (Макет Электронной Счётной Машины), 1950, под руководством академика С. А. Лебедева]. К первому поколению ЭВМ относят также EDVAC (Мокли и Эккерт, 1952), SEAC (1950), SWAC (1950), Whirlwind (1951), М-1 и М-2 (И. С. Брук, 1951 и 1952 соответственно) и др. Особое место среди них занимает первая и единственная в мире с троичной системой счисления ЭВМ «Сетунь» (Н. П. Брусенцов, 1958). В ЭВМ первого поколения первоначально использовалась память на основе ртутных линий задержки и электронно-лучевых трубок, позднее – память на магнитных сердечниках и накопители на магнитных лентах; процессоры выполняли как вычислительные операции, так и операции ввода-вывода, пересылки данных между запоминающими устройствами и др., что значительно снижало производительность ЭВМ. Программы для них писали на языке низкого уровня, средства автоматизации программирования практически отсутствовали. Эти машины отличались невысокой надёжностью, потребляли большое количество электроэнергии и имели значительные габариты.
В машинах второго поколения (1955–1965) электронные лампы были заменены полупроводниковыми диодами и триодами (транзисторами). Новая технология позволила повысить надёжность и производительность ЭВМ, значительно уменьшить её габариты и энергопотребление. Первая бортовая ЭВМ на полупроводниковой элементной базе (для межконтинентальной баллистической ракеты ATLAS) создана в 1955 г. в США. Наряду с памятью на магнитных сердечниках стали использовать накопители на магнитных дисках. В состав ЭВМ были включены процессоры ввода-вывода, позволявшие увеличить производительность за счёт совмещения операций ввода-вывода с вычислениями в центральном процессоре. Появились языки программирования высокого уровня (Fortran, Algol-60, Cobol, Lisp и др.), а также компиляторы с них, что значительно повысило эффективность программирования. Этой же цели служили наборы библиотечных программ. Процессы управления решением задач и распределения ресурсов ЭВМ были возложены на специальные служебные программы, ставшие ядром будущих операционных систем (ОС). Наиболее известными ЭВМ второго поколения стали Stretch (1961), Atlas (Т. Килберн, 1962), Burroughs B-5000 (1961), CDC 6600 (С. Крей, 1964). В СССР серийное производство транзисторных ЭВМ началось в 1961 (Раздан-2), лучшей отечественной вычислительной машиной этого поколения была БЭСМ-6 (С. А. Лебедев, 1965–1967), в которой нашёл воплощение целый ряд прогрессивных архитектурных решений, во многом предвосхитивших архитектурные особенности машин третьего поколения.
ЭВМ третьего поколения (1965–1980) выполнялись на интегральных схемах, содержавших в одном модуле десятки транзисторов, резисторов и диодов, благодаря чему уменьшились габариты, снизилась потребляемая мощность, увеличилась производительность и надёжность вычислительных машин. Впервые стали производиться относительно недорогие мини-ЭВМ (PDP-8, 1965; ряд машин PDP-11, 1970; Vax-11/780, 1978), которые нашли применение как при решении вычислительных задач, так и в различных системах управления. Самыми известными большими ЭВМ этого поколения стали программно совместимые машины семейства IBM System/360 (1964) и IBM System/370 (1970) Дж. Амдала. Данная серия оказала большое влияние на дальнейшее развитие ЭВМ общего назначения во всём мире. Их аналогом в России были вычислительные машины серии ЕС ЭВМ (1971, Единая система ЭВМ стран социалистического содружества). Отличительная особенность ЭВМ третьего поколения – наличие развитых ОС, обеспечивающих совместное использование ресурса ЭВМ несколькими пользователями.
Конструктивно-технологической основой четвёртого поколения ЭВМ (около 1980) стали большие и сверхбольшие интегральные схемы (БИС и СБИС), в которых на одной плате размещались десятки и сотни тысяч, а затем миллионы транзисторов. На рубеже 1970-х гг. создан процессор на одном кристалле (чипе). Первый микропроцессор Intel 4004 (1971, США) содержал 2250 элементов. Микропроцессор Intel 8080 (1974), ставший стандартом микрокомпьютерной технологии своего времени, содержал уже 4500 элементов и послужил основой для создания первых персональных компьютеров (ПК). В 1979 г. (США) выпускается один из самых мощных и универсальных микропроцессоров – 16/32-битный (16-разрядная внешняя шина данных, 32-разрядные архитектурные регистры, 24-разрядная шина адреса) микропроцессор Motorola 68 000 c 70 000 элементами, ставший основой линеек множества производителей ПК (Apple, Amiga, Atari) и рабочих станций под управлением UNIX (NeXT, Sun, Apollo). Массовый выпуск ПК полностью изменил всю структуру рынка вычислительных машин и открыл новые горизонты их применения. Наряду с ПК большое распространение получили встроенные и мобильные вычислительные устройства на основе простых микропроцессоров, которые, например, применяются в разнообразных бытовых приборах (телевизоры, фотоаппараты, мобильные телефоны и др.). В последнее время всё большее значение приобретают компактные персональные мобильные устройства, такие как планшеты и смартфоны, возможности и вычислительная мощность которых уже не уступают многим их современникам из ПК начального уровня. Тем не менее создание мощных многопроцессорных вычислительных систем с высокой производительностью остаётся важнейшим направлением развития вычислительных машин, т. к. сохраняется тенденция к расширению круга задач, требующих высокоскоростной обработки больших объёмов данных.
Предполагается, что переход к вычислительным машинам пятого поколения будет определяться в первую очередь развитием интеллектуального человеко-машинного интерфейса (распознавание речи, образов) и логического программирования для создания баз знаний и систем искусственного интеллекта. При этом возможность создания компьютеров, производительность которых на много порядков превышала бы возможности современных вычислительных машин, часто связывается с использованием иных физических принципов их работы (оптические компьютеры, квантовые компьютеры и др.).
См. также Вычислительная техника, Нейрокомпьютер.