Цифровая вычислительная машина
Цифровая вычислительная машина (ЦВМ), вычислительная машина, преобразующая величины, представленные в виде набора цифр (чисел). Простейшие преобразования чисел, известные с древнейших времён, — это арифметические действия (сложение и вычитание). Но арифметические операции — лишь частный случай преобразований величин, заданных в цифровой форме, и в современных ЦВМ они составляют лишь небольшую часть всего набора операций, которые машина выполняет над числами.
Первыми устройствами для простейших вычислений служили абаки и счёты: с их помощью выполняли арифметические операции — сложение и вычитание (см. Вычислительная техника). Эти инструменты избавляли человека от необходимости помнить таблицу сложения и записывать промежуточные результаты вычислений, т.к. в те времена бумага (или её аналог) и пишущие инструменты были редкостью. Важным шагом в развитии вычислительных устройств явилось изобретение Б. Паскалем суммирующей машины (1641, по др. данным — 1643). В машинах Паскаля каждой цифре соответствовало определённое положение разрядного колеса, разделённого на 10 секторов. Сложение в такой машине осуществлялось поворотом колеса на соответствующее число секторов. Идея использовать вращение колеса для выполнения операции сложения (и вычитания) предлагалась и до Паскаля (например, профессором Тюбингенского университета В. Шиккардом, 1623), но важнейшим элементом в машинах Паскаля был автоматический перенос единицы в следующий, высший разряд при полном обороте колеса предыдущего разряда (так же, как при обычном сложении десятичных чисел в старший разряд числа переносят десятки, образовавшиеся в результате сложения единиц, сотни — от сложения десятков и т.д.). Именно это давало возможность складывать многозначные числа без вмешательства человека в работу механизма. Этот принцип использовался в течение почти трёхсот лет (середина 17 — начало 20 вв.) при построении арифмометров (приводимых в действие от руки) и электрических клавишных вычислительных машин (с приводом от электродвигателя).
Первые вычислительные машины выполняли следующие элементарные операции: сложение и вычитание, перенос единицы в следующий разряд при сложении (или изъятие единицы при вычитании), сдвиг (перемещение каретки вручную в арифмометрах, автоматически в электрических машинах), умножение (деление) осуществлялось последовательными сложениями (вычитаниями). При этом функции человека и машины в процессе вычислений распределялись следующим образом: машина выполняла арифметические операции над числами, человек управлял ходом вычислительного процесса, вводил в машину числа, записывал результаты (окончательные и промежуточные), искал по таблицам значения различных функций, входящих в расчёт. При таком распределении ролей повышение скорости выполнения машиной арифметических операций лишь незначительно увеличивало скорость вычислений в целом, поскольку процедуры, выполняемые человеком, составляли большую часть вычислительного процесса. Поэтому, несмотря на то, что техническая скорость электрических вычислительных машин в принципе допускала выполнение до 1000 арифметических операций в 1 ч, практически скорость вычислений составляла не более 1000 операций в течение 8-часового рабочего дня.
Шагом вперёд в развитии техники ЦВМ было создание счётно-перфорационных машин. В этих машинах все "человеческие" функции, кроме поиска по таблицам, возлагались, по существу, на машину. Правда, для ввода исходных данных их необходимо было предварительно нанести на перфорационные карты. Эта операция выполнялась человеком отдельно на специальном устройстве. В машину вводилась колода подготовленных перфокарт, и далее уже без вмешательства человека машина считывала содержащиеся в них данные и выполняла все необходимые вычислительные операции. Промежуточные результаты вычислений записывались в запоминающие регистры, окончательные печатались на бумаге (или выводились на перфокарты, а потом специальное устройство перепечатывало их с перфокарт на бумагу). Что касается управления вычислительным процессом, то порядок действий счётно-перфорационной машины задавался соответствующей коммутацией электрических связей на коммутационной доске. Т. о., в счётно-перфорационных машинах в зачаточном виде уже содержались все важнейшие элементы автоматической ЦВМ, работающей без участия человека, после того как необходимая подготовка для выполнения ею вычислительного процесса была закончена. Счётно-перфорационные машины имели арифметическое устройство, память (в виде колоды перфокарт и регистров для запоминания промежуточных результатов), устройство ввода (с перфокарт) и вывода данных. В этих машинах арифметические операции выполнялись так же, как и в арифмометрах, посредством механических перемещений, что весьма ограничивало их быстродействие. Но наиболее "узким местом" этих машин было управление вычислительным процессом. Поскольку управление (задание последовательности элементарных операций) осуществлялось путём соответствующих соединений различных клемм коммутационной доски с помощью проводов, то лишь несложные последовательности вычислительных операций могли быть "закоммутированы". Эти операции могли повторяться многократно, поэтому счётно-перфорационные машины особенно широко применялись в тех случаях, когда решение задачи сводилось к повторению простых наборов операций, например при решении задач бухгалтерского учёта, простых задач статистического анализа; самыми сложными для решения на счётно-перфорационных машинах были обыкновенные линейные дифференциальные уравнения второго порядка.
К 70-м гг. 20 в. счётно-перфорационные машины практически повсеместно вышли из употребления в связи с заменой их более совершенными и универсальными электронными ЦВМ. Но в историческом плане значение счётно-перфорационных машин состояло в том, что их применение позволило накопить опыт машинной обработки информации и понять, что же необходимо для создания автоматических ЦВМ. Автоматически действующая ЦВМ независимо от физического устройства, должна обладать следующими функциональными возможностями: выполнять операции (в т. ч. арифметические) над величинами ("словами"), заданными в цифровой форме; запоминать исходную информацию (исходные данные и описание вычислительного алгоритма — программу) и результаты вычислений; управлять вычислительным процессом, т. е. автоматически настраивать машину на выполнение очередной операции в соответствии с программой; "общаться с человеком", т. е. воспринимать от него исходную информацию и выдавать нужные ему результаты вычислений. Обычно эти функции выполняются соответствующими устройствами (рис. 1). Однако возможно также и частичное совмещение функций в одном устройстве, но в любом случае выполнение всех этих функций — обязательное условие для автоматической ЦВМ. Каждая ЦВМ должна иметь "цифровые элементы", обладающие конечным числом устойчивых состояний; число таких состояний должно быть равно числу цифр той системы счисления, которая принята в данной ЦВМ. Так, в настольных механических ЦВМ (например, арифмометрах) такими элементами служат т. н. цифровые колёса, принимающие десять определённых положений (в соответствии с десятичной системой счисления). Электронные цифровые элементы наиболее просто реализуются с двумя устойчивыми состояниями. Поэтому в электронных ЦВМ предпочтительна двоичная система счисления, в которой имеются лишь две цифры: "0" и "1". Переход на эту систему счисления не только облегчил представление чисел, но и существенно упростил выполнение операции над ними. Например, цифровой элемент сумматора в этом случае должен обладать такими свойствами: изменять состояние на противоположное каждый раз при поступлении единичного сигнала (соответствующего прибавлению 1) и, если цифровой элемент был уже в состоянии "1", одновременно с изменением своего состояния посылать единичный сигнал в цифровой элемент следующего, старшего разряда сумматора. Действие умножения сводится к многократным прибавлениям множимого и сдвигам (деление — к вычитанию и сдвигам). Существенно упрощаются в двоичной системе счисления и логические операции. Сколь-нибудь сложный вычислительный алгоритм содержит обычно разветвления вычислительного процесса, повторения вычислительных процедур, различные условия, налагаемые на точность вычислений, и многие др. указания. Машина должна "понимать" эти указания и сама "принимать решения" о своевременном их выполнении; такие действия машины не являются арифметическими, они предназначены для логического анализа ситуаций. Одна из самых обычных процедур машины: если имеет место такая-то ситуация, то следует выполнить такой-то шаг вычислительного алгоритма (команду программы), иначе нужно перейти к реализации некоторой др. команды. Включение в состав операций вычислительной машины помимо арифметических ещё и логических привело к тому, что возможности электронных ЦВМ вышли далеко за пределы их прямого назначения (арифметических вычислений) и ЦВМ стали универсальными преобразователями дискретной информации. А т.к. непрерывная информация практически всегда может быть аппроксимирована дискретной, то можно сказать, что современные электронные ЦВМ являются универсальными преобразователями информации любого вида.
Первая электронная ЦВМ — ЭНИАК была построена в 1945 и вступила в строй в 1946 в США. При создании первых электронных ЦВМ не было необходимости изобретать новые элементы специально для них: такие элементы уже использовались в системах автоматического управления и особенно в радиолокационных установках. Требовалось лишь приспособить их для использования в ЦВМ. Цифровым элементом первых электронных машин был триггер, собранный на электронных лампах (двух триодах). Выбор такого цифрового элемента привёл к тому, что первая электронная ЦВМ содержала большое число электронных ламп и была весьма ненадёжной в работе. Всё же именно с ЭНИАК началась история электронных ЦВМ. Значение ЭНИАК в развитии вычислительной техники определяется прежде всего тем, что она показала — задача создания автоматической ЦВМ, работающей по заранее заданной программе, в принципе осуществима, для чего необходима лишь её технологическая доработка. С этого момента во многих странах начались энергичные поиски, направленные на создание надёжных электронных цифровых элементов и разработку рациональных структур ЦВМ.
Поисковый этап в развитии ЦВМ закончился к началу 50-х гг. созданием типичной ЦВМ 1-го поколения, в которой цифровым элементом оперативной памяти служит кольцевой ферритовый сердечник с прямоугольной петлёй гистерезиса, обладающий двумя устойчивыми состояниями остаточной намагниченности, а основным элементом устройства управления и арифметического устройства был триггер на электронных лампах. Надёжность ЦВМ 1-го поколения была значительно выше, чем у первых ЦВМ; кроме замены триггеров в памяти ЦВМ ферритовыми сердечниками, повышение надёжности ЦВМ — результат целого ряда технологического усовершенствовании. Т. к. по чисто технологическим причинам создание быстродействующего ферритового запоминающего устройства большого объёма в тот период было неосуществимо, то в ЦВМ, наряду с запоминающими устройствами на ферритовых сердечниках, использовались (и используются до сих пор) относительно медленные периферийные или внешние запоминающие устройства на магнитных лентах, магнитных дисках, магнитных барабанах, ёмкость которых ограничивается, вообще говоря, лишь размерами занимаемой ими площади. Непрерывно растущая сложность задач, решаемых с помощью ЦВМ, требовала усложнения структуры вычислительных машин, увеличения числа электронных элементов, что сопровождалось увеличением габаритов ламповых машин и потребляемой ими мощности. Несмотря на технологические усовершенствования, электронная лампа оставалась самым ненадёжным элементом ЦВМ 1-го поколения; использование ламп стало тормозить дальнейшее развитие техники ЦВМ.
В середине 50-х гг. в ЦВМ на смену электронным лампам пришли полупроводниковые приборы — диоды и транзисторы. Т. к. срок службы полупроводниковых приборов значительно выше, чем у электронных ламп, то с переходом на новую элементную базу существенно повысилась надёжность ЦВМ, заметно уменьшились и габариты машин. С внедрением цифровых элементов на полупроводниковых приборах началось создание ЦВМ 2-го поколения.
Усовершенствование вычислительных машин было направлено на повышение их быстродействия; у машин 1-го поколения быстродействие выросло от нескольких сотен операций в 1 сек до нескольких десятков тыс. операций в 1 сек; первые транзисторные машины имели быстродействие порядка 5 тыс. операций в 1 сек и в процессе развития достигли уровня 10—15 млн. операций в 1 сек (ЦВМ CDC-7600, США).
Однако при той организации вычислительного процесса, которая использовалась в ЦВМ 1-го поколения, дальнейшее увеличение быстродействия уже практически не повышало производительности машин. В ЦВМ вводили программу решения некоторой задачи и до окончания решения и вывода результатов вычислений нельзя было вводить новую задачу. Но во всяком вычислительном процессе, помимо быстрых операций (например, арифметических или некоторых логических операций), имеются и медленные операции, выполняемые механическими устройствами: считывание исходной информации, вывод на печать результатов вычислений, пересылки информации из внешней памяти в оперативную и др. По мере повышения быстродействия медленные операции занимали всё большую часть общего времени работы машины, тогда как "быстрые" устройства машины (например, арифметическое устройство) простаивали и, т. о., усовершенствования, касавшиеся только электронных элементов, не давали сколько-нибудь заметного роста производительности ЦВМ. Поэтому в 60-х гг. произошло существенное изменение структуры ЦВМ, в результате которого различные устройства получили возможность работать независимо друг от друга по разным программам. Это позволило одновременно решать на машине несколько задач (см. Мультипрограммирование). Например, в то время как в ходе решения одной из задач осуществляется медленная операция (иногда она длится несколько сек), арифметическое устройство успевает решить не одну, а несколько задач. Наиболее производительные из современных ЦВМ одновременно могут обрабатывать несколько десятков задач. Работой ЦВМ и формированием потока задач управляет особая программа — операционная система. Мультипрограммный режим не ускоряет решение одной определённой задачи, но весьма существенно повышает общую производительность ЦВМ.
Следующий этап в развитии мультипрограммных режимов работы — переход к ЦВМ коллективного пользования (см. Сеть вычислительных центров). Ввод задач в машину не обязательно должен производиться с одного устройства ввода, таких устройств может быть несколько, и располагаться они могут не в машинном зале, а непосредственно у потребителей "машинных услуг", часто удалённых от ЦВМ на значительное расстояние. С помощью таких устройств (терминалов) по линиям связи (обычно телефонным) задачи вводят в машину, которая сама определяет их очерёдность, время их решения. Результаты решения также по линиям связи направляются на терминалы, которые должны иметь выводные устройства, печатающее устройство или дисплей (см. Отображения информации устройство).
Создание мультипрограммных машин привело к развитию систем ЦВМ коллективного пользования, объединяющих в единое целое несколько машин с различной производительностью и обслуживающих одновременно десятки и сотни потребителей, расположенных не только в разных городах, но нередко в различных странах. Такое использование ЦВМ требовало расширения их функциональных возможностей и, следовательно, усложнения их структуры; полупроводниковая техника уже не отвечала требованиям развития ЦВМ как в отношении габаритов и потребления энергии, так и в отношении их технологичности и надёжности.
На смену ЦВМ 2-го поколения в 60-х гг. пришли машины 3-го поколения, построенные на интегральных микросхемах (см. Интегральная схема). В ЦВМ 2-го поколения элементарный блок собирался из отдельных деталей (диодов, транзисторов, конденсаторов, резисторов и т.п.), соединяемых посредством пайки. Такие блоки, хотя и значительно меньших габаритов, чем ламповые панели машин 1-го поколения, всё же имели заметные размеры (до нескольких десятков, иногда сотен см3), а места пайки являлись источником частых отказов. Применение в ЦВМ интегральных микросхем позволило повысить насыщенность блоков ЦВМ без увеличения их физических размеров. Если первые интегральные микросхемы (ИС) заменяли один блок ЦВМ 2-го поколения, то большие интегральные микросхемы (БИС) — несколько десятков таких блоков, и степень их насыщения (интеграции) непрерывно растет. К электронным ЦВМ 4-го поколения часто относят машины, построенные на БИС. Однако такая классификация вряд ли обоснована, т.к. нет чёткой границы между "обычными" интегральными микросхемами и "средними", между "средними" и "большими", между "большими" и "сверхбольшими". Значительно более важный фактор в развитии электронных ЦВМ — изменение основных элементов оперативной памяти. Если ЦВМ 1-го, 2-го и 3-го поколений имеют в своём составе запоминающие устройства на ферритовых сердечниках, то в ЦВМ 4-го поколения в качестве элементов памяти находят применение полупроводниковые приборы, изготавливаемые по технологии, аналогичной технологии изготовления интегральных микросхем. Образцы такой памяти небольшого объёма создавались и использовались (начло 70-х гг.) как "сверхбыстродействующая память"; в середине 70-х гг. наметилась тенденция создания оперативной памяти на полупроводниках и использования ферритовых запоминающих устройств в качестве дополнительной "медленной" памяти.
Для 70-х гг. весьма характерно явление "поляризации" в технике ЦВМ: с одной стороны, применение вычислительных систем коллективного пользования приводит к созданию сверхмощных машин с быстродействием порядка нескольких десятков млн. операций в секунду и с очень большими объёмами оперативной памяти; с др. стороны, для индивидуального использования, а также для управления технологическими процессами и обработки экспериментальных данных в исследовательских лабораториях создаются малые ЦВМ (или мини-ЦВМ, миникомпьютеры) — малогабаритные машины (включая настольные) со средним быстродействием. Мини-ЦВМ, соединённые линиями связи с мощными вычислительными системами коллективного пользования, могут применяться как терминалы. Приставка "мини" относится главным образом к размерам машин, т. к., например, по производительности малые ЦВМ нередко превосходят самые мощные машины 1-го поколения. Наметилась также тенденция к сокращению выпуска машин средней мощности, поскольку мини-ЦВМ могут обеспечить решение большей части задач индивидуального потребителя, а для решения сложных задач выгоднее обратиться к вычислительным системам коллективного пользования. В конце 60 — начале 70-х гг. сверхмощные ЦВМ становятся мультипроцессорными, т. е. в одной такой машине сосредоточивается несколько процессоров, функционирующих одновременно (параллельно). Преимущество мультипроцессорных систем для одновременного решения многих задач очевидно, но наличие в одной вычислительной системе нескольких процессоров в принципе позволяет расчленить также и процесс решения одной задачи, поскольку каждый реальный вычислительный алгоритм содержит ряд ветвей, выполнение которых может проводиться независимо друг от друга, что даёт весьма большое сокращение времени решения задачи. Мультипроцессорные ЦВМ, технологической основой которых являются БИС, следует, по-видимому, отнести к машинам 4-го поколения.
ЦВМ находят всё большее применение в различных сферах человеческой деятельности. Важнейшие области их использования (конец 70-х гг.): научно-технические расчёты, в основе которых лежат математические методы; автоматизация проектирования технических объектов; экономические расчёты (экономико-статистический анализ, демографическая статистика, планирование, исследование операций, бухгалтерский и материальный учёт); информационно-справочная служба (научно-техническая информация, библиотечная, диспетчерская служба и др.); математическое моделирование в "описательных" науках — биологии, медицине, геологии, социологии и др.; автоматическое управление технологическими процессами, транспортными средствами, а также сложными экспериментальными установками.
Лит.: Китов А. И., Криницкий Н. А., Электронные цифровые машины и программирование, 2 изд., М., 1961; Мультипроцессорные вычислительные системы, под ред. Я. А. Хетагурова, М., 1971; Каган Б. М., Каневский М. М., Цифровые вычислительные машины и системы, 2 изд., М., 1973; Бардиж В. В., Магнитные элементы цифровых вычислительных машин, 2 изд., М., 1974; Апокин И. А., Майстров Л. Е., Развитие вычислительных машин, М., 1974; Преснухин Л. Н., Нестеров П. В., Цифровые вычислительные машины, М., 1974; Королев Л. Н., Структуры ЭВМ и их математическое обеспечение, М., 1974.
А. А. Дородницын.
Следующие
Цифровая индикаторная лампа, цифровой индикатор, электровакуумный прибор для визуального воспроизведения информации (представлен… читать дальше
Цифровая система управления, автоматическая система управления, в которой осуществляется квантование сигналов по уровню и по вре… читать дальше
Цифровое измерительное устройство, средство измерений, в котором значение измеряемой физической величины автоматически представл… читать дальше