Что такое компьютерная программа? Виды компьютерных программ. Что такое программа

Что такое компьютерная программа? Виды компьютерных программ. Что такое программа

28.06.2019

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

Что такое компьютерная программа в общем понимании?

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

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

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

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

Классы компьютерных программ

Что касается классификации любого ПО, сегодня существует достаточно много систем, включающих в себя разделение по типам.

Однако во всех системах классификации выделяют следующие компьютерные программы (список приводится ниже):

  • первичные системы ввода/вывода (BIOS, UEFI);
  • системные программы и их компоненты (операционные системы и их собственные службы);
  • сервисное и обслуживающее программное обеспечение;
  • среды разработки (создание программ);
  • прикладное ПО (узко ориентированные пользовательские программы, устанавливаемые на компьютер для выполнения конкретно поставленных задач).

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

Как создаются приложения?

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

Достаточно отметить, что создание компьютерных программ сводится к написанию кода на самом языке (или с использованием сред разработки, например, Java SDK), тестированию приложения в самой среде и компиляции (преобразованию в код, распознаваемый машиной).

Как работает большинство программ?

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

В смысле работы приложений такое объяснение является весьма примитивным, однако, если не вникать в суть системных процессов, даже рядовому пользователю будет понятно, как это все функционирует.

Практическое применение

Использование компьютерных программ в большинстве случаев сводится к тому, чтобы запустить исполняемый файл формата EXE, который создается после установки приложения на компьютер (в мобильных устройствах применяются другие форматы). Для инсталляции предусмотрены те же исполняемые компоненты, обычно имеющие название Setup.exe (для обновлений системы Setup.msi). Но это не всегда так.

Например, некоторые программные компоненты, представленные исключительно в виде динамических библиотек DLL, способны запускаться только в другой программной среде.

Самым ярким примером являются VST-синтезаторы и эффекты, подключаемые к музыкальным редакторам и секвенсорам через соответствующий интерфейс или хост. Что такое компьютерная программа в этом смысле? Это даже не программа, а компонент, в котором прописан набор команд, исполняемых при подключении к интерфейсу и загрузке в оперативную память. Только из «оперативки» производится посыл на обработку центральным процессором, а не наоборот, как в случае с исполняемыми файлами.

Проблемы совместимости

Понятно, что создать какое-то универсальное приложение, которое бы работало абсолютно на всех известных операционных системах и устройствах, невозможно даже в принципе. Тем не менее, такие попытки предпринимаются, причем весьма небезуспешно (по крайней мере, в Windows что-то похожее есть).

Чего стоят только облачные сервисы, позволяющие осуществлять доступ к хранению или редактированию информации любого типа без физической инсталляции ПО на пользовательский терминал. К хранилищам или редакторам доступ может быть осуществлен с любого устройства (ПК, ноутбуки, смартфоны, планшеты). А мультимедиа не обсуждается вообще. Через веб-интерфейс пользователь любого устройства получает доступ к медиа-контенту (тот же хостинг YouTube).

Вместо итога

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

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

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

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

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

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

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

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

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

Программы с исходными текстами, доступными для прочтения и изменения любым желающим, называются открытыми программами . Любая компьютерная программа является объектом авторского права. Авторы или собственники программ имеют право ограничивать и даже полностью закрывать доступ к их исходным текстам, которые являются интеллектуальной собственностью правообладателей.

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

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

11.06.2010

Читайте также:

Последнее редактирование: 2012-01-23 12:08:31

Метки материала: ,

Программа – это один из основных инструментов пользователя компьютером. Всё процессы, которые происходят на компьютере, были бы не возможны без программ. Загрузка операционной системы происходит с помощью программы, сама операционная система – это программа, любая игра – это программа. Вы смотрите видео или слушаете музыку – всё это происходит с помощью программы.

Есть программы, которые пользователь должен устанавливать сам – пользовательские программы, например любая игра или видео-, аудио-плеер. Есть программы, которые устанавливаются автоматически при установке Windows – служебные программы, например Проводник. Есть программы, которые также устанавливаются сами и запускаются в фоновом режиме, работая в оперативной памяти компьютера – это системные программы, некоторые из них можно увидеть в Диспетчере задач (комбинация клавиш Ctrl+Alt+Del).

Как можно отличить программу от обычного файла?
1. Чаще всего конечно по расширению. Программы обычно имеют расширение «.EXE».

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

3. При запуске программы, если она уже установлена, откроется её рабочая область – интерфейс. Если же программа не установлена, то откроется мастер установки программы, правда это если программа требует установки – Вы это сразу поймёте. А вот если открывать обычный файл, то запустится программа, которая знает, как работать с этим файлом, она и откроет содержимое данного файла. Например, если вы запускаете музыкальный файл, то сначала откроется программа-плеер, а затем начнётся воспроизведение выбранного файла.


4. Если посмотреть на рабочий стол или в Проводник, то программы выделяются от файлов яркими ярлыками. И если нажать ПРАВОЙ кнопкой мыши на ярлыке и выбрать СВОЙСТВА, то в ТИПЕ ОБЪЕКТА будет написано «Приложение», а у файла будет написано ТИП ФАЙЛА, например, «Текстовый файл».


5. Ну и, наверное, очевидное отличие: файл – это продукт программы, а программа – это продукт программиста 🙂

Компьютерная программа

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

Программа - представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения определённого результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения.

Создание программ

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

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

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

Правовые аспекты

Программы с общедоступными исходными текстами называются открытыми .

Компьютерные программы в большинстве стран являются объектами авторского права . В некоторых странах компьютерные программы могут защищаться патентами . Авторское и некоторые другие [какие? ] права интеллектуальной собственности позволяют ограничивать доступ к исходным текстам программ.

См. также

Примечания


Wikimedia Foundation . 2010 .

Смотреть что такое "Компьютерная программа" в других словарях:

    - (ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ), набор расположенных поэтапно команд, позволяющих КОМПЬЮТЕРУ выполнить поставленную задачу. Обычно компьютер может выполнять самые различные задачи, в том числе обработку слов, расчеты, рисование, передачу сообщений, а… … Научно-технический энциклопедический словарь

    Последовательность инструкций, предназначенная для исполнения устройством управления вычислительной машины Словарь бизнес терминов. Академик.ру. 2001 … Словарь бизнес-терминов

    компьютерная программа - код — [А.С.Гольдберг. Англо русский энергетический словарь. 2006 г.] Тематики энергетика в целом Синонимы код EN computer codecode …

    компьютерная программа - 3.10 компьютерная программа (computer program): Набор упорядоченных команд и данных, которые описывают операции в форме, приемлемой для их выполнения компьютером. Источник … Словарь-справочник терминов нормативно-технической документации

    компьютерная программа расстановки переносов - Специальная программа или опция в системах верстки, предназначенная для автоматической расстановки переносов в словах текста согласно заданным правилам. Расстановка переносов может быть газетной (более грубой) или книжной (с соблюдением всех… … Справочник технического переводчика

    КОМПЬЮТЕРНАЯ ПРОГРАММА-ОБОЛОЧКА - КОМПЬЮТЕРНАЯ ПРОГРАММА ОБОЛОЧКА. См. авторские системы … Новый словарь методических терминов и понятий (теория и практика обучения языкам)

    компьютерная программа [код] для детального анализа процесса - — [А.С.Гольдберг. Англо русский энергетический словарь. 2006 г.] Тематики энергетика в целом EN best estimate code … Справочник технического переводчика

    компьютерная программа [код] для решения уравнений Навье - Стокса - (для нестационарных течений в турбомашинах) [А.С.Гольдберг. Англо русский энергетический словарь. 2006 г.] Тематики энергетика в целом EN Navier Stokes computer code … Справочник технического переводчика

Относится к категории нематериальных активов .

Энциклопедичный YouTube

  • 1 / 5

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

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

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

    Хранение и выполнение

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

    Одновременное выполнение

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

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

    Самомодифицирующиеся программы

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

    Использование программ

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

    Правовые аспекты

    Согласно ст. 1261 ГК РФ программой для ЭВМ является представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств в целях получения определенного результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения.

    Программы с общедоступными исходными текстами называются открытыми .

    Компьютерные программы в большинстве стран являются объектами авторского права (включая Украину и Россию). В некоторых странах компьютерные программы могут защищаться патентами . Патентованию компьютерных программ способствовало Соглашение о торговых аспектах прав интеллектуальной собственности, которое установило минимальные требования к охраняемому ряду объектов прав интеллектуальной собственности и фактически разрешило патентовать программы. Соглашение ТРИПС обязательно для выполнения на территории Украины и России как государств-членов ВТО.

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

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

    Действующим законодательством Российской Федерации не предусмотрено патентование компьютерных программ как таковых. Данные объекты интеллектуальной собственности охраняются авторским правом, которое возникает автоматически с момента их создания и не требуют обязательной государственной регистрации. Однако программы для ЭВМ и базы данных могут быть зарегистрированы в Роспатенте по желанию правообладателя.



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows