. Универсальность машины
  
Азбука  Физкультура малышам

Детская Энциклопедия

Статистика

Универсальность машины

Универсальность машины

Как уже было сказано, преобразование про­граммы в ходе ее выполнения, наряду с перио­дическим повторением ее частей и другими приемами, неизмеримо расширяет возможности вычислительной машины, позволяя решать на ней даже сложнейшие задачи высшей математи­ки, хотя арифметическое устройство машины способно выполнять только четыре арифметиче­ских действия да несколько простейших логи­ческих операций.

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

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

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

Логическая схема программы записывается человеком не в виде последовательности зна­комых уже нам «команд», а на более привычном и лаконичном «языке» математической симво­лики, т. е. посредством обычных формул лишь немного измененного начертания с отдельными дополнительными пояснениями. При отсутст­вии у машины специальной клавиатуры для ввода математических символов и букв каждый из этих знаков предварительно кодируется числом вручную.

В настоящее время ведется большая работа по созданию универсального языка програм­мирования, посредством которого каждый мог бы (после самого краткого обучения) самостоя­тельно писать логические схемы программ, вполне пригодные для непосредственного вве­дения их в машину (снабженную раз и навсегда установленной программирующей программой). Это позволило бы вообще исключить малопро­изводительный процесс программирования вручную. Один из вариантов такого универ­сального языка известен под условным назва­нием «алгол».

Другой широко применяемый уже метод экономии труда и времени при программирова­нии состоит в использовании библиотеки стандартных подпрограмм. В та­кой библиотеке хранятся составленные заранее программы для самых различных вычислений, встречающихся на практике. В числе их может быть, например, решение кубического уравне­ния или вычисление определенного интеграла. Когда такого рода вычисление встретится при решении конкретной задачи, машина сама «вы­пишет» из библиотеки необходимую для этого последовательность команд — достаточно толь­ко одного лаконичного упоминания об этом в соответствующем месте основной программы решения рассматриваемой задачи.

Такой метод тоже значительно повышает производительность труда при программиро­вании.

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

Универсальность электронных вычислитель­ных машин свидетельствует о том, что даже самые несхожие между собой виды умствен­ного труда могут быть разложены на одни и те же элементарные шаги, но только расположен­ные в иной последовательности и выполняемые над другим исходным материалом. Именно это обстоятельство делает возможным единый подход к проблеме автоматизации всех ви­дов умственного труда. Изучение тех общих закономерностей автоматизации умственного труда, которые не зависят от конкретных осо­бенностей различных его видов, составляет одну из очень важных и интересных задач молодой науки кибернетики (см. статью «Что такое кибернетика?»).

Чтобы наглядно показать универсальность электронной вычислительной машины и един­ство резко различных по своему характеру видов умственного труда, попробуем хотя бы вкратце пояснить, каким образом «умудряется» машина переводить книги с одного языка на другой.

 

ПОИСК
Block title
РАЗНОЕ