ФИНКИ / Основи и алгоритмиПрограмски јазици и компајлери.
Разбери како програмскиот код се анализира и преведува, од граматика до генерирање и оптимизација на код.
<>РАЗБЕРИ. ПРИМЕНИ. НАПРЕДУВАЈ.+
- 01Граматики, лексичка анализа и парсирање
- 02Синтаксни дрва и семантика на јазикот
- 03Симболни табели и проверка на типови
- 04Генерирање, оптимизација и изградба на компајлер
02 / РАЗБЕРИ ГО КОНЦЕПТОТ
Логиката зад
решението.
Компајлерот не го чита кодот како обичен текст. Лексичката анализа создава токени, парсерот ја проверува граматичката структура, а семантичката анализа проверува значење и типови. Синтаксното дрво ја претставува организацијата на изразот. Дури потоа можеме да генерираме или оптимизираме извршување.
ПРИМЕР ОД СЕКОЈДНЕВНАТА ПРАКТИКАИЛУСТРАТИВЕН ПРИМЕР
Од правило за попуст до извршлива пресметка
Продавница сака мал јазик за правила. Изразот 100 - 20 * 2 треба да се толкува според вообичаениот приоритет на операторите.
- 01
Лексерот ги препознава броевите 100, 20 и 2, како и операторите.
- 02
Парсерот го става множењето како поддрво на одземањето.
- 03
Пресметувањето прво дава 40, а потоа 100 - 40.
↳Што добиваме?Резултатот е 60. Наивно пресметување одлево надесно би дало 160 и би ја нарушило семантиката.
Сценариото и податоците се поедноставени за учење. Примерот не претставува конкретен клиентски проект или измерени резултати од продукциски систем.
03 / СТУДЕНТСКИ ПРАШАЊА
Прашај.
Разбери подобро.
Која е разликата меѓу синтаксна и семантичка грешка?+
Недостасувачка заграда е синтаксна грешка. Собирање текст и број во јазик што тоа го забранува е семантичка грешка.
Зошто е потребна симболна табела?+
Ги чува имињата, опсегот и информациите за декларации, за да се провери дали променливите се познати и правилно употребени.
Дали оптимизацијата смее да го промени резултатот?+
Не. Треба да ја зачува дозволената семантика, вклучувајќи важни споредни ефекти и правила за типови.
УЧИ СО РАЗБИРАЊЕТвојот материјал.
Нашата следна задача.
Работиме на делот што ти е најпотребен: основни концепти, практични задачи или подготовка за колоквиум и испит. Содржината ја усогласуваме со материјалите што ги учиш во твојата генерација.
REC ТВОЈОТ ЧАС
▶
РАЗБЕРИ. ПОВТОРИ. ПРИМЕНИ.↺
ПОВТОРИ КОГА ТИ ТРЕБА.НЕ САМО ЕДНАШ. КОЛКУ ШТО ТИ ТРЕБА.Часот завршува.
Знаењето останува.
Секој час се снима. Врати се на објаснувањата, паузирај кај потешките делови и повтори ги задачите со свое темпо.
↺Снимките се достапни најмалку
во текот на еден семестар.
Снимките се наменети за твоето учење. Споделување и објавување се дозволени само по претходен договор.