Предмет: Програмски преводиоци
(12 -
SE0034) Основне информације
Програм предмета
Програм се примењује од 21.11.2012.. Упознавање студената са принципима рада компајлера, концептима превођења са једног програмског језика на други, алатима за њихово прављење и начином њихове имплементације. Овладавање прављењем компајлера на почетничком нивоу. Након успешно завршеног курса студент познаје принципе рада компајлера; познаје фазе компајлирања; користи технике превођења са једног језика на други; рукује алате за генерисане компајлера и прави скенере, парсере и једноставне компајлере. Задатак компајлера: фазе компајлирања; Врсте програмских језика и компајлера: ЛЛ и ЛР компајлери, топ доwн и боттом уп компајлери; Формални језици: граматике, БНФ и аутомати; Лексичка анализа: генератор скенера, регуларни изрази; Синтаксна анализа: теорија парсирања, генератор парсера, руковање грешкама; Управљање меморијом и табела симбола: организација меморије, имплементација табеле симбола, опсег видљивости; Типови: механизам типова и провера типова; Семантичка анализа: опис и анализа семантике програмског кода; Врсте и репрезентација међукода: синтаксно стабло, постфиксна нотација, троадресни код; Генерисање кода; Оптимизација (међу)кода: основне врсте анализе програма и оптимизације; Интерпретери и интерпретација међукода. Предавања; Рачунарске вежбе; Консултације. Испит је усмени. Оцена испита се формира на основу успеха са рачунарских вежби и усменог испита.
|