ЭЛЕКТРОННЫЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ
Электронная вычислительная машина — это «такая машина, которая оперирует с символами в соответствии с заданными правилами и работает заранее определенным образом на основе самоуправления.
Выражаясь техническим языком, вычислительная машина — это автоматическое быстродействующее электронное цифровое устройство обработки данных» [1]. Чтобы понять работу оборудования, используемого для электронной обработки данных, рассмотрим прилагательные в приведенной цитате. Как уже упоминалось, вычислительные машины были созданы главным образом с целью ускорения вычислений для научных проблем, возникших во время второй мировой войны. Первые счетнорешающие устройства позволили значительно сократить объем работ, выполняемых человеком, и увеличить производительность оборудования, однако скорость вычислений была ограничена скоростью работы механических частей этих устройств, что и определяло относительно невысокую верхнюю границу скорости вычислений. Один из основных принципов, использованных при создании ЭВМ, заключался в возможности управлять потоком электронов, которые действуют как сигналы, циркулирующие в вычислительной машине. Числа и буквы представляются в виде последовательности электронных импульсов или сигналов другого вида. Управляемое движение (поток) таких символических сигналов является основой работы электронной цифровой вычислительной машины.Другим важным моментом в определении вычислительной машины является слово «быстродействующая», так как повышение скорости вычислений было основной задачей при разработке вычислительных машин. В настоящее время ЭВМ работают с огромной, просто фантастической скоростью, и в ближайшем будущем их быстродействие, несомненно, станет еще выше. Все возрастающая скорость вычислений и все увеличивающаяся емкость запоминающих устройств (памяти) позволяют вычислительной машине стать еще более эффективным инструментом для решения любых задач в системах обработки'данных.
Термин цифровая противопоставляется термину аналоговая, что указывает на принадлежность к двум разным классам вычислительных машин.
Аналоговые машины используют в качестве средства решения задач физическую аналогию, которая моделируется с помощью электронных устройств. Цифровая вычислительная машина оперирует с математическими символами (чаще всего используется двоичная система счисления).Термин автоматическая отражает возможность самоуправления. Внутри вычислительной машины хранятся программы, состоящие из списков команд, которые определяют последовательность выполняемых операций при обработке данных или проведения вычислений. Такие программы заранее тщательно разрабатываются с учетом всех элементарных операций, имеющих место при любой расчетной работе. Отработанная программа является управляющим элементом системы обработки данных. Во время работы машины программа в соответствии с заранее установленными правилами может быть модифицирована, и, таким образом, работа машины будет соответственно изменена в зависимости от значений входных данных. Именно это свойство вычислительной машины можно сравнить с управлением при помощи обратной связи в автоматическом производственном процессе. Поэтому электронные системы обработки данных можно рассматривать с точки зрения автоматизации управленческого труда. Принцип применения самоуправляющихся программ, которые хранятся в оперативном запоминающем устройстве внутри машины и используются для управления ее работой, ставит электронно-вычислительную машину намного выше всех предшествующих ей устройств. В этом смысле она является не просто следующим шагом на длительном пути совершенствования механизации. Вычислительная машина открывает новые возможности для обработки данных и позволяет создать значительно более сложные, поражающие воображение системы для обработки потоков информации.
Внедрение систем для обработки потоков информации. Электронная вычислительная машина обладает огромными возможностями и может широко использоваться как средство управления. Она в состоянии выполнять работу (но только ту, для которой она сконструирована) быстрее и экономичнее, чем любое другое устройство.
Вычислительная машина работает более точно, чем человек или какое-либо механическое устройство. Кроме того, она может решать задачи из области исследования операций и анализа, которые раньше считались практически невыполнимыми. Но самое главное — ЭВМ позволяет значительно расширить сферу механизированной обработки потоков информации.
ЭВМ — это мощное средство, позволяющее значительно расширить область применения современных систем; их использование в системах является наиболее важным вкладом в обработку деловых данных. Так как ЭВМ обладает значительными преимуществами перед своими предшественниками (электромеханическими устройствами), она предоставляет специалистам по исследованию систем весьма большие реальные возможности для коренного изменения систем обработки потоков информации. Однако именно в этой области до сих пор сделано относительно немного. Почему?
Существует множество причин, почему большие возможности ЭВМ не полностью используются на практике [2] Приведенный ниже перечень носит иллюстративный характер и может быть скорректирован для любого частного случая. Слишком большое внимание уделяется получению непосредственной экономии денежных средств. Это приводит к попытке приспособить уже существующую систему и ее методы к электронным машинам, в результате чего прежние потоки информации начинают обрабатываться с большей скоростью. Особое желание немедленно получить результаты и иметь значительный экономический эффект привели к преобладанию частных подходов к созданию подобных систем. Интегрированная обработка данных часто рассматривалась как нечто нереальное, что можно только обсуждать на конференциях, а внедряться должно кем- нибудь другим: «У нас другие задачи!» Руководители предприятий не были убеждены в преимуществах электронной обработки данных во всех случаях, как на это могли надеяться исследователи. Такое отношение, конечно, обострило ситуацию, описанную выше. Кроме того, отсутствие твердой поддержки со стороны высшего руководства сделало очень трудным популяризацию вычислительных машин среди подразделений компаний, «зараженных» неверием в интегрированную обработку данных.
Вообще говоря, проблема, возникшая при установке большинства систем обработки данных, заключалась в том, чтобы обратить внимание руководства на увеличение времени, которое следует посвятить перспективному планированию.
Эта проблема не нова: администраторы, работающие в других функциональных областях, испытывают большие затруднения с подобными проблемами. Например, один руководитель отдела планирования и управления производством заявил, что его должность создана восемнадцать месяцев назад для выполнения четырех функций: перспективного планирования, планирования программ, создания систем и управления. На перспективное планирование время совершенно не тратилось и, что наиболее важно для нашего подхода, очень мало времени, отведенного на системы, было уделено общей системе информационного потока, и совсем не рассматривались аспекты перспективного развития систем. Такой подход типичен и показывает, почему огромные возможности вычислительных машин использовались далеко не полностью. Чтобы получить оптимальные результаты при использовании такого мощного инструмента, как ЭВМ, необходимо сконцентрировать усилия на перспективных аспектах обработки данных.Для создания соответствующих условий, позволяющих использовать для указанных применений ЭВМ, необходимо полностью пересмотреть существующую систему потоков информации. Если к тому же каждое такое применение увязывается с общим планом (или с моделью связей), то в итоге должна быть создана интегрированная система обработки данных.
Проводимая переоценка деятельности компании никоим образом не должна начинаться с существующей системы, анализ нужно начинать с самого начала, не опираясь на существующие системы и машины. Однако такой подход будет неосуществим до тех пор, пока высшее руководство не убедится в том, что он необходим для получения впоследствии больших выгод. Важность поддержки и участия в этом деле высшего руководства отражается в следующем замечании Е. Д. Двайера, шефа военно-морского ведомства:
«При любой неудачной попытке использовать электронную вычислительную машину для получения значительных достижений в области руководства я совершенно уверен, что всю ответ- ственность за неудачу должно нести высшее руководство...
Желание некоторых руководителей немедленно получить максимальные экономические выгоды характеризует близорукость руководства в его наиболее хронической и развитой форме.Если мы согласимся с тем, что вычислительная машина может выполнять все операции, которые мы ей укажем, в соответствии с нашими командами, то почему же не считать очевидным, что в неудачах при использовании вычислительной машины виноваты те, кто разрабатывал эти команды?.. Если мы хотим совершенствовать руководство, нам следует изучать его функции в большей степени, чем вычислительные машины. Таким образом, совет директоров, должностные лица, все те, кто отвечает за расходование средств компании, должны изучить себя, свои действия, цели, методы и собственные недостатки, самым главным из которых является отсутствие проницательности или атрофия воображения» [3].
От специалистов по анализу систем требуется творческий подход к решению задач. Подобное мышление возможно лишь в ситуации, способствующей детальному исследованию потоков информации, причем со стороны высшего руководства должна быть оказана всесторонняя поддержка в создании условий, благоприятных исследованиям. Те, кто будет работать в этой области, должны иметь достаточно времени для размышления над далеким будущим. Двайер указывает:
«В противоположность общепринятому мнению о том, что для полного устранения какой-либо неисправности или ошибки нужно найти «практика», в действительности во многих случаях для выполнения этой работы нужен-«непрактичный человек»— теоретик. Чтобы объяснить, почему устройство не работает, нужен «мыслитель», который знал бы, почему эти устройства работают вообще. Руководство не может ожидать, что программисты найдут принципиально новые применения вычислительных машин или что теоретики в области управления или исследователи систем сформулируют новые принципы управления. Ведь если кто-нибудь из них смог бы сделать это, то вообще отпала бы необходимость в высшем руководстве».
В заключение он говорит:
«Я не вижу смысла в самовосхвалении по поводу хорошо выполненной небольшой части работы, в то время как большая ее часть осталась нетронутой.
Не нужно думать, что я против того, чтобы вычислительные машины использовались для небольших или стандартных работ, проводимых с целью сэкономить деньги. Это скорее свидетельство того, что я стою за использование вычислительных машин для большой или нестандартной работы, которая позволит делать деньги» [3].
Как же перейти от стандартной, обычной работы к нова* торской, нестандартной? Каким образом поощрять долгосрочное планирование в области электронной обработки данных? В состоянии ли высшее руководство использовать те возможности, которые появляются в результате воздействия электронных цифровых вычислительных машин на существующие системы потоков информации? Могут ли системы быть спроектированы так, что они не будут ориентированы ни на определенную область применения, ни на оборудование? Вот перечень вопросов, на которые мы попытаемся ответить в этой главе. Мы рассмотрим типичные применения ЭВМ в системах обработки данных (СОД), некоторые перспективные интегрированные СОД и ряд систем, функционирующих в реальном масштабе времени. Однако прежде, чем рассматривать конкретные применения СОД, проанализируем общее состояние электронной обработки данных.
Технические средства и математическое обеспечение электронной обработки данных. Можно предполагать, что в автоматизированных системах обработки данных первичные данные получаются одним из трех способов, которые отражают различные по сложности стадии создания автоматизированной системы все более высокого уровня: Данные с обычных документов (написанных от руки, напечатанных на машинке и др.) переносятся на такие носители информации, которые могут быть восприняты машиной (на перфокарты, перфоленты, магнитные ленты и т. д.). После этого может производиться обработка данных. Подготавливаются одновременно первичный документ, понятный человеку, и машинный носитель информации, например при помощи перфоприставки лента перфорируется одновременно с работой печатающей машинки.
. 3. Исходные данные получаются в форме, доступной только для машины. Например, используя разработанные коды служащих предприятия, можно пробивать время их прибытия на работу на специальных бланках, в этом случае отпадает необходимость в заполнении какой-либо наглядной карточки 14].
Эти основные способы получения первичных данных будут часто упоминаться в остальных параграфах, поэтому читателю следует их запомнить.
Интересно заметить, что в трех способах, отражающих развитие СОД, совершенно не упоминается электронная вычислительная машина как таковая. Может показаться, что слишком много внимания уделено сбору и подготовке первичных данных для ввода в вычислительную машину. Если же рассмотреть четырехэтапный цикл обработки данных — сбор, обработку, сравнение и принятие решений,— то окажется, что его осуществление в больших системах упирается главным образом именно в сбор фактов (первичных данных). По-видимому, обработка, с точки зрения возможностей ЭВМ, не представляет особой проблемы. Действительно, в настоящее время имеются вычислительные машины, удовлетворяющие, очевидно, нас по быстродействию, емкости памяти, гибкости и скорости устройств ввода — вывода. Постоянно разрабатываются .более сложные программы для ЭВМ, которые позволяют выполнять все больше и больше функций сравнения и принятия решений. В то же время действительным камнем преткновения для механизации информационного потока до сих пор остаются получение, сбор, преобразование и передача данных в форме, пригодной для ввода в центральные вычислительные устройства. На этапе сбора данных необходимо оборудование для фиксации первичных данных от источника и соответствующая аппаратура передачи данных с высокой скоростью. Этот же этап охватывает все организационные и административные проблемы, связанные с проектированием источников данных, которые должны быть введены в систему с целью получения информации, необходимой для принятия решений руководством.
В существующих электронных системах обработки данных преобладающим также является первый из указанных трех этапов подготовки данных. Большинство компаний уже перешло от обработки данных на счетно-перфорационных машинах, использующих перфокарты, к электронным цифровым вычислительным машинам. В некоторых случаях существующие методы обработки были перенесены «как есть» для обработки на новых средствах. В средних ЭВМ перфокарты остались во многих системах только в качестве средства ввода — вывода. Очень часто существующие системы и методы использовались лишь с незначительными исправлениями и усовершенствованиями. Очевидно, что такой подход является самым прямым и, возможно, наиболее легким. С другой стороны, он не обеспечивает тех выгод,
которые могут быть получены на основе системного анализа, не придающего большого значения существующим методам и имеющейся практике выполнения операций.
В течение многих лет фирма IBM уделяла большое внимание слову думать, рассматривая его как ключ к успешной работе, особенно при анализе систем. В области электронной обработки данных еще большее значение должно придаваться слову переосмысливание. Это понятие подразумевает создание совершенно новых систем и методов, а не усовершенствование существующих.
Некоторые специалисты по вычислительным машинам считают, что, по-видимому, наиболее эффективные электронные системы обработки данных были разработаны на основании операций, которые первоначально выполнялись вручную, а не с помощью механизмов. Это объясняется тем, что ЭВМ выполняет различные участки программы точно так же, как это делает человек. Каждая отдельная запись или элемент обрабатывается как нечто целое, а не последовательно разряд за разрядом, как это проис- ' ходит в системах на перфорационном оборудовании. Это % сходство со свойственным человеку образом действий допу- Щ скает при анализе систем, связанных с электронной обра- § боткой данных, значительную долю творческой работы. § Чтобы извлечь полностью выгоды из быстродействующего | и дорогого обрудования, должен быть переосмыслен весь j имеющийся поток записей и сообщений. В то же время § для машины должны быть разработаны более детальные |, по сравнению с человеком команды, так как вычислитель- ;| ная машина должна рассмотреть каждую возможность, | прежде чем принять основанное на логике решениех. I
Создание детальной программы, которая учитывала бы I каждый возможный вариант в ходе решения задачи, является весьма трудной проблемой, на которую тратится f большое количество времени, причем часто первоначальные f планы работ нарушаются. Раньше программы писались § прямо на языке машины (в машинных кодах). Их можно было использовать для выполнения арифметических и логи- |
4
ческих операций, определенных достаточно подробно и тщательно. Каждая программа была закодирована и хранилась в определенном месте памяти машины, а каждая команда содержала также указание о том, где может быть найдена следующая команда. Распределение отдельных участков запоминающего устройства, отведенных для программ, было весьма утомительной и трудной задачей. Повышению эффективности программирования было посвящено большое число исследований и работ в прошлом десятилетии. Этот аспект обработки данных был назван термином математическое обеспечение (software), и его развитие до некоторой степени шло параллельно с развитием технических средств СОД.
Математическое обеспечение включает все системы программирования, способствующие эффективному использованию оборудования вычислительных машин. Мак-Кракен расширил это определение, включив в него программы для обучения [5]. Исследование и развитие математического обеспечения является крайне важным разделом электронной обработки данных, так как системы программирования расширяют возможности электронных СОД в большей степени, чем усовершенствование оборудования. Первым значительным шагом в этом направлении явилось введение промежуточных символических кодов, которые программист мог использовать для облегчения разработки программы. Эти символические команды обрабатывались особой компонующей программой, которая на языке машины подготавливала набор команд, соответствующий каждому символическому коду, что обеспечивало возможность проведения реальных операций по обработке данных.
Разработка подпрограмм также сделала программирование более удобным. Наборы команд для часто встречающихся вычислений (отдельные программы) были стандартизированы и в случае необходимости помещались в нужный участок большой программы. Библиотеки подпрограмм накапливались изготовителями и пользователями машин в течение многих лет. Большинство ЭВМ в своей системе команд имеют специальные команды для автоматического включения подпрограмм в создаваемые программы посредством простых операторов.
Другим этапом развития средств математического обеспечения ЭВМ явилось создание компиляторов и трансляторов, которые подобны в некоторой мере компонующим программам, но обычно намного сложнее их. Тенденция
к максимальному упрощению языка, используемого программистом, привела к созданию очень сложных компилирующих и транслирующих программ для перевода программ, написанных на том или ином универсальном языке, в коды команд машины (конечная программа)*.
Для научных расчетов, которые могут выполняться только один раз, эффективность полученной после трансляции или компиляции конечной программы не столь существенна. В этом случае важнее, чтобы сама компилирующая программа была эффективна в той мере, насколько это возможно. Для обработки деловых данных время компиляции не так важно. В этом случае должна быть максимально эффективна полученная конечная программа, так как она будет неоднократно использоваться для расчетов. Например, целью обработки деловых данных может явиться получение стандартных эффективных программ для решения текущих экономических задач, таких, как сортировка данных и объединение (слияние) массивов.
За последние 10 лет наблюдалось бурное развитие языков программирования. ФОРТРАН-IV (язык для трансляции), КОБОЛ (проблемно ориентированный язык для обработки деловой информации) и АЛГОЛ (алгоритмический язык) — примеры широко используемых языков программирования. Они содержат большое число стандартных приемов для того, чтобы создаваемые с их помощью программы можно было бы использовать в машинах разных моделей. Прогресс в этом направлении очевиден, но еще больше предстоит сделать.
НПЛ (новый язык программирования, позднее названный ПЛ-1) появился из-за необходимости иметь единый язык для научных и деловых задач. Отсутствие в нем произвольных ограничений позволяет программисту сосредоточить свое внимание на описании проблемы и свободно выбирать операции для ее решения. При разработке этого
.1 Это может быть сделано со следующей целью: программист должен сконцентрировать свое внимание на проблеме и получить творческое решение. Для этого он не должен быть ничем ограничен и должен иметь возможность писать программу в соб- ственной"манере, у него также могут быть ошибки в словах и небрежности в пунктуации. Компилирующая программа должна быть сделана настолько изобретательно, чтобы правильно перевести подобное описание в эффективную конечную программу. (Прим, автора.)
языка была поставлена цеЛь: создать такой язык, который позволял бы писать программы более широкого применения» чем это было возможно до сих пор.
Были также созданы специальные языки для различного класса проблем, например для исследований в области мышления, лингвистики, моделирования поведения человека, для использования различных методов решения проблемных задач, требующих обработки не числовых, а символических данных. Обработка таблиц, например, очень удобна на языке ИПЛ-V (язык для обработки информации), ЛИСП и СЛИП.
Для моделирования и других специальных целей фирма IBM разработала язык моделирования систем универсального назначения GPSS. СИМСКРИПТ — сходный язык (разработки фирмы «Рэнд корпорейшн») является предварительным транслятором для языка ФОРТРАН-IV. CLS (язык для управления и моделирования), СИМПАК и ДИНАМО — другие примеры аналогичных языков. СИМТРАН (моделирующий транслятор) — язык, созданный компанией «Боинг» для внутреннего использования при анализе логических систем. Этот язык позволяет использовать некоторые арифметические и логические операции, которых нет в других моделирующих языках. В то же время ряд исследователей делал попытки добиться независимое! и программирования от применяемой машины с помощью интерпретирующих и организующих программ на ФОРТРАН-IV.
Многие компании разработали свои собственные языки программирования или изменяли какой-либо из уже созданных для решения специальных задач. В то время как в некоторых системах обработки данных иногда и применяется специальное оборудование, все же является общепринятой стандартизация технических средств. В настоящее время существует широкая база общих систем программирования — подпрограммы, компонующие и компилирующие программы и т. д. В то же время новые программы, используемые компаниями,— это как бы «сшитые» из отдельных частей по индивидуальному заказу системы математического обеспечения. Более того, в этой области до сих пор существуют значительные возможности для различных нововведений при создании систем обработки данных; изобретательность создателей систем и программистов все еще является решающим фактором.
Исследования и разработки были направлены на облегчение утомительной, отнимающей много времени и не всегда удачной работы по созданию программы в кодах машин, т. е. конечной программы. Сложные системы математического обеспечения позволяют программисту иметь больше времени для обдумывания и эффективно содействуют ему в разработке различных программ для системы обработки данных.
Подводя итоги, заметим, что уровень использования электронных цифровых вычислительных машин для обработки данных существенно отстал от уровня развития техники 60-х годов. Это отставание в будущем может увеличиться, если не уделять должного внимания творческому проектированию систем потоков информации. В следующих параграфах рассмотрено развитие систем электронной обработки данных.
Еще по теме ЭЛЕКТРОННЫЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ:
- ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ
- 7.21. ИСПОЛЬЗОВАНИЕ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ И ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ
- Петров Ю. П.. История и философия науки. Математика, вычислительная техника, информатика, 2005
- 2.4.2. Функции информационно-вычислительной системы
- Электронные издания
- ЭЛЕКТРОННАЯ ОБРАБОТКА ДАННЫХ
- Электронные информационные ресурсы
- Электронное правительство
- Система электронных сертификатов
- Дидактические возможности электронных книг
- Круговые машины
- Электронное биографическое интервью
- 2.5.7. Электронная почта Верховного Совета СССР
- Изучение архивов электронной почты и ICQ
- Электронные паспорта не защищены от клонирования
- ЭЛЕКТРОННЫЙ УЧЕБНИК «МЕТОДЫ РЕШЕНИЯ ЗАДАЧ ЭЛЕМЕНТАРНОЙ МАТЕМАТИКИ».
- 2.5.10. Электронная система проведения голосования
- Электронные версии журналов в Интернет:
- ЧАСТЬ IV СОЗДАНИЕ МАШИНЫ
- Часть IV СОЗДАНИЕ МАШИНЫ