Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq

Mundarija:

Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq
Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq

Video: Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq

Video: Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq
Video: =БАСТУ в бане! Работа вентиляции в БАНЕ! Как сделать вентиляцию!= 2024, Noyabr
Anonim

Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi asosiy farq shundaki, yuqoridan pastga tahlil qilish koʻzdan kechirish belgisidan kirish satrigacha tahlilni amalga oshiradi, pastdan pastga tahlil qilish esa kirish satridan boshlangʻich belgigacha boʻlgan tahlilni amalga oshiradi. Bundan tashqari, yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi yana bir muhim farq shundaki, yuqoridan pastga tahlil qilishda chapdan, pastdan pastga tahlil qilish esa oʻngdan koʻp hosiladan foydalanadi.

Yuqori darajali tillar kompyuter dasturlarini yozishga yordam beradi. Ularni dasturchi tushunish oson, lekin kompyuterda emas. Shuning uchun yuqori darajadagi dastur mashina kodiga aylanadi. Kompilyatorning vazifasi inson tomonidan o'qilishi mumkin bo'lgan manba kodini mashina o'qiydigan mashina kodiga aylantirishdir. Mashina kodiga aylantirish uchun dastur bir necha bosqichlardan o'tadi. Bu butun jarayon tilni qayta ishlash tizimi deb ataladi. Ulardan biri kompilyatsiya. Sintaksis analizatori yoki parser kompilyatorda va u tahlil qilish vazifasini bajaradi.

Yopdan pastga tahlil qilish nima?

Har bir dasturlash tilida tilni ifodalovchi qoidalar toʻplami mavjud. Sintaksis analizatori yoki parse kirish qatorini oladi va uning grammatik ishlab chiqarishlarga mos kelishini tekshiradi. Boshqacha qilib aytganda, grammatika bu qatorni tahlil daraxti yordamida yaratishi kerak.

Yuqoridan pastga tahlil qilishda tahlil boshlang'ich belgidan amalga oshiriladi va berilgan kirish qatoriga etib boradi. Quyidagi grammatik ishlab chiqarish qoidalarini ko'rib chiqing. Kirish qatori (w) cad.

S -> cAd

A -> ab /a

Yuqoridan pastga tahlil qilishdan soʻng tahlil daraxti quyidagicha boʻladi.

Yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq

01-rasm: 1-daraxtni yuqoridan pastga tahlil qilish bilan tahlil qilish

S c A d hosil qiladi va A a b hosil qiladi. Satr - cabd. Bu kerakli qator emas. Shunday qilib, orqaga qaytish, ya'ni boshqa muqobillardan foydalanish kerak.

Shunga oʻxshab, S c A d hosil qiladi. A uchun boshqa variantni qo'llash a beradi. Endi u kerakli qatorni beradi. Shuning uchun tahlilchi ushbu kiritish qatorini qabul qiladi. Yuqoridan pastga tahlil qilishdan so'ng tahlil daraxti quyidagicha bo'ladi.

Yuqoridan pastga va pastdan yuqoriga o'rtasidagi farq 2-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi farq 2-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi farq 2-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi farq 2-rasm

02-rasm: 2-daraxtni yuqoridan pastga tahlil qilish bilan tahlil qilish

Kirish satri (w) abbcde boʻlganda

Quyidagi grammatika qoidalarini koʻrib chiqing.

S -> aABe

A -> Abc/b

B -> d

