Средства программирования объединяют разнообразные программы, используемые для составления новых программ: трансляторы с различных алгоритмических языков; программы, собирающие программы из так называемых модулей; программы, автоматизирующие отладку вновь разрабатываемых программ, и другие.
Система средств программирования предусматривает обычно использование алгоритмических языков (так называемых входных языков программирования) трёх уровней: машинно-ориентированных языков (типа языка ассемблера); проблемно-ориентированных алгоритмических языков, удобных для программирования узких классов задач (например, язык RPG, принятый для ЦВМ фирм IBM, ICL и многие другие); одного или нескольких универсальных алгоритмических языков, таких, как алгол, фортран, кобол. Возможность отладки на ЦВМ программ, заданных на алгоритмических языках, должна быть заложена либо в самих трансляторах, либо обеспечена с помощью самостоятельных отладочных программ.
Система средств программирования ЦВМ третьего поколения, как правило, основывается на модульном принципе. Модулями называются массивы информации, заданные на алгоритмическом языке вычислительной системы или на входном языке программирования. Массивы, заданные на входных языках программирования, должны содержать информацию, необходимую для их преобразования в модули. Программу, собирающую программы из модулей, иногда называют «композером». В составе операционной системы иногда предусматривают библиотеку модулей (на языке исполнительной системы). Новые модули, составленные в процессе программирования, могут быть включены в состав библиотеки модулей с помощью соответствующей программы из числа средств поддержания системы М. о.
В раздел «приложения» системы М. о. входят программы решения конкретных задач, например таких, как транспортная задача, задача решения системы линейных уравнений, распределительная задача линейного программирования, задача выравнивания динамических рядов и пр. Программы, входящие в «приложения», обычно группируются по классам задач (например, пакет линейной алгебры, пакет математической статистики и другие).
Существуют два способа разработки общего М. о. При первом способе М. о. разрабатывается и отлаживается на вспомогательной ЦВМ, на которой для этого программно моделируется исполнительная ЦВМ. Этот способ удобен тем, что М. о. можно разрабатывать заблаговременно, в отсутствии исполнительной ЦВМ. Однако при этом необходимо наличие достаточно мощной вспомогательной ЦВМ, уже имеющей М. о. При втором способе М. о. разрабатывают уже после появления хотя бы опытного образца исполнительной ЦВМ. Разработка М. о. ведётся таким образом, чтобы уже имеющиеся части М. о. могли быть использованы при создании недостающих частей. Экономически выгодно при разработке новых ЦВМ сохранять в них систему команд ЦВМ, разработанных ранее и уже имеющих М. о. При этом все программы, разработанные для уже действующих ЦВМ, могут быть использованы и в новой ЦВМ, если последняя укомплектована достаточным оборудованием.
М. о. размещается в ЦВМ следующим образом. Основная часть диспетчер-программы (называется резидентом) обычно находится в оперативной памяти ЦВМ; остальные части диспетчер-программы и другие программы М. о. размещаются во внешних запоминающих устройствах. Возможны случаи повреждения диспетчер-программы в процессе эксплуатации ЦВМ, поэтому в машине обычно хранится легко доступная копия резидента. Оперативная память ЦВМ делится на 3 части: область резидента, рабочее поле, на которое в процессе работы резидент вызывает необходимые части операционной системы (не вошедшие в состав резидента) из внешних запоминающих устройств, и область пользователей, на которой размещаются программы (или части программ) решаемых задач, исходная информация и получаемые результаты. Значительная часть внешних запоминающих устройств, не занятая материалами М. о., также является областью пользователей. Эффективное использование М. о. возможно лишь в том случае, когда область пользователей достаточно велика, что возможно лишь при больших объёмах памяти ЦВМ. Это обстоятельство необходимо принимать во внимание при выборе ЦВМ.
Специальное М. о. разрабатывается пользователями ЦВМ для решения своих конкретных задач с учётом всех возможностей, представляемых общим М. о. В состав специального М. о. могут входить трансляторы с новых языков (не входящие в общее М. о.), разработанные пользователем дополнительные программы контроля ЦВМ, программы решения отдельных задач или классов задач и т. п. Как исключение, в состав М. о. могут входить программы, дополняющие операционную систему. В особых случаях программы, входящие в состав специального М. о., разрабатывают непосредственно на языке машины, для того чтобы исключить использование операционной системы. Это делают тогда, когда к разрабатываемым программам предъявляются высокие требования, которым операционная система не удовлетворяет.
Лит.: Ледли Р. С., Программирование и использование цифровых вычислительных машин, перевод с английского, М., 1966; Флорес А., Программное обеспечение, перевод с английского, М., 1971; Джермейн К. Б., Программирование на IBM-360, перевод с английского, М., 1971; Липаев В. В., Колин К. К., Серебровский Л. А., Математическое обеспечение управляющих ЦВМ, М., 1972; Виленкин С. Я., Трахтенгерц Э. А., Математическое обеспечение управляющих вычислительных машин, М., 1972; Тараканов К. В., Общие принципы и структура математического обеспечения автоматизированных систем управления в сборнике: Цифровая вычислительная техника и программирование, в. 7, М., 1972.
Н. А. Криницкий.
Математическое образование
Математи'ческое образова'ние , см. в статье Механико-математическое образование .
Математическое ожидание
Математи'ческое ожида'ние , среднее значение, одна из важнейших характеристик распределения вероятностей случайной величины . Для случайной величины X , принимающей последовательность значений y1 , y2 , ..., yk , ... с вероятностями, равными соответственно p1 , p2 , ..., pk , …, М. о. определяется формулой
(в предположении, что ряд
сходится). Так, например, если Х — число очков, выпадающее на верхней грани игральной кости (X принимает каждое из значений 1, 2, 3, 4, 5, 6 с вероятностью 1 /6 ), то .Для случайной величины, имеющей плотность вероятности р(у) , М. о. определяется формулой
.
М. о. характеризует расположение значений случайной величины. Полностью эта роль М. о. разъясняется больших чисел законом . При сложении случайных величин их М. о. складываются, при умножении двух независимых случайных величин их М. о. перемножаются. М. о. случайной величины eitX , то есть f (t) = Eeitxz , где t — действительное число, носит название характеристической функции .
Лит.: Гнеденко Б. В., Курс теории вероятностей, 4 изд., М., 1965.
Ю. В. Прохоров.
Математическое программирование
Математи'ческое программи'рование , математическая дисциплина, посвященная теории и методам решения задач о нахождении экстремумов функций на множествах, определяемых линейными и нелинейными ограничениями (равенствами и неравенствами).
М. п. — раздел науки об исследовании операций (см. Операций исследование ), охватывающий широкий класс задач управления, математическими моделями которых являются конечномерные экстремальные задачи. Задачи М. п. находят применение в различных областях человеческой деятельности, где необходим выбор одного из возможных образов действий, например, при решении многочисленных проблем управления и планирования производственных процессов, в задачах проектирования и перспективного планирования.