Podcast
Questions and Answers
Кой от следните методи е най-мощния parsing метод?
Кой от следните методи е най-мощния parsing метод?
- a) LL(1)
- б) Canonical LR (correct)
- в) SLR
- г) LALR
Проверка на типовете се извършва по време на:
Проверка на типовете се извършва по време на:
- а) Лексически анализ
- б) Синтактичен анализ
- в) Syntax directed translation (correct)
- г) Оптимизация на кода
Кое от следните твърдения е ГРЕШНО?
Кое от следните твърдения е ГРЕШНО?
- Контекстно-свободната граматика се използва за лексически и синтактични правила
- Проверка на типовете се извършва преди синтактичния анализ (correct)
- Програмите, написано на езици от високо ниво могат да се транслират до различни междинни представяния
- Аргументите на функция могат да се предават чрез програмния стек
Кои от следните правила на граматиката нарушават изискванията за операторна граматика? A, B, C са
нетерминали, а a, b, c са терминали.
Кои от следните правила на граматиката нарушават изискванията за операторна граматика? A, B, C са нетерминали, а a, b, c са терминали.
Коя от следните фази на компилатора генерира поток от атоми?
Коя от следните фази на компилатора генерира поток от атоми?
Кое от следните е ГРЕШНО?
Кое от следните е ГРЕШНО?
В компилатора ключовите думи на езика се разпознават по време на:
В компилатора ключовите думи на езика се разпознават по време на:
В сравнение с програмата, преведена/транслирана от компилатор, същата програма, когато е интерпретирана се изпълнява:
В сравнение с програмата, преведена/транслирана от компилатор, същата програма, когато е интерпретирана се изпълнява:
В контекста на компилаторите, кое от изброените не е междинно представяне на изходната програма?
В контекста на компилаторите, кое от изброените не е междинно представяне на изходната програма?
Как се нарича транслатор, който използва програма написана на език от високо ниво като входна програма и създава машинен код като изход?
Как се нарича транслатор, който използва програма написана на език от високо ниво като входна програма и създава машинен код като изход?
Компютърна програма, която преобразува една програма в машинен език наведнъж е:
Компютърна програма, която преобразува една програма в машинен език наведнъж е:
Компютърна програма, която преобразува асемблерен език в машинен език е:
Компютърна програма, която преобразува асемблерен език в машинен език е:
Кой език се разбира лесно/директно от компютъра?
Кой език се разбира лесно/директно от компютъра?
Асемблерния език:
Асемблерния език:
Как се нарича процеса, който се използва за преобразуване на набор от инструкции или програма, които са написани на език от високо ниво, в инструкции (или програма), които могат да се изпълняват на компютър?
Как се нарича процеса, който се използва за преобразуване на набор от инструкции или програма, които са написани на език от високо ниво, в инструкции (или програма), които могат да се изпълняват на компютър?
Кое от следните създава вход за компилаторите?
Кое от следните създава вход за компилаторите?
Каква прави интерпретатора, ако настъпи грешка?
Каква прави интерпретатора, ако настъпи грешка?
Какво прави компилатора, ако настъпи грешка?
Какво прави компилатора, ако настъпи грешка?
Изходът от асемблер се нарича
Изходът от асемблер се нарича
На колко типа е разделен синтактичния анализ?
На колко типа е разделен синтактичния анализ?
Когато синтактичния анализатор (парсера) започне създаването на дървото от стартовия символ и след това опита да преобразува стартовия символ във входа, входа се нарича:
Когато синтактичния анализатор (парсера) започне създаването на дървото от стартовия символ и след това опита да преобразува стартовия символ във входа, входа се нарича:
Вид рекурсивно спускане, което не изисква връщане назад (backtracking) е:
Вид рекурсивно спускане, което не изисква връщане назад (backtracking) е:
В кой от следните методи синтактичния анализатор стартира процеса на ново като използва различни правила за същата продукция, ако едно извеждане на продукцията се провали?
В кой от следните методи синтактичния анализатор стартира процеса на ново като използва различни правила за същата продукция, ако едно извеждане на продукцията се провали?
Предсказващия синтактичен анализатор (парсер) налага някои ограничения на граматиката и приема само клас на граматиката, известен като LL(k) граматика
Предсказващия синтактичен анализатор (парсер) налага някои ограничения на граматиката и приема само клас на граматиката, известен като LL(k) граматика
Кое от следните извеждания прави синтактичния анализатор отгоре-надолу по време на синтактичния анализ
на входен низ?
Кое от следните извеждания прави синтактичния анализатор отгоре-надолу по време на синтактичния анализ на входен низ?
Преместването (relocation) е процес на замяна на символните референции или имената на библиотеките с
актуални използваеми адреси в паметта преди изпълнението на програма?
Преместването (relocation) е процес на замяна на символните референции или имената на библиотеките с актуални използваеми адреси в паметта преди изпълнението на програма?
Коя фаза от компилатора е лексическия анализ?
Коя фаза от компилатора е лексическия анализ?
Лексическия анализатор се използва за:
Лексическия анализатор се използва за:
Какво се случва, ако лексическия анализатор открие невалиден токен?
Какво се случва, ако лексическия анализатор открие невалиден токен?
Как лексическия анализатор прочита кода?
Как лексическия анализатор прочита кода?
Имплементацията на коя символна таблица е базира на местоположението на референция?
Имплементацията на коя символна таблица е базира на местоположението на референция?
Системни програми като компилатора са създадени за:
Системни програми като компилатора са създадени за:
Колко компонента има контекстно-свободната граматика?
Колко компонента има контекстно-свободната граматика?
Как се нарича набора от токени?
Как се нарича набора от токени?
Кое от изброените се нарича лява страна на правило/продукция?
Кое от изброените се нарича лява страна на правило/продукция?
Кое от следните е графично изобразяване на извеждане (derivation) ?
Кое от следните е графично изобразяване на извеждане (derivation) ?
В синтактичното дърво листата се наричат:
В синтактичното дърво листата се наричат:
Кои от следните са ограничения (Limitations) на синтактичните анализатори?
Кои от следните са ограничения (Limitations) на синтактичните анализатори?
Кое от следните твърдения е ВЯРНО?
Кое от следните твърдения е ВЯРНО?
Коя грешка се очаква да бъде разпозната от семантичния анализатор?
Коя грешка се очаква да бъде разпозната от семантичния анализатор?
Коя от следните задачи трябва да се изпълнява в семантичния анализ?
Коя от следните задачи трябва да се изпълнява в семантичния анализ?
Коя фаза на компилиране е генерирането на код?
Коя фаза на компилиране е генерирането на код?
В насочен ацикличен граф, листата представляват:
В насочен ацикличен граф, листата представляват:
На колко типа може да се раздели оптимизацията?
На колко типа може да се раздели оптимизацията?
Компилаторът може да използва йерархията на паметта и регистрите на процесора:
Компилаторът може да използва йерархията на паметта и регистрите на процесора:
Компилатор за език от високо ниво, който работи на една машина и създава код за друга машина, се нарича:
Компилатор за език от високо ниво, който работи на една машина и създава код за друга машина, се нарича:
Какъв приоритет има конкатенацията?
Какъв приоритет има конкатенацията?
Регулярен израз, в който произволен брой 0 е следван от произволен брой 1 е следван от произволен брой 2 е
Регулярен израз, в който произволен брой 0 е следван от произволен брой 1 е следван от произволен брой 2 е
Кое от следните НЕ е низ от регулярни израз R = (ab + abb)*bbab ?
Кое от следните НЕ е низ от регулярни израз R = (ab + abb)*bbab ?
Кой от следните езици описва дадената граматика: S -> AA, A -> aa, A -> bb ?
Кой от следните езици описва дадената граматика: S -> AA, A -> aa, A -> bb ?
Study Notes
Compiler Phases
- Lexical analysis is the phase of the compiler that generates a stream of atoms.
- Syntax analysis is divided into two types: top-down and bottom-up parsing.
- Top-down parsing starts with the start symbol and tries to derive the input string.
- Bottom-up parsing starts with the input string and tries to derive the start symbol.
Parsing Methods
- Top-down parsing is a parsing method that starts with the start symbol and tries to derive the input string.
- Bottom-up parsing is a parsing method that starts with the input string and tries to derive the start symbol.
- Recursive descent parsing is a top-down parsing method that does not require backtracking.
- Predictive parsing is a top-down parsing method that imposes some restrictions on the grammar and accepts only a certain class of grammars, known as LL(k) grammars.
Compiler Components
- A compiler is a computer program that translates a program written in a high-level language into machine code.
- An assembler is a computer program that translates assembly language into machine code.
- An interpreter is a computer program that directly executes a program written in a high-level language.
Syntax Analysis
- Syntax analysis is the phase of the compiler that checks the syntax of the input program.
- The syntax analyzer (parser) checks the syntax of the input program and generates a parse tree.
- The parse tree is a graphical representation of the derivation of the input string.
- The leaves of the parse tree are the tokens.
Errors and Exceptions
- If the lexical analyzer encounters an invalid token, it reports an error.
- If the syntax analyzer encounters a syntax error, it reports an error.
- If the semantic analyzer encounters a semantic error, it reports an error.
Optimization
- Optimization is the phase of the compiler that tries to improve the performance of the generated code.
- Optimization can be divided into two types: peephole optimization and global optimization.
Other
- A compiler for a high-level language that runs on one machine and generates code for another machine is called a cross-compiler.
- The reordering of symbolic references or library names with actual addresses in memory before program execution is called relocation.
- A system program like a compiler is created for system administration and maintenance.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Test your knowledge about parsing methods and determine which one is considered the most powerful.