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

Реферат Процес создания компілятора вхідної мови





.dataStructures;System.IO;lab3_Sintax

{partial class Form1: Form

{Form1 ()

{();

} struct AllWords

{string lName; int charNumber; int rowNumber; int charInRowNumber;

} AllWords [] Lexems;

/ / ключові словаstring [] KeyWords={«ціле»,/*«дробове»,«символ»,«рядок»,*/

«якщо»,«то»,/*«інакше»,«для»,*/«доки»,

«ПРОГРАМА»,«КІНЕЦЬ»,«закрити»,

«правдивість», «Хибне»,

«друк»};

/ / Оператори та синтаксичні сімволіstruct Oper

{string name; string type;

} Oper [] Operators=new Oper [] {new Oper {name=«+», type=«Знак суми»}, Oper {name=«-», type =«Знак різніці»}, Oper {name="*", type=«Знак множення»}, Oper {name="/", type=«Знак ділення»}, Oper {name= «=», type=«Знак прісвоєння»}, Oper {name=«==», type=«Перевірка на Рівність»}, Oper {name=«+ +», type=« ; Інкремент »}, Oper {name =« - », type =« Декремент »}, Oper {name =« & », type =« логічне І »}, Oper {name =« | | », type =« логічне АБО »}, Oper {name =«! », type =« логічне НЕ »}, Oper {name =«> », type =« Знак порівняння » ;}, Oper {name="<", type=«Знак порівняння»}, Oper {name=«(», type=«Відкріваюча дужка»}, Oper {name=«)» ;, type=«Закріваюча дужка»}, Oper {name="{», type=«Знак Відкриття блоку»}, Oper {name=«}», type=«Знак Закриття блоку»} , Oper {name=«,», type=«Кома (синтаксис)»}, Oper {name=«;», type=«Знак Закінчення рядка»},

/ / new Oper {name=«[», type=«Відкріваюча кв.дужка»},

/ / new Oper {name=«]», type=«Закріваюча кв.дужка»}, Oper {name=«" », type =« лапка. позначені тексту »}

};

/ / Бінарні дерева: TBinarySTree BTKeyWords=new TBinarySTree (); TBinarySTree BTOperators=new TBinarySTree (); int errorCount=0;// Лічильник помілокbool LexAnalizPerformed=false;// Чі БУВ зроблений лексічній аналізbool AnalizPerformed=false;// Чув БУВ проведень повний аналіз

/ / Формуємо бінарні дерева ідентіфікаторів при завантаженні форми:

public void Form1_Load (object sender, EventArgs e)

{. KeyPreview=true; i; (i=0; i <(KeyWords.Length); i + +)

{. insert (KeyWords [i], i);

} (i=0; i <(Operators.Length); i + +)

{. insert (Operators [i]. name, i);

}

/ * Приклад поиска в дереві: fs=BTOperators.findSymbol («(»);. Show (fs.name + Operators [(int) fs.value]. type);

* /

/ * Віклікаємо функцію Заповнення матріці передування * / ();

/ / Заборона Редагування віхідног кодом:. ReadOnly=true;

/ / Додамо вспліваючі підказки: tip1=new ToolTip ();. SetToolTip (LoadButton, «Оберіть текстовий файл програми nАбо надрукуйте его в текстовому полі нижчих»);

}

/ / шлях последнего фал...


Назад | сторінка 7 з 20 | Наступна сторінка





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

  • Реферат на тему: Товарний знак
  • Реферат на тему: Як зареєструвати товарний знак?
  • Реферат на тему: Музичний звук як знак
  • Реферат на тему: Товарний знак як основа корпоративної ідентифікації
  • Реферат на тему: Товарний знак і бренд: єдність і відмінності