Программное обеспечение – это совокупность программ, позволяющих организовать решение задач пользователя на компьютере. До недавнего времени программное обеспечение отождествляли с понятием математического обеспечения. Программное обеспечение является составной частью компьютера, и некоторая его часть поставляется вместе с технической аппаратурой.
КЛАССЫ ПРОГРАММНЫХ ПРОДУКТОВ

Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов:
аппаратная часть автономных компьютеров и сетей ЭВМ;
функциональные задачи различных предметных областей;
технология разработки программ.
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов, представленных на рисунке:
системное программное обеспечение;
пакеты прикладных программ;
инструментарий технологии программирования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.
Системное программное обеспечение направлено:
на создание операционной среды функционирования других программ;
на обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
на проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
на выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т.д.).
Пакет прикладных программ (application program package) – комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области.
Пакеты прикладных программ (ППП) служат программным инструментарием решения функциональных задач и являются самым многочисленным классом программных продуктов. В данный класс входят программные продукты, выполняющие обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, во многих случаях деятельность которых весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов.
ТРАНСЛЯТОР - это комплекс программ, обеспечивающих перевод программы, написанной на символическом языке, в совокупность машинных команд. В зависимости от функционального назначения транслятор может быть: компилятором, интерпретатором, ассемблером или языковым процессором.
КОМПИЛЯТОР – это транслятор, обеспечивающий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без её выполнения на компьютере.
ИНТЕПРЕТАТОР – транслятор, обеспечивающий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этой конструкции в компьютере.
АССЕМБЛЕР – транслятор, выполняющий перевод программы, записанной на машинно-ориентированном языке ассемблера в машинные коды.
ЯЗЫКОВОЙ ПРОЦЕССОР – это транслятор, совмещающий в себе функции компиляции, интерпретации и ассемблирования.