Специальная математика. Соловьев А.Е. - 77 стр.

UptoLike

Составители: 

Рубрика: 

Интерпретатор транслирует исходный текст порциями. Он позволяет получать первые
результаты уже на самых первых шагах обработки.
Интерпретатор обычно проще компилятора с аналогичного языка раз 10 – 100, но
примерно во столько же раз дольше идет обработка и требуются большие машинные
ресурсы на этапе выполнения.
Компилятор и интерпретатор дополняют друг друга и каждый хорош на своем месте.
Самыми широко известными примерами интерпретаторов, кроме интерпретаторов Бейсика,
служат операционные системы. Особенно это наглядно и многообразно представлено в ОС
UNIX.
По уровню транслируемого языка интерпретаторы подразделяются на собственно
интерпретаторы и ассемблеры.
Ассемблеры это машинно-зависимые языки изкого уровня). Исходный текст
ассемблера, а более строго макроассемблера - состоит из команд и макрокоманд.
Макрокомандам соответствуют настраиваемые заготовки на языке ассемблера -
макроописания, которые после необходимых настроек вставляются в текст программы.
Главная особенность макроассемблеров это преобразование программного текста
(текстовая замена) до начала трансляции претрансляция. Эту функцию выполняет
препроцессор.
Ассемблеры позволяют использовать преимущества и особенности конкретной
архитектуры. С другой стороны ассемблеры привязаны к архитектуре.
7.6. Основные функции компилятора.
Лексический анализ
1. Лексический анализ - приведение к некоторому стандартному виду ;
2. Синтаксический анализ - грамматический разбор ;
3. Семантический анализ - смысловой анализ;
4. Генерация выходного текста.
Лексический анализ выявляет лексемы - словарные единицы.
Основные функции лексического анализа:
1. выделение служебных слов языка (begin, while, for, …);
2. обработка численных констант;
3. выделение идентификаторов;
4. выделение сложных символов ( := <=);
5. внесение исправлений;
6. устранение различий устройств ввода;
7. устранение особенностей использования алфавитов, кодов.
7.7. Переход от недетерминированного распознающего автомата к
детерминированному
Состояния автомата и совокупности состояний, в который автомат переходит, объявляются
множествами. Каждое из этих множеств становится состоянием нового
детерминированного автомата. Переход из состояния, содержащего множество элементов,
будет в состояние-множесто, составленное из всех состояний, в которые в исходном
— 77 —
Интерпретатор транслирует исходный текст порциями. Он позволяет получать первые
результаты уже на самых первых шагах обработки.
Интерпретатор обычно проще компилятора с аналогичного языка раз 10 – 100, но
примерно во столько же раз дольше идет обработка и требуются большие машинные
ресурсы на этапе выполнения.
Компилятор и интерпретатор дополняют друг друга и каждый хорош на своем месте.
Самыми широко известными примерами интерпретаторов, кроме интерпретаторов Бейсика,
служат операционные системы. Особенно это наглядно и многообразно представлено в ОС
UNIX.
По уровню транслируемого языка интерпретаторы подразделяются на собственно
интерпретаторы и ассемблеры.
Ассемблеры – это машинно-зависимые языки (низкого уровня).            Исходный текст
ассемблера, а более строго – макроассемблера - состоит из команд и макрокоманд.
Макрокомандам соответствуют настраиваемые заготовки на языке ассемблера -
макроописания, которые после необходимых настроек вставляются в текст программы.
Главная особенность макроассемблеров – это преобразование программного текста
(текстовая замена) до начала трансляции – претрансляция. Эту функцию выполняет
препроцессор.
Ассемблеры позволяют использовать преимущества и особенности конкретной
архитектуры. С другой стороны ассемблеры привязаны к архитектуре.




                      7.6. Основные функции компилятора.
                                Лексический анализ

1. Лексический анализ - приведение к некоторому стандартному виду ;
2. Синтаксический анализ - грамматический разбор ;
3. Семантический анализ - смысловой анализ;
4. Генерация выходного текста.

Лексический анализ выявляет лексемы - словарные единицы.

Основные функции лексического анализа:
1. выделение служебных слов языка (begin, while, for, …);
2. обработка численных констант;
3. выделение идентификаторов;
4. выделение сложных символов ( := <=);
5. внесение исправлений;
6. устранение различий устройств ввода;
7. устранение особенностей использования алфавитов, кодов.


      7.7. Переход от недетерминированного распознающего автомата к
                               детерминированному

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

                                        — 77 —