Metody realizacji języków programowania/MRJP Ćwiczenia 11: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
|||
(Nie pokazano 4 wersji utworzonych przez 2 użytkowników) | |||
Linia 1: | Linia 1: | ||
Autor: Paweł Górecki (gorecki@mimuw.edu.pl) | |||
== Zadanie 1 == | |||
Zaproponuj algorytm obliczania atrybutów | Zaproponuj algorytm obliczania atrybutów | ||
''in'', ''out'', ''kill'', ''gen'' dla reguł z wykładu wyliczających | ''in'', ''out'', ''kill'', ''gen'' dla reguł z wykładu wyliczających | ||
definicje osiągalne dla programów strukturalnych. | definicje osiągalne dla programów strukturalnych. | ||
== Zadanie 2 == | |||
Jaka jest pesymistyczna liczba obrotów pętli dla algorytmu iteracyjnego w zależności od | Jaka jest pesymistyczna liczba obrotów pętli dla algorytmu iteracyjnego w zależności od | ||
rozmiaru grafu przepływu? | rozmiaru grafu przepływu? | ||
== Zadanie 3 == | |||
Czy algorytm iteracyjny posiada własność stopu? Odpowiedź uzasadnij. | Czy algorytm iteracyjny posiada własność stopu? Odpowiedź uzasadnij. | ||
== Zadanie 4 == | |||
Dla podanego poniżej grafu przepływu: | |||
[[Grafika:w8bloki.jpg|300px|center]] | |||
* Oblicz zbiory zmiennych żywych na początku i końcu każdego bloku bazowego | |||
przy założeniu, że ''a,b,c'' to zmienne żywe po bloku E. | |||
* Wyjaśnij w jaki sposób można wykorzystać te zbiory przy generowaniu kodu wynikowego. |
Aktualna wersja na dzień 21:28, 1 paź 2006
Autor: Paweł Górecki (gorecki@mimuw.edu.pl)
Zadanie 1
Zaproponuj algorytm obliczania atrybutów in, out, kill, gen dla reguł z wykładu wyliczających definicje osiągalne dla programów strukturalnych.
Zadanie 2
Jaka jest pesymistyczna liczba obrotów pętli dla algorytmu iteracyjnego w zależności od rozmiaru grafu przepływu?
Zadanie 3
Czy algorytm iteracyjny posiada własność stopu? Odpowiedź uzasadnij.
Zadanie 4
Dla podanego poniżej grafu przepływu:

- Oblicz zbiory zmiennych żywych na początku i końcu każdego bloku bazowego
przy założeniu, że a,b,c to zmienne żywe po bloku E.
- Wyjaśnij w jaki sposób można wykorzystać te zbiory przy generowaniu kodu wynikowego.