2i.SU
Математика

Математика

Содержание раздела

Математика учит предсказывать и управлять

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

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

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

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

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

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

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

Другой широко применяемый метод экономии труда и времени при программировании состоит в использовании библиотеки стандартных подпрограмм. В такой библиотеке хранятся составленные заранее

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

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

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

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

перейти к началу страницы


2i.SU ©® 2015 Яндекс.Метрика Рейтинг@Mail.ruРейтинг@Mail.ru