Лементы языка программирования
В любом языке программирования определены элементы ЯП, способы организации данных и способы организации действий над ними.
Языки программирования имеют основные составляющие (элементы):
§ алфавит – совокупность символов, отображаемых на устройствах печати и экране ЭВМ;
§ лексика – совокупность правил образования цепочек символов (лексем), образующих идентификаторы, операторы, операции и другие компоненты языка;
§ синтаксис – совокупность правил образования слов и предложений ЯП;
§ семантика – смысловое содержание слов и предложений ЯП.
- Системы программирования
Для разработки программ на ЯП необходима соответствующая система программирования.
Система программирования – это совокупность средств разработки программ, обеспечивающих автоматизацию составления и отладки программ пользователя.
Система программирования включает в себя, кроме ЯП:
1) текстовый редактор, осуществляющий функции записи и редактирования текстов программы;
2) транслятор, осуществляемый перевод исходного текста программы в машинные коды с диагностикой синтаксических и логических ошибок;
3) загрузчик программ, позволяющий выбрать из директория нужный текстовый файл программы;
4) запускатель программ, осуществляющий процесс выполнения программ;
5) диспетчер файлов, предоставляющий возможность выполнять операции с файлами;
6) отладчик, выполняющий сервисные функции по отладке и тестированию программы;
7) компоновщик (редактор связей), осуществляющий объединение объектных и загрузочных модулей в единый модуль с последующей записью в файл;
8) библиотека подпрограмм, т.е. организованный соответствующим образом набор подпрограмм, используемый при решении разных задач.
Системы программирования классифицируют по 3 признакам:
1. по набору исходных языков:
§ одноязыковые;
§ многоязыковые, в которых отдельные части программ могут быть подготовлены на различных языках и объединены в единый модуль во время или перед выполнением программ.
2. по возможности расширения:
§ замкнутые;
§ открытые, в которые можно ввести новый входной язык с транслятором, не требуя изменений в системе.
3. по способу трансляции:
§ компиляция;
§ интерпретация.
Структура многоязыковой, открытой, компилирующей системы программирования:
(Схема разработки прикладных программ в среде СП):
Программа на исходном языке (исходный модуль) готовится с помощью текстовых редакторов и в виде текстового файла поступает на вход транслятора.
Трансляция исходной программы преобразует исходный модуль в промежуточную - объектную форму.
Объектный модуль представляет собой текст программы на машинном языке, включающий машинные инструкции, словари, служебную информацию.
С помощью специальных средств (компоновщика, редактора связей) объединяется объектный и загрузочный модуль в единый загрузочный модуль, с последующей записью в библиотеку или файл.
Загрузочный модуль после сборки помещается в пользовательскую библиотеку программ или непосредственно направляется на исполнение.
Выполнение модуля состоит в загрузке его в оперативную память, настройке по месту в памяти и передаче ему управления. Образ загрузочного модуля в памяти называется абсолютным модулем, поскольку все команды ЭВМ здесь приобретают окончательную форму и получают абсолютные адреса в памяти.
Современные системы программирования являются интегрированной средой программирования, которые содержат текстовый редактор, компилятор, компоновщик, встроенный отладчик, и предоставляют дополнительные удобства для написания и отладки программ.