Metody realizacji języków programowania/MRJP Ćwiczenia 11

From Studia Informatyczne

Autor: Paweł Górecki (gorecki@mimuw.edu.pl)

Spis treści

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.