Конспект лекций доцента и. А. Волковой по курсу «системы программирования»




НазваниеКонспект лекций доцента и. А. Волковой по курсу «системы программирования»
страница4/20
Дата публикации28.06.2013
Размер0.69 Mb.
ТипКонспект
lit-yaz.ru > Информатика > Конспект
1   2   3   4   5   6   7   8   9   ...   20
^

Основные средства СП.



Транслятор – переводит программу в машинный язык, на выходе получаем объектный модуль. Бывает двух видов: компилятор и интерпретатор.

^

Схема работы компилятора:



исходная программа компилятор программа на машинном языке



исходные данные результаты
Схема работы интерпретатора:

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

Компилятор работает при обращении, сразу обрабатывает всю программу и не нужен при её выполнении.
Отличия:

  • Для простых программ без циклов (или где их мало) используется интерпретатор

( if (E) A; else B).

  • Для программ с циклами – компилятор.

( do A;B; while (E))

Интерпретатор каждый раз вычисляет А,В, строит представление. Компилятор вычисляет 1 раз и использует этот результат.

  • Интерпретатор создать проще, быстрее.


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

Интерпретатор используется для языков с блочной структурой, строгой типизацией, где вначале надо описать все данные и конструкции (напр.,Pascal).

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

исходные данные




программа

исходная программа компилятор на машинном интерпретатор

языке
результат
Примеры промежуточных языков – ПОЛИЗ, виртуальная java-машина.

Перевод можно сделать машинно-независимым.

^

Схема компилятора:



Фаза анализа:

Исходная программа на языке программирования.



Лексический анализ.



Последовательность лексем.



Синтаксический анализ.




Промежуточное представление программы.




Семантический анализ. (Контроль контекстных условий.)




Фаза синтаксиса:

Подготовка к генерации объектного модуля.



Генерация объектного модуля.
Эта схема формальная.
Лексема – минимальная элементарная текстовая единица, несущая смысл (напр., служебные слова, знаки).
Задачи лексического анализа:

  • Выделение лексемы

  • Проверяются правила записи лексем

  • Преобразование лексемы к виду, удобному для работы (напр., к единой длине)

  • Удаление пробелов и всего остального, что не нужно программе.


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

  • Проверка правильности

  • Фиксирует распознанную синтаксическую структуру программы.


Семантический анализ:

  • Контроль контекстных условий.

  • Переменная описывается только 1 раз и т.д.


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

При использовании гибрида далее начинает работать интерпретатор.

Если чистая компиляция, начинает работать фаза синтаксиса.
Подготовка к генерации:

  • Распределение памяти.

  • Оптимизация программы (напр., избавление от многократных выражений одного и того же).


Генерация по подготовленным таблицам, семантике. Формируются машинные коды.
Для написания нужно знать характеристики языков.
Чтобы охарактеризовать язык, нужно:

  1. Алфавит.

Задается перечислением символов, из которых состоит язык.

На лексическом анализе – буквы, цифры, разделители и т.д., символы считываются и создаются лексемы.

На синтаксическом анализе – другой язык, другой алфавит – числа, слова и т.д.

  1. Синтаксис.

Правила организации языка. 2 формы организации: - БНФ (форма Бэкуса-Навара), -синтаксические диаграммы (строгое формальное описание синтаксиса)

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

Определяется смысл синтаксически правильных конструкций.

  1. Прагматика.

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

Переходим к изучению теории формальной грамматики языков.


1   2   3   4   5   6   7   8   9   ...   20

Похожие:

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconКонспект лекций по курсу «Объектно-ориентированное программирование»
Б. Страуструп. Язык программирования C++, 3-е изд./Пер с англ. – Спб.; М.: «Невский диалект» – «Издательство бином», 1999 г. – 991...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconКонспект лекций «Логистика. Конспект лекций»
Конспект лекций соответствует требованиям Государственного образовательного стандарта высшего профессионального образования

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconВ. Г. Баула Введение в архитектуру ЭВМ и системы программирования
Мгу им. М. В. Ломоносова. По данному курсу существует достаточно обширная литература, посвящённая программированию на Ассемблере,...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconРабочая программа по курсу «основы программирования на с++»
Программа предназначена для обучения программирования на языке С++ учреждений начального профессионального образования для овладения...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconМетодические указания к курсовой работе по дисциплине " системы программирования " Киев -2002
Целью курсовой работы по дисциплине "Системы программирования" является закрепление теоретического материала и приобретение практических...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconРабочая программа по курсу «основы Программирования на языке ассемблер»
Программа предназначена для обучения основам программирования на языке низкого уровня Ассемблере учащихся средних школ, учреждений...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconСистемы сбора информации на железнодорожном транспорте хабаровск
Конспект лекций предназначен для студентов дневной формы обучения специальности 0719 ²Информационные системы на ж д транспорте²,...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconУчебная программа курса или дисциплины «Основы программирования»
В частности, в курсе рассматриваются основные конструкции языков программирования, анализируются основные типы и структуры данных,...

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconКонспект лекций по дисциплине вгипу, 2009 Конспект лекций по дисциплине «Управление персоналом»
Крупица В. В., Яшкова Е. В., Егоров Е. Е. Управление персоналом: Конспект лекций по дисциплине – вгипу, 2009

Конспект лекций доцента и. А. Волковой по курсу «системы программирования» iconКонспект лекций. (Электронный учебник) Минск: бгэу, 2010. Тема 1...
Короленок Г. А. Менеджмент в торговле. Конспект лекций. (Электронный учебник) Минск: бгэу, 2010



Образовательный материал



При копировании материала укажите ссылку © 2013
контакты
lit-yaz.ru
главная страница