Основные понятия алгоритмических языков. Алфавит. Синтаксис. Семантика

  • docx
  • 13.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-00881.docx

Основные понятия алгоритмических языков. Алфавит.

Синтаксис. Семантика

Обычный разговорный язык состоит из четырех основных


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

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

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

Семантика – система правил толкования конструкций языка. Таким образом, программа составляется с помощью соедине-

ния символов алфавита в соответствии с синтаксическими правилами и с учетом правил семантики.

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

исходным модулем.

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

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

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

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


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

 

 

 

Исполняемый модульОбъектный модульИсходный модульКомпиляция                                     Компоновка

 


 

Перевод кон- струкций языка в ма- шинные ко- ды с исполь- зованием от- носительных адресов


Добавление необходимых стандартных программ,

замена отно- сительных адресов ре- альными


 

 

 

Рис. 4.1. Схема трансляции в режиме компиляции

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

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

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

   библиотеки стандартных программ;

   средства отладки;

   справочную службу;

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

   диалоговый интерфейс.