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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ВОЛГОГРАДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ФАКУЛЬТЕТ ПОДГОТОВКИ ИНЖЕНЕРНЫХ КАДРОВ

КАФЕДРА САПР и ПК

Контрольная работа

по курсу: «Основы трансляции»

Выполнил:

Студент группы АУЗ-261с

Васильев Е.В.

Шифр:

«__» _____________ 2013 г.

Проверил:

________ Розалиев В.М.

.

«__» _____________2012 г.

Волгоград

2013

Глава № 1

  1. Вопрос:

Обоснуйте необходимость разработки новых формальных языков и трансляторов.

  1. Ответ:

Есть две причины, почему приходиться разрабатывать новые языки и соответственно, трансляторы с них:

а) Универсальный язык не всегда удобен в конкретной узкой области – или громоздок, или не подходит модель, взятая за его основу, или…

б) САПР создается для конечных пользователей – конструкторов и технологов, следовательно, взаимодействие с САПР должно вестись на удобном для пользователя языке. Конструкторы и технологи не обязаны знать программирование. Элементы вновь созданного языка должны быть близки к области, в которой работают конструкторы. Пользователь должен легко оперировать знакомыми и понятными ему терминами.

  1. Вопрос:

Чем языки проектирования отличаются от языков программирования?

2. Ответ:

Языки проектирования – языки, предназначенные для описания информации об объекте и процессе проектирования.

Языки программирования – формальные языки для описания данных (информации) и алгоритма (программы) их обработки на ЭВМ. Основу языков программирования составляют алгоритмические языки.

  1. Вопрос:

По каким признакам классифицируют языки проектирования?

3. Ответ:

Языки проектирования классифицируются по следующим признакам:

а) По месту в процессе проектирования, которые в свою очередь делятся:

1) Входные

2) Внутренние

3) Промежуточные

4) Выходные

5) Сопровождения

6) Управления

б) По связи с универсальными ЯП

1) Автономные

2) Расширяющие

в) По оперативности

1) Диалоговые

2) Пассивные

г) По способу представления информации

1) Алф-цифровые

2) Графические

3) Голосовые

4) Смешанные

  1. Вопрос:

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

4. Ответ:

Требования к языкам проектирования:

  1. Эффективность – точность передачи задания пользователя и лаконичность записи.

  2. Полнота – возможность описания всех объектов проектирования, а также всех действий, имеющих отношение к цели проектирования конкретной САПР.

  3. Непротиворечивость – каждое предложение, сформулированное в терминах данного языка с использованием правил (синтаксиса) данного языка должно иметь естественную семантическую интерпретацию (смысл).

  4. Расширяемость – обеспечение возможности дополнения языка в соответствии с развитием предметной области.

  5. Выразительность и проблемная ориентация – обеспечение простоты изучения и использования языков проектировщиками – не программистами. Языки должны быть близки к естественному.

Глава № 2

  1. Вопрос:

В чем состоит задача трансляции?

1. Ответ:

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

  1. Вопрос:

Какой тип языкового процессора называют компилятором? Препроцессором? Интерпретатором?

2. Ответ:

Компилятором – называют транслятор, у которого язык L2 (объектный язык) – язык машинных команд.

Препроцессором – называют транслятор, у которого язык L2 (объектный язык) – язык высокого уровня.

Интерпретатором – называют транслятор, который не выдает результата на языке L2, а сразу выполняет действие.

  1. Вопрос:

Из каких основных блоков обычно состоит компилятор?

3. Ответ:

Компилятор обычно состоит из следующих блоков:

1) Лексического

2) Синтаксического

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

Иногда дополнительно используются:

1) Семантический блок

2) Блок оптимизации

  1. Вопрос:

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

4. Ответ:

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

  1. Вопрос:

Какова главная функция лексического блока? Синтаксического? Генератора кода?

5. Ответ:

Лексический блок – устанавливает из каких частей состоит данная цепочка и преобразует части в лексемы.

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

Генератор кода) – «развертывает» атомы, построенные синтаксическим блоком в последовательность команд ЭВМ.