Инструментальное программное обеспечение

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

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

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

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

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

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

Другая разновидность транслятора – ассемблер, осуществляющий перевод программ с языка низкого уровня (языка Ассемблера) на машинный язык, имеющий примерно тот же уровень. Некоторые трансляторы служат для переноса программ с одной машины на другую.

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

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

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

Вывод:

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

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

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

Наши рекомендации