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

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

Begin a:=5; b:=a+7*(2*a/b-abc)/40b; end

6. Ответ:

Лексический блок:

Входная инф.:

Begin a:=5; b:=a+7*(2*a/b-abc)/40b; end

Выходная инф.:

Begin | a | := | 5| ; | b | := | a | + | 7 | * | ( | 2 | * | a | / | b | - | abc | ) | / | 40b | ; | end

Begin (1,0)

a (30,1)

:= (24,0)

5(40,1)

; (20,0)

b (30,2)

:= (24,0)

a (30,1)

+ (22,0)

7 (40,2)

* (23,0)

( (25,0)

2 (40,3)

* (23,0)

a (30,1)

/ (23,1)

b (30,2)

- (22,1)

abc (30,3)

) (26,0)

/ (23,1)

40b (30,4)

; (20,0)

end (2,0)

Синтаксический блок:

Входная инф.:

Выходная инф. с лексического блока.

Выходная инф.:

begin

сум(5,0,a)

умнож(2,а,R1)

дел(R1,b,R2)

выч(R2,abc,R3)

умнож(7,R3,R4)

дел(R4,40b,R5)

сум(a,R5,b)

end

Генератора кода

Входная инф.:

Выходная инф. с синтаксического блока.

Выходная инф.:

Выполнение программы

Глава №3

  1. Вопрос:

Что понимается под словарем языка? Синтаксисом? Семантикой?

1. Ответ:

Словарь языка содержит множество лексем.

Синтаксис языка представляет собой совокупность правил построения языковых конструкций (предложений) из лексем.

Семантика языка это совокупность правил интерпретации лексем и языковых конструкций.

  1. Вопрос:

В чем суть метода синтаксически-ориентированной трансляции?

2. Ответ:

Метод синтаксически-ориентированной трансляции, основанный на работах американского ученого Ноэля Хомского. Из гипотезы Хомского следует, что семантический анализ сводится к синтаксическому и состоит из двух процедур:

  1. распознавание структуры входного предложения;

  2. построение выходного текста (действий) на основе этой структуры.

  1. Вопрос:

Назовите основные понятия теории формальных языков.

3. Ответ:

Основные понятия теории формальных языков:

Словарь – это конечное множество элементов, называемых символами.

Цепочка над словарем V – это произвольная упорядоченная последовательность символов словаря.

Пустая цепочка – это цепочка, не содержащая символов (обозначается ).

  1. Вопрос:

Перечислите основные операции над цепочками.

4. Ответ:

Операции над цепочками:

  1. Конкатенация (склеивание) – бинарная операция на множестве V*.

Если , V*, то результат конкатенации – цепочка .

  1. Подстановка – замена некоторой цепочки заданной цепочки  цепочкой : = aabcc, = bca, = abcac.

  1. Вопрос:

Что называется языком над словарем?

5. Ответ:

Языком над словарем V называется некоторое множество цепочек над словарем V.

Обозначение: L(V) V*.

  1. Вопрос:

Дан словарь V={a, в, с}. Приведите примеры конечного и бесконечного языков над данным словарем.

6. Ответ:

  1. L={авс, аавс, васс} Это пример конечного языка, состоящего из трех цепочек.

  2. L={an , вn , сn} (n0). aaaвввссс L, aaaвсL. Это пример языка содержащего бесконечное количество цепочек.

  1. Вопрос:

Дан язык L={синий лес, синий темный лес, темный лес}. Приведите примеры словарей, над которыми можно определить этот язык.

7. Ответ:

V1={синий, лес, темный}

V2={с,и,н,й,л,е,т,м,ы}