Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Лекції по СПЗ

Інформація про навчальний заклад

ВУЗ:
Інші
Інститут:
Не вказано
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2014
Тип роботи:
Конспект лекцій
Предмет:
Системне програмне забезпечення

Частина тексту файла

Міністерство освіти і науки, молоді та спорту України Кіровоградський національний технічний університет КОНСПЕКТ ЛЕКЦІЙ з курсу „Системне програмне забезпечення” розробив викл. каф. ПЗ Бісюк В.А. Кіровоград 2014 Семестр 7-8 Лекція №1 Основи процесу компіляції програмного коду. Місце компілятора в програмному забезпеченні Компілятори складають одну з найважливіших частин програмного забезпечення ЕОМ. Це зв'язано з тим, що мови високого рівня стали основним засобом розробки програм. Тільки дуже незначна частина програмного забезпечення, що вимагає особливої ефективності, програмується за допомогою асемблеру. У дійсний час поширені досить багато мов програмування. З іншого боку, постійно зростаюча потреба в нових компіляторах зв'язана з бурхливим розвитком архітектури ЕОМ. Цей розвиток йде по різних напрямках. Удосконалюються старі архітектури як у концептуальному відношенні, так і по окремим, конкретним лініям. Це можна проілюструвати на прикладі мікропроцесора Intel-80X86. Послідовні версії цього мікропроцесора 8086, 80186, 80286, 80386, 80486, 80586, Pentium і т.д. відрізняються не тільки технічними характеристиками, але і, що більш важливо, новими можливостями і, виходить, зміною (розширенням) системи команд. Природно, це вимагає нових компіляторів (чи модифікації старих). .компілятори ля багатьох мов програмування. Тут необхідно також відзначити, що нові архітектури вимагають розробки зовсім нових підходів до створення компіляторів, так що поряд із власне розробкою компіляторів ведеться і велика наукова праця по створенню нових методів трансляції. Структура компилятора На фазі лексичного аналізу (ЛА) вхідна програма, яка представляє собою потік символів, розбивається на лексеми - слова відповідно до визначень мови. Основним формалізмом, що лежить в основі реалізації лексичних аналізаторів, є кінцеві автомати і регулярні вираження. Лексичний аналізатор може працювати в двох основних режимах: або як підпрограма, викликувана синтаксичним аналізатором за черговою лексемою, або як повний прохід, результатом якого є файл лексем. У процесі виділення лексем ЛА може як самостійно будувати таблиці імен і констант, так і видавати значення для кожної лексеми при черговому звертанні до нього. У цьому випадку таблиця імен будується в наступних фазах (наприклад, у процесі синтаксичного аналізу. На етапі ЛА виявляються деякі (найпростіші) помилки (неприпустимі символи, неправильний запис чисел, ідентифікаторів і ін.). Основна задача синтаксичного аналізу - розбір структури програми. Як правило, під структурою розуміється дерево, відповідне розбору в контекстно-вільній граматиці мови. В даний час найчастіше використовується або LL(1)-аналіз (і його варіант - рекурсивний спуск), або LR(1)-аналіз і його варіанти (LR(0), SLR(1), LALR(1) і інші). Рекурсивний спуск частіше використовується при ручному програмуванні синтаксичного аналізатора, LR(1) - при використанні систем автоматизації побудови синтаксичних аналізаторів. Результатом синтаксичного аналізу є синтаксичне дерево з посиланнями на таблицю імен. У процесі синтаксичного аналізу також виявляються помилки, зв'язані зі структурою програми. На етапі контекстного аналізу виявляються залежності між частинами програми, що не можуть бути описані контекстно- вільним синтаксисом. Це в основному зв'язку "опис- використання", зокрема аналіз типів об'єктів, аналіз областей видимості, відповідність параметрів, мітки й інші. У процесі контекстного аналізу будується таблиця символів, яку можна розглядати як таблицю імен, поповнену інформацією про описи (властивостях) об'єктів. Основним формалізмом, що використовується при контекстному аналізі, є атрибутные граматики. Результатом роботи фази контекстного аналізу є атрибутированное дерево програми. Інформація про об'єкти може бути як розосереджена в самім дереві, так і зосереджена в окремих таблицях символів. У процесі контекстного ана...
Антиботан аватар за замовчуванням

14.05.2018 22:05

Коментарі

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

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини