29374

Фазы трансляции программ

Доклад

Информатика, кибернетика и программирование

На вход лексического анализатора подаётся последовательность символов входного языка. ЛА выделяет в этой последовательности простейшие конструкции языка которые называют лексическими единицами лексемами. Генератор каждому символу действия поступающему на его вход ставит в соответствие одну или несколько команд выходного языка. В качестве выходного языка могут быть использованы команды устройства команды ассемблера либо операторы какоголибо другого языка.

Английский

2013-08-21

32.5 KB

2 чел.

10) Фазы трансляции программ.

Работа компилятора состоит из нескольких стадий, которые могут выполняться последовательно, либо совмещаться по времени. Эти стадии могут быть представлены в виде схемы.

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

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

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


 

А также другие работы, которые могут Вас заинтересовать

35397. Резервування і ініціалізація памяті 54.5 KB
  Мета: Навчитися резервувати і ініціалізувати память під програми на асемблері. Це основна команда пересилки даних. Вона реалізує найрізноманітніші варіанти пересилки. Відзначимо особливості застосування цієї команди.
35398. Програмування арифметичних дій 43.5 KB
  Мета: Навчитися резервувати і ініціалізувати память під програми на асемблері.
35399. Тема: Програмування арифметичних дій множення і розподіл. 53.5 KB
  Індивідуальне завдання Скласти програму яка знайде приватне чисел 99 і 9. Множення двійкових чисел без знаку. Для множення чисел без знаку призначена команда mul сомножитель_1 Розташування операндів і результату при множенні. Перший співмножник Другий співмножник Результат Байт L 16 бітів в АХ: L молодша частина результату; АН старша частина результату Слово АХ 32 біти в парі DX:X: АХ молодша частина результату; DX старша частина результату Подвійне слово ЕАХ 64 біти в парі EDX:EX: ЕАХ молодша частина результату; EDX ...
35401. Тема: Програмування арифметичних виразів. 443 KB
  Розташування операндів і результату при множенні. Перший співмножник Другий співмножник Результат Байт L 16 бітів в АХ: L молодша частина результату; АН старша частина результату Слово АХ 32 біти в парі DX:X: АХ молодша частина результату; DX старша частина результату Подвійне слово ЕАХ 64 біти в парі EDX:EX: ЕАХ молодша частина результату; EDX старша частина результату Розподіл чисел із знаком і помилки що виникають в результаті розподіли Для розподілу чисел із знаком призначена команда idiv дільник Для цієї команди...
35403. СОЦИАЛЬНЫЕ И ЛИЧНОСТНЫЕ ОСОБЕННОСТИ ЖЕНЩИН, ПЛАНИРУЮЩИХ ПРЕРЫВАНИЕ БЕРЕМЕННОСТИ 519.5 KB
  Проблема абортов стоит на особом месте в нашей стране, в связи с социально-демографическими условиями. Эффективность мер принимаемых государством по охране репродуктивного здоровья женщин и здоровья населения в целом оценивается с учетом динамики, количества проведенных абортов.
35404. Теоретическая механика, краткий курс 8.07 MB
  В теоретической механике изучается одна из форм движения материи – механическое движение, состоящее в том, что тело с течением времени изменяет свое положение в пространстве по отношению к другим телам. Механическим называют тот вид взаимодействия тел, в результате которого происходит изменение их движения или изменение их формы (деформация).