Определение слова «программирование»

Большой энциклопедический словарь:

ПРОГРАММИРОВАНИЕ — процесс подготовки задач для решения их на ЭВМ, состоящий из следующих этапов: составление "плана решения" задачи в виде набора операций (алгоритмическое описание задачи); описание "плана решения" на языке программирования (составление программы); трансляция программы с языка программирования на машинный язык (в виде последовательности команд, реализация которых техническими средствами ЭВМ и есть процесс решения задачи). Программированием называют также раздел прикладной математики, изучающий и разрабатывающий методы и средства составления, проверки и улучшения программ для ЭВМ.

Большая советская энциклопедия:

Программирование
Процесс составления упорядоченной последовательности действий (программы (См. Программа)) для ЭВМ; научная дисциплина, изучающая программы для ЭВМ и способы их составления, проверки и улучшения.
Каждая ЭВМ является автоматом, состоящим из памяти, образуемой внешним и оперативным запоминающими устройствами, устройства управления (УУ) и арифметические устройства (АУ), в котором могут выполняться некоторые действия или операции. Память имеет вид занумерованной последовательности ячеек, в каждой из которых хранится порция двоичной информации в виде серии нулей и единиц. Автоматическая работа ЭВМ, управляемая программой, состоит из последовательности тактов. На каждом такте УУ выбирает из предписанной ему ячейки памяти порцию информации. Эта порция трактуется как команда, т. е. предписание АУ выполнить некоторую операцию. Обычно в ЭВМ выполнение операции состоит в том, чтобы из определённых ячеек памяти взять хранящуюся там информацию, передать её в АУ для выполнения над ней нужного действия, результат которого отправить в указанную ячейку памяти, и сообщить УУ номер ячейки следующей команды. Отдельные действия, совершаемые ЭВМ, весьма просты — это арифметические и логические операции, операции сравнения, переписывания порции информации и т.п. Т. о., составить программу для ЭВМ — это значит представить способ решения задачи в виде такой совокупности машинных команд (программы), чтобы они, будучи размещенными в памяти, поочерёдно выполняясь и вызывая одна другую, реализовали нужные вычисления.
Идея П. возникает ещё в школе при составлении «плана решения» арифметической задачи в виде серии вопросов. Существенное отличие реального П. от школьного опыта заключается в том, что программа, как правило, задаёт не одну, а несколько последовательностей действий (разветвлений), выбор между которыми зависит от значения промежуточных результатов решения задачи; выполняет некоторые группы команд многократно, автоматически определяя нужное число повторений; может предписанным образом сама себя менять или частично формировать в процессе своего выполнения.
Дополнительной особенностью П. является его трудность: размеры многих реальных программ исчисляются тысячами команд, а количество выполняемых ими действий — десятками миллионов. Такие объёмы в сочетании с элементарным характером машинных команд делают П. одновременно и очень сложным, и очень монотонным процессом.
Для преодоления этого противоречия П. придан характер многоэтапного процесса, каждый этап которого есть постепенная конкретизация и детализация плана решения задачи, полученного на предыдущем этапе. Кроме того, если правила описания плана решения задачи на некотором этапе будут точными, формальными и универсальными, т. е. применимыми к любой задаче, то тогда можно говорить о существовании некоторого языка П., используемого при составлении программы.
Языки программирования (См. Язык программирования) как способ точного формулирования задачи на разных этапах подготовки её к решению на ЭВМ сыграли фундаментальную роль в развитии П. В частности, они позволяют трактовать П. как процесс перевода задания для ЭВМ, выраженного в некотором языке, на другой язык«язык машины». Если найти и описать точные правила такого перевода, то эти правила, в свою очередь, можно запрограммировать на ЭВМ. Полученные программы, автоматизирующие процесс П., называют трансляторами.
Процесс П. обычно состоит из следующих этапов:

Содержание каждого этапа П. можно пояснить на примере решения квадратного уравнения.
Исходная формулировка. Надо найти корни 50 квадратных уравнений вида ax2 + bx + c = 0, коэффициенты которых заданы в виде трёх таблиц Ai, Bi и Ci (i = 1,..., 50).
Алгоритмическое описание задачи получается в результате полного математического исследования её постановки, выбора стандартных или поиска новых алгоритмов выполнения всех нужных вычислений, а также уточнения, какие исходные данные надо ввести в ЭВМ и какие результаты надо получить. В данном случае алгоритмическое описание может иметь такой вид: ввести в ЭВМ таблицы коэффициентов Ai, Bi и Ci, решить каждое уравнение по общей формуле

с исследованием дискриминанта b2 — 4ac для определения случая комплексных корней; для единообразия каждый корень уравнения выдавать как комплексное число x = u + iv, полагая в случае вещественных корней мнимую часть равной нулю.
Язык П. высокого уровня — главное средство составления программ для ЭВМ. Общая особенность этих языков — их независимость от системы команд конкретных ЭВМ и фразовая структура, что в сочетании с использованием т. н. служебных слов приближает их к естественным языкам. Фразы разделяются обычно точкой с запятой; соподчинённость фраз указывается с помощью «операторных скобок» начало и конец; фразы делятся на два типаоператоры и описания. Оператор является единицей действия в языке. Различают следующие их типы: операторы присваивания, производящие подсчёт по указанной формуле и присваивающие вычисленное значение заданной переменной величине; условные операторы, которые в зависимости от результата проверки заданного условия производят выбор одной или другой ветви вычислений; операторы цикла, обеспечивающие повторное выполнение группы операторов. В описаниях указываются свойства переменных величин и других обозначений, используемых в программе. Важным свойством является «процедурный» характер языка: для любой уже составленной программы, решающей некоторую частную задачу, можно ввести символическое функциональное обозначение. Текст этой программы вместе с её обозначением называется описанием процедуры или подпрограммой. Тогда при составлении новой программы всюду, где может потребоваться использование этой описанной процедуры, достаточно упомянуть её функциональное обозначение в виде оператора процедуры вместо переписывания полного текста подпрограммы.
В 70-х гг. 20 в. существует целое семейство таких языков П.: алгол-60, фортран для решения инженерных и научных задач, кобол для экономических расчётов, симула для П. математических моделей, более мощные языки алгол-68 и ПЛ/1, охватывающие все виды применений ЭВМ. Для всех из них существуют трансляторы, обеспечивающие автоматическое построение машинных программ для задач, выраженных в этих языках.
Программа решения квадратного уравнения, записанная на языке алгол-60 (адаптированном):
начало вещественные массивы А, В, С [1: 50];
вещественные а, b, с, u1, 1, u2, 2;
целое i, ввод (A, В, С);
для i: = шаг 1 до 50 цикл
начало а: = A [i]; b: = B [i]; c = C [i];
если , то
начало 1: = 2: = 0; u1:= -b + корень ;
u 2:= — b — корень ;
конец иначе
начало 1: = корень ;
2: = — 1; u1:= u2:
конец; вывод (u1, 1, u2, 2)
конец
конец
Машинно-ориентированный язык представляет программы в терминах команд ЭВМ, но выраженных в более удобной для употребления символике, нежели прямое двоичное представление. Он используется на промежуточном этапе процесса автоматической трансляции с языка более высокого уровня или же как язык П., когда программа по существу сразу должна быть сконструирована в терминах машинных команд. В последнем случае роль языка высокого уровня часто играет язык блок-схем, когда структура программы, т. е. последовательность выполнения её «блоков», наличие разветвления и повторяющихся участков показываются в графической форме, а функции каждого блока записываются в произвольной текстовой форме. Ниже следует пример блок-схемы решения квадратного уравнения:

После составления программы неотъемлемым этапом П. является «отладка» программы, т. е. обнаружение и исправление ошибок, допускаемых при П. Основное средство отладки — т. н. отладочные запуски, когда в программу добавляются дополнительные «измерительные» действия, позволяющие по ходу выполнения программы на ЭВМ выдавать «протокол» её работы (порядок выполнения команд, значения промежуточных результатов и т.п.). Исследование протокола позволяет судить о том, в какой степени программа соответствует замыслу программиста.
Развитие П. как науки началось с 1947 в работах американских математиков Дж. Неймана, А. Беркса и Г. Голдстайна, которые описали принципы ЭВМ, управляемой программой, хранящейся в памяти. Они же ввели в употребление блок-схемы программы. Понятие подпрограммы и методики её использования было введено в 1951 английскими учёными М. Уилксом, Дж. Уилером и С. Гиллом. Советский математик А. А. Ляпунов, первым в СССР прочитавший в МГУ в 1952 курс П., определил П. как многоэтапный процесс и ввёл в П. аппарат символических обозначений, явившийся предвестником языков П. высокого уровня. Идея автоматизации программирования (См. Автоматизация программирования) путём трансляции программы, записанной на языке П., была реализована в США Дж. У. Бейкусом (язык фортран) и Г. Хоппер и в СССР С. С. Камыниным, Э. З. Любимским, М. Р. Шура-Бурой и А. П. Ершовым (1954—56). К 1960 в США был разработан язык кобол и международный язык П. алгол-60 (группой учёных из 6 стран). В 60-е гг. развитие П. шло по пути совершенствования и универсализации языков П., нашедших своё воплощение в языках алгол-68, ПЛ/1 и симула, разработки методов формального и строгого описания языков П., развития теории и техники построения трансляторов, создания библиотек стандартных подпрограмм. Особое развитие получили машинно-ориентированные языки П. в направлении объединения ряда черт языков высокого уровня (процедурность, фразовая структура) с адаптируемостью к особенностям конкретной ЭВМ. Для некоторых классов задач предприняты успешные попытки расширить область применения автоматизации П. путём формализации способов алгоритмического описания задачи или даже её исходной формулировки. Это привело к понятиям проблемно-ориентированных языков П., неалгоритмических языков П. и т.п.
Лит.: Лавров С. С., Введение в программирование, М., 1973: его же, Универсальный язык программирования. (АЛГОЛ 60), 3 изд., М., 1972; Жоголев Е. А., Трифонов Н. П., Курс программирования, 3 изд., М., 1971; Джермейн К. Б., Программирование на 1ВМ/360, пер. с англ., 2 изд., М., 1973; Стэбли Д., Логическое программирование в системе 360, пер. с англ., М., 1974.
А. П. Ершов.

Рис. к ст. Программирование.

Толковый словарь Кузнецова:

программирование
ПРОГРАММИРОВАНИЕ -я; ср.
1. к Программировать. П. производства. Операция программирования.
2. Раздел прикладной математики и вычислительной техники, разрабатывающий методы составления программ для ЭВМ. Заниматься программированием. Специалист по программированию.

Малый академический словарь:

программирование
-я, ср. спец.
1.
Действие по знач. глаг. программировать.
Программирование производства. Операция программирования.
2.
Раздел прикладной математики, изучающий и разрабатывающий методы и средства составления программ для вычислительных машин.

Математическая энциклопедия:

