bir sikl iteratsiyasi ichidagi bajarilish yo'li sikl sarlavhasidan
boshlanib, tsikl sarlavhasida tugaydigan barcha holatlardan iborat.
Ichki halqa uchun halqa yo'li ichki va tashqi halqalarning bajarilish
yo'llarining birlashmasidan iborat. DScope barcha aylanish yo'llarini
uchta qadam yordamida chiqaradi. Birinchidan, dumi tashqi halqa
sarlavhasi bo'lgan Pouter sifatida belgilangan ijro yo'li uchun biz
Spath deb nomlangan yo'l to'plamiga yo'lni qo'shamiz . Ikkinchidan,
dumi halqa tanasi bayonoti bo'lgan Pouter ijro yo'li uchun biz bu
bayonot ichki tsiklning sarlavhasi bo'lishi kerak degan xulosaga
keldik va Pouter dan Pinner sifatida belgilangan ichki halqa ijro yo'lini
chiqaramiz . Uchinchidan, Spath’dagi har bir aylanish yo‘li uchun
DScope rst uni klonlaydi va har qanday si ifodasini Pinner bilan
almashtiradi, agar si ichki tsikl sarlavhasi bo‘lsa va joriy sikl yo‘lida
Pinner bo‘lmasa . Keyinchalik bu yangi birlashtirilgan halqa yo'li
Spath yo'liga qo'shiladi . DScope yangi tsikl yo'li yaratilmaguncha
uchinchi bosqichni takrorlaydi. 3-rasmda o'rnatilgan halqalarning
namunasi ko'rsatilgan. Birinchidan, DScope bitta halqa yo'lini ajratib
oladi {544, ..., 549, 560, ..., 571, 544}. Ikkinchidan, DScope {549, 550, ..,
559, 549} ni ichki aylanish yoÿli sifatida chiqaradi . Uchinchidan, DScope 549 raqamini {549, 550, ..., 559, 549} bilan {544, ..., 549, 560, .., 571, 544} bilan almashtiradi.
Shunday qilib, istisno ishga tushirilganda, if iborasi (186-satr) har
doim haqiqatni qaytaradi. Shunday qilib, boshqa bo'limdagi barcha
bayonotlar (188-206-satr) mavjud emas va bu holatlardan iborat har
qanday yo'l bajarib bo'lmaydigan yo'llardir. Ushbu misolda DScope
faqat aylanish yo'lini {120, 128, 129, 130, 139, 140, 141, 185, 186, 187,
Do'stlaringiz bilan baham: |