زمان کنونی: ۰۹ فروردین ۱۴۰۳, ۰۹:۰۰ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

سئوال از (CLR(1

ارسال:
  

iCanDoIt پرسیده:

سئوال از (CLR(1

سلام و درود.Cool
HeartHeart

توی کتاب کامپایلر آل شیخ پوران صفحه ۱۲۱ مثالی رو حل کرده من یه جاش ایراد دارم
اگه تصویر باز نشد
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
کلیک کنید.SmileTongue

[تصویر:  394309_pv7ctnlhg7pcctrfdgo9.jpg]

مگه توی قسمت پیشگویی هایی که می کنیم نباید follow A و follow B رو بنویسیم ولی نمی دونم چرا اینجا اومده فقط یکیشون رو نوشته.

بعد یه مسلئه ی دیگه ای که هست اینه که چرا توی first S و 'first S عبارت لاندار رو ننوشته!!!!Huh

با تشکرHeartBig Grin
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

Iranian Wizard پاسخ داده:

RE: سئوال از (CLR(1

(۱۸ دى ۱۳۹۴ ۱۱:۵۴ ق.ظ)iCanDoIt نوشته شده توسط:  
[تصویر:  394309_pv7ctnlhg7pcctrfdgo9.jpg]

-------------------------------------------------------------------------------


(۱۸ دى ۱۳۹۴ ۱۱:۵۴ ق.ظ)iCanDoIt نوشته شده توسط:  چرا توی first S و 'first S عبارت لاندار رو ننوشته!!!!Huh
گرامر مورد نظر این هستش:

[tex]S'\: \longrightarrow\: S[/tex]

[tex]S\: \longrightarrow\: AaAb\: |\: BbBa[/tex]

[tex]A\: \longrightarrow\: \lambda[/tex]

[tex]B\: \longrightarrow\: \lambda[/tex]



محاسبه‌ی [tex]first(S')[/tex] و [tex]first(S)[/tex] :

[tex]first(S') =\: first(S)\: =\: first(AaAb)\: \cup\: first(BbBa)[/tex]

حال چون [tex]A\: \longrightarrow\: \lambda[/tex] ، پس [tex]first(AaAb)\: =\: first(aAb) = \{a\}[/tex]

و چون [tex]B\: \longrightarrow\: \lambda[/tex] ، پس [tex]first(BbBa)\: =\: first(bBa)\: =\: \{b\}[/tex]

در نتیجه
[tex]first(S') = first(S)\: =first(AaAb)\: \cup\: first(BbBa)\: = \{a\}\: \cup\: \{b\}\: = \{a\: , b\}[/tex]


-------------------------------------------------------------------------------


(۱۸ دى ۱۳۹۴ ۱۱:۵۴ ق.ظ)iCanDoIt نوشته شده توسط:  مگه توی قسمت پیشگویی هایی که می کنیم نباید follow A و follow B رو بنویسیم ولی نمی دونم چرا اینجا اومده فقط یکیشون رو نوشته.
اگه علامت نقطه قبل از یک متغیر (A) بیاد(مثلا بصورت [tex]X\: \longrightarrow\: a.AB\: ,\: \{\gamma\}[/tex] )،آنگاه بایستی اون متغیر(A) رو گسترش بدیم و مجموعه پیش‌گویی آن برابر [tex]first(B\gamma)[/tex] خواهد بود.

در این سوال هم در [tex]S\: \longrightarrow\: .\: AaAb\: ,\: \{\: \$\: \}[/tex] ، چونکه نقطه قبل از متغیر A اومده،پس باید متغیر A رو گسترش بدیم و مجموعه پیش‌گویی آن برابر [tex]first(aAb\$)[/tex] یعنی [tex]\{a\}[/tex] خواهد شد.
پس عبارت [tex]A\: \longrightarrow\: .\: , \{a\}[/tex] اضافه خواهد شد.

از طرفی در [tex]S\: \longrightarrow\: .BbBa\: , \{\$\: \}[/tex] ، چونکه نقطه قبل از متغیر B اومده،پس باید متغیر B رو گسترش بدیم و مجموعه پیش‌گویی آن برابر [tex]first(bBa\$)[/tex] یعنی [tex]\{b\}[/tex] خواهد شد.
پس عبارت [tex]B\: \longrightarrow\: .\: , \{b\}[/tex] اضافه خواهد شد.

در ضمن این نکته رو هم بگم،که در محاسبه مجموعه پیش‌گویی، از follow(A) یا follow(B) استفاده نمیشه ، بلکه از زیرمجموعه‌ای از follow(A) یا follow(B) استفاده شده. یعنی مجموعه پیش‌گویی مربوط به متغیر A، زیر مجموعه‌ای از follow(A) خواهد بود نه لزوما خود follow(A) .
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  دو سئوال طراحی الگوریتم java50 ۱ ۱,۵۲۷ ۱۱ اسفند ۱۳۹۵ ۰۱:۱۲ ق.ظ
آخرین ارسال: alireza01
Information سه سئوال آمار و احتمالات مهندسی ۸۷۰۱۸۳۲۹۵ ۱ ۱,۶۷۰ ۱۶ اردیبهشت ۱۳۹۵ ۱۱:۴۷ ب.ظ
آخرین ارسال: Jooybari
  چند سئوال از از میلی و مور iCanDoIt ۴ ۴,۰۷۲ ۰۸ فروردین ۱۳۹۵ ۱۲:۳۱ ق.ظ
آخرین ارسال: dokhtare payiz
  سئوال معماری سال ۸۷-واحد پردازش مرکزی iCanDoIt ۱ ۱,۶۴۱ ۰۲ فروردین ۱۳۹۵ ۰۱:۳۶ ق.ظ
آخرین ارسال: Saman
  چند سئوال در مورد هک شدن iCanDoIt ۱۸ ۹,۷۴۶ ۱۰ اسفند ۱۳۹۴ ۰۹:۰۹ ب.ظ
آخرین ارسال: one hacker alone
  دو تا سئوال از عبارات منظم iCanDoIt ۴ ۲,۴۰۰ ۰۴ بهمن ۱۳۹۴ ۱۱:۳۸ ب.ظ
آخرین ارسال: baharkhanoom
  جواب سئوال ۲۳ فصل ۸ ساختمان داده پوران iCanDoIt ۲ ۱,۶۲۰ ۲۹ دى ۱۳۹۴ ۰۹:۱۴ ب.ظ
آخرین ارسال: مهرگان
  سئوال Hashing مهندسی نرم افزار سراسری ۸۲ iCanDoIt ۰ ۸۱۶ ۲۳ مهر ۱۳۹۴ ۰۹:۰۷ ب.ظ
آخرین ارسال: iCanDoIt
  مشکل در تشخیص مجموعه پیش بینی گرامر CLR farhud ۳ ۲,۴۷۷ ۱۹ دى ۱۳۹۳ ۰۴:۵۰ ب.ظ
آخرین ارسال: freidoony
Question پارسینگ پایین به بالا (SLR,LALR,CLR) S92 ۳ ۱,۷۶۳ ۰۷ آذر ۱۳۹۳ ۰۹:۲۹ ب.ظ
آخرین ارسال: S92

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close