Code Generation


boshlash: T1 := 4 * j; -- asosiy blok rahbari


Download 223.53 Kb.
bet18/19
Sana11.10.2023
Hajmi223.53 Kb.
#1699031
1   ...   11   12   13   14   15   16   17   18   19
Bog'liq
7037035 (1)

boshlash: T1 := 4 * j; -- asosiy blok rahbari

T2 := a (T1);

T3 := 4 * j; -- ortiqcha

T4 := b (T3);

T5 := T2 * T4;

T6 := mahsulot + T5

mahsulot:= T6;

T7 := j + 1;

j := T7

Agar j <= 20 bo'lsa, boshlash kerak:

Loop tanasi uchun dag

  • Umumiy pastki ifoda aniqlandi

+
[ ]
*
[ ]
*
+
<=
a
b
4
j
mahsulot 0
T6, mahsulot
T5
T4
T1, T3
j 0
1
20
Boshlash:
T7, ya'ni
T2

Dagdan takomillashtirilgan blokgacha

  • Dagning har qanday topologik turi huquqiy baholash tartibidir
  • Yorliqsiz tugun o'lik qiymatdir
  • Vaqtinchalik emas, balki jonli o'zgaruvchining yorlig'ini tanlang
  • boshlash: T1 := 4 * j;

    T2 := a [ T1]

    T4 := b [ T1]

    T5 := T2 * T4

    mahsulot := mahsulot + T5

    J := J =1

    Agar j <=20 bo'lsa, boshlash kerak:

    Kamroq to'rtburchaklar, kamroq vaqtinchalik

Dasturchilar umumiy pastki ifodalarni ishlab chiqarmaydi, kod generatorlari qiladi!

A, B : matritsa (lo1 .. hi1, lo2 .. hi2); -- komponent hajmi w bayt

  • A (j, k) joylashuvda:
    • base_a + ((j –lo1) * (hi2 – lo2 + 1) + k –lo2) * w
  • Quyidagilar uchun 19 ta to'rtlik kerak:
  • for k in lo .. hi loop

    A ( j, k) := 1 + B (j, k);

    end loop ;

  • Dag bilan 11 ga kamayishi mumkin
  • base_a + (j – lo1) * (hi2 – lo2 +1) * w — pastadir oʻzgarmas ( loopni optimallashtirish )
  • w ko'pincha ikkining kuchi ( ko'rish teshigini optimallashtirish )

Asosiy bloklardan tashqari: ma'lumotlar oqimini tahlil qilish

  • Asosiy bloklar oqim grafigidagi tugunlardir
  • Grafikda iterativ algoritmlar sifatida dasturning global xossalarini hisoblay oladi:
    • Doimiy katlama
    • Umumiy pastki ifodani yo'q qilish
    • Tirik o'lik tahlili
    • Loop invariant hisoblari
  • Murakkab ma'lumotlar tuzilmalari va algoritmlarni talab qiladi

Download 223.53 Kb.

Do'stlaringiz bilan baham:
1   ...   11   12   13   14   15   16   17   18   19




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling