
- •4.Основні частини компілятора.
- •5Лексичний аналіз роботи з таблицями
- •6. Синтаксичний та семантичний аналіз, дерева
- •7. Польський запис, тетради.
- •8. Формальне визначення мови, операції над мовами.
- •9. Граматики
- •11.Регулярний вираз
- •12) Нормальна форма Бекуса-Наура
- •13. Ієрархія Хомського
- •14. Регулярні граматики.
- •15. Скінченні автомати
- •16. Детерміновані і недетерміновані кінцеві автомати.
- •18. Побудова детермінованих кінцевих автоматів за недетермінованими кінцевими автоматами.
- •19. Програмування сканера.
- •20. Таблиці символів, хеш-функції, хеш-адресація
- •21. Колізія, ре хешування
- •23.Контекстно-выльны граматики.
- •24. Синтаксично-керований переклад
- •25. Переклад інфіксної форми запису у польську
- •26. Алгоритм синтаксично-керованого перекладу:
- •27. Автомати з магазинною пам’яттю
- •28. Операторні граматики
- •29.Алгоритм розборуоператорних грамматик.
- •37. Оптимізація булевих виразів, циклів.
- •38. Генерація коду. Скп на мову Асамблер.
- •39. Інтерпретатори, адресація, представлення ідентифікаторів.
- •40 Компілятор компіляторів.
- •41 Генератор лексичних аналізаторів.(lex)
- •42. Генератор синтаксичних аналізаторів.
- •43. Приклади застосування генераторыв.
11.Регулярний вираз
ЧАСТО ДЛЯ МОВ ВИКОРИСТОВУТЬСЯ СПОСІБ ЗАПИСУ – РЕГУЛЯРНІ ВИРАЗИ.
РЕГУЛЯРНИЙ ВИРАЗ БУДУЄТЬСЯ З БІЛЬШ ПРОСТИХ РЕГУЛЯРНИХ ВИРАЗІВ З ВИКОРИСТАННЯМ НАБОРУ ПРАВИЛ. РЕГУЛЯРНИЙ ВИРАЗ r ВИЗНАЧАЄ МОВУ АБО ЗАДАЄ ЇЇ L(r).
ПРАВИЛА ВИЗНАЧАЮТЬ, ЯКИМ ЧИНОМ ФОРМУВАТИ МОВУ ЩО ЗАДАЄТЬСЯ В ВИРАЗІ r . ТАКИХ ПРАВИЛ Є 3. ПРАВИЛО 1 ТА 2 Є БАЗОЮ ВИЗНАЧЕННЯ, А 3 – КРОК ІНДУКЦІЇ.
РУГУЛЯРНИЙ ВИРАЗ МОЖНА БРАТИ В ДУЖКИ. МОВА ЯКА ЗАДАЄТЬСЯ РЕГУЛЯРНИМ ВИРАЗОМ НАЗИВАЄТЬСЯ РЕГУЛЯРНОЮ МНОЖИНОЮ. ВИЗНАЧЕННЯ РЕГУЛЯРНОГО ВИРАЗУ Є ПРИКЛАДОМ РЕКУРСИВНИХ ВИЗНАЧЕНЬ.
12) Нормальна форма Бекуса-Наура
Повiдомлення: Нормальна форма Бекуса-наура (БНФ) є способом опису синтаксису мов програмування, даних і протоколів, у тому числі синтаксису ACL. Будучи короткою, і в той же час дуже точною, БНФ часто використовується при розробці протоколів Інтернету. У нотації БНФ використовується конструкція з двох частин, розділених знаком ::=, який означає, що ліва частина може бути замінена елементами, перерахованими в правій частині. Елементи правої частини конструкції БНФ увязнені в кутові дужки (< і >), відносяться до елементів лівої частини, увязнених в такі ж дужки. Елементи, увязнені, в квадратні дужки ([ і ]) є необов'язковими. Вертикальна межа (|) означає "одне з декількох", а символи + і * означають "одне або декілька з передуючих" і "нічого, одне або декілька з передуючих" відповідно. Якщо ви мали справу з регулярними виразами, вам будуть знайомі багато позначень, що використовуються тут. контексті опису ACL з допомогою БНФ використовується наступний синтаксис. Кожен запис ACL складається з символьного рядка "Access to", після якого йде умова "what", визначене де-небудь у іншому місці. Далі йдуть одна або більш за рядки вигляду "by <who> [ <access> ] [ <control> ]", у яких параметри who, access і control визначені де-небудь у іншому місці, причому параметри access і control є необов'язковими. Останній синтаксис ми розглянемо в частині керівництва, що залишилася. Відмітні особливості БНФ: До зарезервованих символів БНФ відносять: ''<'', ''>'', ''|'', '':'', ''='', ''''; Нетермінали (аналог "нетермінальних символів") пишуться усередині знаків розмітки ''< . >''; Термінальні символи пишуться "як є"; Альтернативи розділяються знаком ''|''; Ліва і права частина правил розділяються поєднанням "::=";
13. Ієрархія Хомського
Ієрархія Чомскі формальних мов
Ієрархія Хомського — поняття в теоретичній інформатиці, яким позначають ієрархію формальних граматик, які породжують формальні мови. Вперше описана Ноамом Чомскі в 1956 році. Чотири описані Чомскі типи граматик виходять від базової, необмеженої граматики (граматика типу 0), на яку послідовно накладають обмеження на правила продукції.
В залежності від типу найпростішої граматики, яка може згенерувати задану формальну мову, формальні мови ділять на відповідні категорії від типу 0 до типу 3.
Формальна мова належить до типу i, якщо її породжує граматика типу i. Формально, мова L належить до типу i ∈ {0, ..., 3} якщо існує граматика G ∈ Типi така, що L = L(G). Тоді пишуть L є лямда іте
В ієрархії Чомскі, множина мов типу i є підмножиною мов типу i − 1. Кожна контекстно-залежна мова рекурсивно зліченна, але існують рекурсивно зліченні мови, які не є контекстно-залежними. Так само кожна контекстно-вільна мова є контекстно-залежною, але не навпаки, та кожна регулярна мова контекстно-вільна але не кожна контекстно-вільна мова регулярна.
Класи формальних мов мають відношення лямда3 С лямда2 С лямда1 С лямда0