Инструментальное по. Курсовая работа: Сущность и особенности использования инструментального программного обеспечения Программный инструментарий

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

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

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

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

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

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

Примеры интегрированных сред программирования: для разработки консольных приложений: Turbo Paskal, Quick Basic, Borland C++ для разработки Windows приложений: Microsoft Visual C++, Microsoft Visual Basic, Embarcadero Delphi, Embarcadero JBuilder

Приведём пример классификации инструментального программного обеспечения.

Вид инструментального ПО

Назначение

Специализированные текстовые редакторы

для создания и редактирования кода программы

Трансляторы:

для перевода программы в машинный код

Ассемблеры

для перевода программы на языке Ассемблер

Macro Assembler (MASM), Turbo Assembler (TASM) - для процессоров x86,

Компиляторы

для перевода программы на языке высокого уровня (Паскаль, Делфи, Си, Бейсик). Перевод осуществляется целиком однократно. При переводе создается файл.

GNU Compiler Collection (GCC)-для Cи, С++, Java, Fortran и др.; Free Pascal Compiler (FPS)-для Паскаля; Intel C++ compiler (для Си, С++, Fortran)

Интепретаторы

для покомандного перевода и исполнения программы на языке высокого уровня (все скриптовые языки: VBScript, JavaScript, PHP, Perl, Python, Ruby). Файл не создается.

компоновщики (линкеры, редакторы связей)

для сборки исполняемого файл из объектных файлов (двоичные коды отдельных файлов программы)

отладчики (дебаггеры)

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

библиотеки

1. Классификация программного обеспечения

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

В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории (смотри рисунок) :

1. прикладные программы , непосредственно обеспечивающие выполнение необходимых пользователям работ;

2. системные программы , выполняющие различные вспомогательные функции, например:

    управление ресурсами компьютера;

    создание копий используемой информации;

    проверка работоспособности устройств компьютера;

    выдача справочной информации о компьютере и др.;

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

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

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

Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность).

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

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

На сегодняшний день можно сказать, что более или менее определённо сложились следующие группы программного обеспечения:

    операционные системы и оболочки;

    системы программирования (трансляторы, библиотеки подпрограмм, отладчики и т.д.);

    инструментальные системы;

    интегрированные пакеты программ;

    динамические электронные таблицы;

    системы машинной графики;

    системы управления базами данных (СУБД);

    прикладное программное обеспечение.

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

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

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

В функции операционной системы входит:

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

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

1. однопользовательские однозадачные, которые поддерживают одну клавиатуру и могут работать только с одной (в данный момент) задачей;

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

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

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

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

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

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

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

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

Современные операционные системы для ПЭВМ отличаются друг от друга, прежде всего ориентацией на машины определенного класса, поддерживаемыми ими режимами обработки, предоставляемыми сервисными возможностями. Примерами ОС для ПЭВМ являются СР/М, MS DOS, OS/2 Warp (IBM), Windows 95 (Microsoft).

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

По своему назначению они близки системам программирования. К инструментальным программам, например, относятся:

    редакторы;

    средства компоновки программ;

    отладочные программы, т.е. программы, помогающие находить и устранять ошибки в программе;

    вспомогательные программы, реализующие часто используемые системные действия;

    графические пакеты программ и т.п.

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

НХИ-1, 20.02.12

Инструментальные системы программирования.

Транслятор, компилятор, интерпретатор

Трансляторы для компьютеров реализуются в виде компиляторов и интерпретаторов , которые существенно различаются.

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

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

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

· компилятор и/или интерпретатор;

· средства создания и редактирования текстов программ;

· библиотеки стандартных программ и функций;

· диалоговая среда для пользователя;

· графические библиотеки и утилиты для работы с библиотеками

· и другие средства.

К инструментальным системам программирования относятся Turbo Basic , Quick Basic , Turbo Pascal , Turbo C, Delphy, Builder .

Язык Бейсик создан как язык для начинающих.

Язык Паскаль разработан Никласом Виртом для обучения студентов программированию. Паскаль – это язык структурного программирования . Расширенный вариант языка – Turbo Pascal .

Язык Си соединяет свойства языка высокого уровня с возможностями использования программирования как на языке Ассемблера.

Современныесистемы программирования: Borland Delphi , Microsoft Visual Basic, Borland C++ , которые предназначены для создания программ в среде Windows и предоставляют удобные средства визуальной разработки.

К инструментальным программам относятся:

· редакторы;

· средства компоновки программ;

· отладочные программы;

· графические пакеты программ и т.п.

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

Даже при наличии сотен тысяч программ для ПК пользователям может потребоваться что-то такое, чего не делают (или делают, но не так) имеющиеся программы. В этих случаях для создания новых программ используется инструментальное ПО, позволяющее разрабатывать как системное, так и прикладное программное обеспечение. Следовательно, оно играет в программировании роль средств производства.

Системы программирования – это комплексы программ и прочих средств, предназначенных для разработки и эксплуатации программ на конкретном языке программирования для конкретной архитектуры ПК (платформы).

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

Язык программирования – это искусственный язык, с помощью которого записывается алгоритм решения задачи в виде, понятном ПК.

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

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

На этапе трансляции происходит преобразование исходного кода программы в объектный код, который дальше обрабатывается редактором связей. Редактор связей – специальная программа, обеспечивающая построение загрузочного модуля , пригодного к выполнению (рис. 6.2).

Рис. 6.2. Схема процесса создания загрузочного модуля программы

Различают следующие виды трансляторов: интерпретатор, компилятор.

Интерпретатор берёт очередной оператор языка из текста программы, анализирует его структуру и сразу исполняет. Потом переходит к следующему оператору. Компилятор переводит всю программу в машинные команды.

Из универсальных языков программирования сегодня наиболее популярны следующие: Бейсик (Basic), Паскаль (Pascal), Си++ (C++), Ява (Java).

Для каждого из этих языков программирования сегодня имеется немало систем программирования, выпускаемых различными фирмами и ориентированных на различные модели ПК и операционные системы. Наиболее популярны следующие визуальные среды быстрого проектирования программ для Windows: Microsoft Visual Basic; Borland Delphi; Borland C++Builder; Microsoft Visual Studio (Visual Basic.net, C++, C#, J#).

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

Особым классом систем программирования являются системы для создания приложений типа клиент-сервер. Эти системы позволяют быстро создавать информационные системы для подразделений и даже крупных предприятий. В них содержатся средства для создания пользовательского интерфейса, описания процедур обработки данных, заготовки для выполнения типовых действий по обработке данных и т.д. Эти системы, как правило, позволяют работать с самыми различными СУБД – Oracle, Sybase, Microsoft SQL Server и др. Среди наиболее популярных систем такого рода можно назвать PowerBuilder фирмы Sybase, Delphi фирмы Borland, Visual Basic фирмы Microsoft. Разумеется, средства для создания приложений типа клиент-сервер имеются и в составе СУБД типа клиент-сервер (Oracle, Sybase и др.), но они ориентированы только на данную СУБД.

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

В состав средств разработки программного обеспечения входят следующие программы:

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

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

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

Процедурно-ориентированные и проблемно-ориентированные языки относятся к языкам высокого уровня, использующим макрокоманды. Макрокоманда при трансляции генерирует много машинных команд (для процедурноориентированного языка это соотношение в среднем "1 к десяткам машинных команд", а для проблемно-ориентированного – "1 к сотням машинных команд". Процедурноориентированные языки программирования являются самыми используемыми (Basic, Visual Basic, Pascal, Borland Delphi, С и др.). В этом случае программист должен описывать всю процедуру решения задачи, тогда как проблемно-ориентированные языки (их называют также непроцедурными) позволяют лишь формально идентифицировать проблему и указать состав, структуры представления и форматы входной и выходной информации для задачи.

При выполнении инструкций программ компьютеру необходимо преобразовать удобные для человеческого восприятия операторы, написанные на каком-либо языке программирования, в форму, попятную для компьютера. Инструментальное программное обеспечение имеет специальные программы, транслирующие (translate) текст программ, написанных на различных языках программирования, в машинные коды, которые затем выполняются компьютером. Этот вид программного обеспечения называется компилятором или интерпретатором. Текст программы, написанной на языке программирования высокого уровня, до того как быть преобразованным в машинные коды, называется исходным кодом (source code). Компилятор (compiler) преобразует исходный код в машинные коды, называемые объектным кодом (object code) – программой на выходном языке транслятора. Перед выполнением происходит процесс редактирования связей (linkage editing), заключающийся в том, что модули выходной программы объединяются с другими модулями объектного кода, содержащими, например, данные. Результирующий загрузочный модуль – это команды, непосредственно выполняемые компьютером. Некоторые языки программирования содержат не компилятор, а интерпретатор (interpreter), который преобразует каждое отдельное выражение исходного кода в машинные коды и сразу выполняет их. Интерпретатор удобен на этапе отладки программы, так как обеспечивает быструю обратную связь при обнаружении ошибки в исходном коде. Основы программирования на языке высокого уровня Visual Basic изложены в гл. 12 настоящего учебника.

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

Основные функции таких СУБД:

  • управление данными во внешней памяти (на дисках);
  • управление данными в оперативной памяти с использованием дискового кэша;
  • фиксация изменений в специальных журналах, резервное копирование и восстановление базы данных после сбоев;
  • поддержка языков БД (язык определения данных, язык манипулирования данными).

Теоретические основы СУБД описаны выше (параграф 3.2), а практическое применение описано в гл. 10.

Поддержите проект — поделитесь ссылкой, спасибо!
Читайте также
Что делать, если интернет работает, а браузер не грузит страницы Заражение компьютера вирусными программами Что делать, если интернет работает, а браузер не грузит страницы Заражение компьютера вирусными программами NSPortal — Социальная сеть работников образования NSPortal — Социальная сеть работников образования Новый японский флагман: обзор смартфона Sony Xperia X Новый японский флагман: обзор смартфона Sony Xperia X