1) процесс составления программы, плана действий; 2) дисциплина, изучающая методы и приемы составления программ. С определенной долей условности П. как дисциплина делится на программирование теоретическое, изучающее математич. абстракции программ и способов их построения, системное программирование, имеющее дело с разработкой математического обеспечения ЭВМ, т. е. программных комплексов массового и длительного применения, и прикладное программирование, обслуживающее конкретные применения ЭВМ во всем их разнообразии. Составление программы является творч. задачей, т. к. поиски способа достижения даже четко сформулированной цели в общем случае требуют выработки или привлечения нового знания. В нек-рых частных случаях возможно нахождение более систематической и формальной процедуры П. Так, если задание на П. уже сформулировано в виде алгоритма, то П. сводится к переводу с языка записи алгоритма, или алгоритмического языка, к языку, непосредственно воспринимаемому исполнителем. В нек-рых математич. моделях задача перевода, решается исчерпывающе. Напр., если задача сформулирована в виде теоремы существования где Р( х, у) — нек-рая формула узкого исчисления предикатов, то из доказательства теоремы в конструктивной логике эффективно извлекается рекурсивное описание функции j(х), для к-рой (теорема Клини — Нельсона). Поиски систематич. процедур перевода записей алгоритма в программы и извлечения программы из условия задачи и дополнительной информации составляют предмет автоматизации программирования и ее частного случая — трансляции программ. Методика П. уделяет особое внимание способам описания исходной спецификации задачи, подлежащей П., поскольку умелое использование заложенной в спецификации информации позволяет придать П. более достоверный характер. Важным аспектом П. является забота о четкой структуре программы, облегчающей проверку ее правильности, а главное — выделение и изоляцию тех фрагментов программы, дальнейшая детализация к-рых требует привлечения нового знания. Нек-рое представление о способе перехода от спецификации задачи к программе дает следующий пример П. задачи возведения хв натуральную степень п. Исходное знание: x1=x, х п+т=х n. х т, х пт=( х п) т. Обнаруживая, что эти соотношения позволяют свести решение задачи х n к более простой (т. е. с меньшим n), пытаются придать исходному знанию простейшую форму (творч. шаг): х 0=1, xn+1= xn.x, x2n=(xn)2. Содержательный анализ показывает, что третье соотношение эффективнее, нежели второе, но зато применимо не всегда. Второе соотношение переписывается в виде случая, дополнительного к третьему (творч. шаг): х 0=1, х 2п+1= х 2n. х, х 2n=( х п)2. Используя обратимость функций 2n и n+1 и логич. несовместимость соотношений, получают рекурсивное соотношение методом разбора случаев (формальный шаг): Остается переписать это правило на каком-либо алгоритмич. языке, напр. алгол-60 (формальный шаг): real power(x, n); real x,integer n; power:=if n=0 then 1 else if even(n).then power(else x power(x, n-1). Определение процедуры проверки четности even(n).становится отдельной, более частной задачей П. Важной составной частью П. является проверка правильности программы. Одним из способов обеспечения правильности является придание процессу П. формы, сходной с доказательством теоремы, т. е. когда каждый шаг построения программы сопровождается рассуждением, подтверждающим непротиворечивость этого шага исходному знанию о программе и дополнительному знанию, использованному в данном шаге. Возникающие при этом формальные дедуктивные системы также изучаются в программировании теоретическом. Дополнительным средством проверки правильности уже составленной программы является ее отладка, т. е. систематич. испытания программы на машине и сравнение эффекта, производимого программой, с ожидаемым. Хотя на практике отладка является преимущественным способом проверки программ, теоретически она не может быть исчерпывающей, т. к. установление правильности программы путем конечной системы испытаний может быть достигнуто только для очень узких классов задач (см. Автоматов теория). Лит.:[1] Любимский Э. 3., Мартынюк В. В., Трифонов Н. П., , М., 1980; [2] Дейкстра Э. В., Дисциплина программирования, пер. с англ., М., 1978; [3] Мейер Б., Бодуэн К., Методы программирования, пер. с франц., т. 1-2, М., 1982. А. П. Ершов.

Орфографический словарь Лопатина:

орф.
программирование, -я

Толковый словарь Ожегова:

ПРОГРАММИРОВАНИЕ, я, ср. (спец.).
1. см. программировать.
2. Часть прикладной математики и вычислительной техники, разрабатывающая методы составления программ (в 6 знач.).

Новейший философский словарь:

ПРОГРАММИРОВАНИЕ — особая форма организации проблемного мышления и деятельности, предполагающая составление программы; П. — форма связывания идеальной и социокультурной действительностей, своеобразный способ перехода из одной в другую. Поскольку программа должна обеспечивать прорыв в будущее, поскольку П. выступает средством организации работы и самоорганизации ее участников не только в условиях неопределенности, но и в условиях недостаточности средств и методов, онтологических картин и представлений. П. обеспечивает развитие и сохранение со-циотехнических систем, систем профессиональных деятельностей. При этом П. задается как ряд этапов, на которых постоянно производится проектная работа: создание альтернативных и конкурирующих проектов. Проблемный характер мышления и деятельности проявляется при П. в том, что оно включает в себя постоянный процесс проблематиза-ции (еще не решенные проблемы и задачи, еше не выполненные работы: «пустоты» непрерывно оконтуриваются, прорисовываются, а затем заполняются; в ходе же их заполнения прорисовываются новые «лакуны» — ставятся новые задачи и проблемы, которые необходимо решить в рамках данной программы). Программная организация работ в корне отличается от плановой по ряду методов: 1. Программу нельзя построить, а потом реализовать. Потсроение программы включает ее реализацию, ибо П. — средство соорганизации работ, которые выполняются в контексте и процессе П. Иначе говоря, программа апплицируется на человеческую деятельность, особым образом эту деятельность структурируя и организуя. Таким образом, программа естественным образом переходит или переростает в реализацию. 2. Программа не может быть привнесена извне. Программная организация предполагает, что каждый участник работы, исполнитель, сам программирует свою работу, но обязательно в рамках и контексте целого, — иначе он не сможет самоопределиться и прорисовать ситуацию. Следовательно, П. — по своей сути — демократическая форма организации коллективной работы. 3. Источником развития П. выступают конфликты, а механизмом его разворачивания — проблематизация. Различие ценностных ориентаций, разнонаправленность целей и интересов участников общей работы непрерывно порождают конфликты. Если при этом в споре рождается истина, мы получаем задачу, которую надо решать. (Чаще же в споре рождается проблема, требующая для своего решения разработки специальных средств и методов. Это уже задача науки и методологии). 4. Характерная черта П. — проблемная организация работ (в отличие от задачной), благодаря которой дело движется не только вперед — на раз и навсегда зафиксированном уровне понимания ситуации и целей, — но и вглубь: мы периодически пересматриваем свое самоопределение, цели, ситуацию, сообразуясь с непрерывно перестраивающейся программой. (Но и наоборот: пересмотр целей, ситуации заставляет нас менять и перестраивать программу). Движение вперед — к уже поставленным целям — обеспечивает функционирование программы, движение вглубь — к пересмотру целей — ее (и наше) развитие. Такое двойное движение накладывает запрет на последовательное выполнение отдельных видов работ, входящих в схему П. Поэтому их приходится выполнять одновременно: в частности, одновременно с ее разработкой начинается реализация программы или (точнее) разработка и реализация программы (в отличии от плана или проекта) не разделяются. 5. Обоснование входит в программу как ее органичная составная часть, т.е. программа не нуждается в отдельном обосновании. Основанием программы оказывается неудовлетворенность ее авторов и исполнителей существующей ситуацией, которая находит отражение в прорисовке ситуаций, самоопределении и целепологании. Именно этот блок выполняет функции ее обоснования. В этой связи программа может оформиться в любой точке общества: она может стать продуктом деятельности любого субъекта, начавшего анализировать ситуацию, в которую он так или иначе вписан, и которая его — по тем или иным причинам — не устраивает. Это и есть то, что называется инициативой, но облеченной в особую, программную форму. Т.о., понимание П. как гуманитарной технологии представляет его как мысленную имитацию, проигрывание предстоящей деятельности в целом, которая по мере осуществления переходит непосредственно в ее исполнение. Путем П. реализуется управление как особый вид профессиональной деятельности. При этом П. предполагает смену естественнонаучного подхода на деятельностный, который так или иначе включает искусственную компоненту, требует критического анализа, оценки и проблематизации настоящего, т.к. в рамках естественнонаучного подхода строительство будущего невозможно в принципе: естественная наука лишь прогнозирует будущее своих объектов, которое нам неподвластно и от нас не зависит. Гуманитарное П. позволяет, наряду с известным, программировать также и неизвестное. Следовательно, субъект П. должен иметь средства и методы фиксации этого неизвестного (знание о незнании) и его преобразования в известное. Программа считается законченной (реализованной) со снятием проблем, лежащих в ее основании, или решением задач, ее породивших.

Научно-технический словарь:

ПРОГРАММИРОВАНИЕ, см. КОМПЬЮТЕРНОЕ ПРОГРАММИРОВАНИЕ.

Социологический словарь:

ПРОГРАММИРОВАНИЕ — англ. programming; нем. Programmierung. 1.В общем смысле — процесс подготовки и составления программы любой деятельности, выполнение к-рой должно привести к определенным целям. 2. Процесс подготовки задач для решения их на ЭВМ, включающий составление плана решения (задача в виде набора операций), описание плана решения на языке программирования, трансляцию программы на машинный язык. 3. В кибернетике — разработка предписаний решения определенной задачи. 4 Раздел прикладной математики, изучающей и разрабатывающей методы и средства разработки программы для ЭВМ. 5. В педагогике — разработка учебных программ для программного обучения.

Техника. Современная энциклопедия:

программирование
1) процесс составления программы ЭВМ в соответствии с алгоритмом решения задачи, её отладки и дальнейшего развития.
2) Раздел информатики, изучающий методы и приёмы построения, отладки и развития программ для ЭВМ.

Смотреть другие определения →


© «СловоТолк.Ру» — толковые и энциклопедические словари, 2007-2020

Top.Mail.Ru
Top.Mail.Ru