Yuqoridan pastga tahlil qilishda, S -> aABe (A -> Abc o'rniga)

S -> aAbcBe (A -> b oʻrniga)

S -> abbcBe (B ->d o'rniga)

S -> abbcde

Almashtirish avval chapdagi eng oʻzgaruvchidan, soʻngra keyingi oʻng pozitsiyadan boshlanadi va hokazo. Shuning uchun, u eng chap hosila usuliga amal qiladi. Bundan tashqari, o'zgaruvchi mavjud bo'lganda qanday ishlab chiqarish qoidasini tanlashni hal qilish muhim.

Pastdan yuqoriga tahlil qilish nima?

Pastdan yuqoriga tahlil qilish boshqacha tarzda sodir bo'ladi. Tahlil qilish kirish qatoridan boshlang'ich belgisigacha sodir bo'ladi. Quyidagi grammatik ishlab chiqarish qoidalarini ko'rib chiqing va kiritish qatori w ɛ cad bo'lsin.

S -> cAd

A -> ab /a

Paytadan yuqoriga qarab tahlil qilishdan keyingi tahlil daraxti quyidagicha.

Yuqoridan pastga va pastdan yuqoriga o'rtasidagi asosiy farq 03-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi asosiy farq 03-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi asosiy farq 03-rasm
Yuqoridan pastga va pastdan yuqoriga o'rtasidagi asosiy farq 03-rasm

03-rasm: Daraxtni pastdan yuqoriga tahlil qilish

Berilgan qator cad. a A tomonidan hosil qilingan. c, A va d birlashtirilib S boshlang'ich belgisini oladi.

Kirish satri(w) abbcde boʻlganda

Quyidagi grammatika qoidalarini koʻrib chiqing.

S -> aABe

A -> Abc/b

B -> d

Pastdan yuqoriga tahlil qilishda, S -> aABe (B ->d o'rniga)

S -> aAde (A -> Abc oʻrniga)

S -> aAbcde (Almashtirish A -> b)

S -> abbcde

Almashtirish avval oʻngdagi eng oʻzgaruvchidan boshlanadi, soʻngra keyingi chap pozitsiyaga oʻtadi va hokazo. Shuning uchun u chap chiziqdan hosil qilish usuliga amal qiladi.

Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq nima?

Yuqoridan pastga tahlil qilish bu tahlil qilish strategiyasi boʻlib, avval tahlil daraxtining eng yuqori darajasiga qaraydi va rasmiy grammatika qoidalaridan foydalangan holda tahlil qilish daraxtini pastga tushiradi. Pastdan yuqoriga tahlil qilish - bu tahlil qilish strategiyasi bo'lib, avval tahlil daraxtining eng quyi darajasiga qaraydi va rasmiy grammatika qoidalaridan foydalangan holda tahlil qilish daraxtini ishlab chiqadi. Tahlil qilish boshlang'ich belgidan kirish satrigacha, yuqoridan pastga tahlil qilishda sodir bo'ladi. Boshqa tomondan, tahlil kiritish satrdan boshlang'ich belgigacha, pastdan yuqoriga tahlil qilishda sodir bo'ladi.

Bundan tashqari, yuqoridan pastga tahlil qilishda asosiy qaror satrni qurish uchun qanday ishlab chiqarish qoidasini tanlash, pastdan pastga tahlil qilishda asosiy qaror esa qatorni qisqartirish uchun ishlab chiqarish qoidasidan qachon foydalanishni tanlashdir. boshlang'ich belgisini oling. Bundan tashqari, yuqoridan pastga tahlil qilishda eng chapdan, pastdan pastga tahlil qilishda esa o‘ngdan ko‘p hosiladan foydalaniladi.

Jadval ko'rinishida yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Jadval ko'rinishida yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Jadval ko'rinishida yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq
Jadval ko'rinishida yuqoridan pastga va pastdan yuqoriga tahlil qilish o'rtasidagi farq

Xulosa – Yuqoridan pastga va pastdan yuqoriga ajratish

Yuqoridan pastga va pastdan yuqoriga tahlil qilish oʻrtasidagi farq shundan iboratki, yuqoridan pastga tahlil qilish koʻrish belgisidan kirish satrigacha, pastdan pastga tahlil qilish esa kirish qatoridan boshlangʻich belgiga tahlilni amalga oshiradi.

Tavsiya: