Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Принципи розробки компіляторів

Реферат Принципи розробки компіляторів





ВСТУП

компілятор програма граматика

Компілятор - програмний модуль, завданням якого є переклад програми, написаної на одній з мов програмування (вихідний мова) в програму на мову асемблера або мову машинних команд.

Більшість компіляторів переводять програму з деякого високорівневого мови програмування в машинний код, який може бути безпосередньо виконаний комп'ютером.

Метою даної курсової роботи є вивчення складових частин, основних принципів побудови і функціонування компіляторів, практичне освоєння методів побудови складових частин компілятора для заданого вхідного мови.

Курсова робота полягає у створенні окремих частин компілятора заданого мови.

У першій частині роботи ставиться завдання розробити програму, яка отримує на вході набір ідентифікаторів, організовує таблицю по заданому алгоритму і дозволяє здійснити багаторазовий пошук ідентифікатора в цій таблиці.

У другій частині роботи потрібно розробити програму, яка виконує лексичний аналіз вхідного тексту по заданій граматиці і породжує таблицю лексем із зазначенням їх типів і значень.

У третій частині роботи потрібно розробити програму, яка на підставі таблиці лексем виконує синтаксичний розбір тексту по заданій граматиці з побудовою дерева розбору.

Результатами курсової роботи є програмна реалізація заданого компілятора і пояснювальна записка, оформлена відповідно до вимог стандартів та завдання на курсову роботу.

В якості середовища розробка для реалізації програми використаний мова програмування C ++ і середу програмування Visual Studio C ++ 2012 .


1. ОПИС ВХІДНОГО МОВИ


Вхідний мова являє собою підмножина мови програмування Pascal.

Програма на даній мові може включати в себе символи латиниці, цифри, знак _, символьні константи, різні оператори. Текст на вхідній мові міститься в текстовому файлі.

Набір ідентифікаторів організовуються в таблицю за методом впорядкованого списку. Необхідна можливість здійснення багаторазового пошуку ідентифікатора в цій таблиці. Список ідентифікаторів вважати заданим у вигляді текстового файлу. Довжина ідентифікатора обмежена 32 символами. Він може включати в себе символи кирилиці і латиниці, цифри, знаки ^ і _. Ідентифікатор не може починатися з цифри.

Передбачені наступні варіанти операторів вхідний програми:

- оператор присвоювання (: =);

- зарезервовані слова If, Else, Then, While, Do, Prog, End;

- арифметичні операції (+, -, /, *);

- операндами у виразах можуть виступати ідентифікатори і константи (один символ, укладений в одинарні лапки);

- все ідентифікатори повинні сприйматися як змінні;

- допускається присутність коментарів оформлених вигляді://коментар

Для виділення лексем заздалегідь будується кінцевий автомат.

Даний мова належить до КС-мов, тому може бути описаний наступною граматикою:


lt; буква gt;? A | .... | < i align="justify"> Z | .... | a |.... | z | _

lt; аріфм.опер. gt;? + | - | * | /

lt; цифра gt;? 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

lt; ID gt;? Lt; буква gt;

| lt; ID gt; lt; буква gt;

| lt; ID gt; lt; цифра gt;

lt; сімв.конст. gt; ? lt; буква gt;

| lt; цифра gt;

lt; операнд gt;?...


сторінка 1 з 8 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми побудови об'ємних гістограм за допомогою мови програм ...
  • Реферат на тему: Аналіз програми та підручніків з української мови Щодо Вивчення частин мови ...
  • Реферат на тему: Розробка на мові програмування С програми, що ілюструє роботу з символами, ...
  • Реферат на тему: Розробка програми на мові програмування С + + з використаних об'єктно-о ...
  • Реферат на тему: Розробка програми з використанням мови логічного програмування Prolog