Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lec_20_02_13.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
64 Кб
Скачать
☆

2. Общие особенности языков программирования и трансляторов

2.1. Различия языков программирования.

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

1. Различия в организации языков.

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

2. Различие в структуре языков.

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

3. Различия в семантике языков.

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

4. Различия в парадигмах программирования языков.

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

5. Различия формальных грамматик языков.

Грамматикой языка называется система правил, описывающих язык программирования.

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

2.2. Общие характеристики и параметры языков программирования.

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

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

  3. Для любого языка определяется:

  • множество символов, которые можно использовать для записи правильных программ (алфавит), основные элементы;

  • множество правильных программ (синтаксис);

  • смысл каждой правильной программы (семантика).

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

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

Связь структуры программы с языком программирования называется синтаксическим отображением.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]