تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 3 123 آخرآخر
نمايش نتايج 1 به 10 از 22

نام تاپيک: نرم افزار yacc

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2007
    پست ها
    7

    14 نرم افزار yacc

    سلام:

    اگه کسی از کار با نرم افزار yacc چیزی بلده چند تا سوال داشتم.

    خیلی هم حرفه ای نبود اشکال نداره.چون خودمم تازه دارم یاد میگیرم...

    مرسی

  2. #2
    کاربر فعال انجمن هنر هفتم mehdi30nema's Avatar
    تاريخ عضويت
    Aug 2007
    محل سكونت
    تهران
    پست ها
    5,891

    پيش فرض

    سلام:

    اگه کسی از کار با نرم افزار yacc چیزی بلده چند تا سوال داشتم.

    خیلی هم حرفه ای نبود اشکال نداره.چون خودمم تازه دارم یاد میگیرم...

    مرسی
    سلام
    اگه منظورت همون برنامه ايي كه براي تبديل فايل هاي iso به cso است من باهاش كار كردم .

  3. #3
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    منظورت Lex و Yacc هست ؟
    Yacc (تحلیلگر نحوی)
    اگه در مورد Flex ، Bison ، Lex Yacc هست بگو اگه تونستم کمکت میکنم .
    در ضمن اگه دنبال همچین نرم افزارهایی هستی برو سراغ Parser Generator هم قوی تره و هم راحت تر !!! تازه تحت ویندوزه !

  4. #4
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2007
    پست ها
    7

    پيش فرض

    سلام
    اگه منظورت همون برنامه ايي كه براي تبديل فايل هاي iso به cso است من باهاش كار كردم .
    راستش خیلی نمیدونم.میخوام یاد بگیرم.اینو میدونم که مربوط به گرامرهای زبان میشه و اونا رو پارس میکنه.
    برای درس کامپایلرم میخوام

  5. #5
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2007
    پست ها
    7

    پيش فرض

    منظورت Lex و Yacc هست ؟
    Yacc (تحلیلگر نحوی)
    اگه در مورد Flex ، Bison ، Lex Yacc هست بگو اگه تونستم کمکت میکنم .
    در ضمن اگه دنبال همچین نرم افزارهایی هستی برو سراغ Parser Generator هم قوی تره و هم راحت تر !!! تازه تحت ویندوزه !
    آره همینه.نرم افزارش و دارم.میخوام بدونم گرامر و به چه شکلی باید وارد کنیم؟

  6. #6
    کاربر فعال انجمن هنر هفتم mehdi30nema's Avatar
    تاريخ عضويت
    Aug 2007
    محل سكونت
    تهران
    پست ها
    5,891

    پيش فرض

    راستش خیلی نمیدونم.میخوام یاد بگیرم.اینو میدونم که مربوط به گرامرهای زبان میشه و اونا رو پارس میکنه.
    برای درس کامپایلرم میخوام
    والا اون برنامه yacc كه من استفاده ميكنم براي تبديل فايلهاي بازيهاي كنسوله psp است و به ترجمه ارتباطي نداره . با عرضه پوزش

  7. #7
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    والا اون برنامه yacc كه من استفاده ميكنم براي تبديل فايلهاي بازيهاي كنسوله psp است و به ترجمه ارتباطي نداره . با عرضه پوزش
    من در مورد نحوا پارس کردن گرامرهای Lex و Yacc الان چیز زیادی یادم نیست ولی اگه تمایل داشتی با Flex و Biston کار کنی میتونم کمکت کنم یک راهنمای کوچیک هم نوشتم :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این هم بخشی از پروژه کامپایلرم :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در مرحله اول کافيه متن گرامر به زبان Flex را با توجه به راهنماي گرامر Flex در نوت پد تايپ کنيد ، فقط نکته اي که ميمونه اينه که خيلي عجله نکنين و برنامتون رو سطر به سطر بنويسين ، تست کنيد در صورت عدم بروز مشکل سطر بعدي رو اضافه کنيد و عمل تست رو تکرار کنيد (هلزوني در بحث مهندسي نرم افزار) در غير اينصورت ممکنه با اولين برنامه اي که با Flex مينويسين کلا از محيط اين برنامه فاصله بگيرين ! اجازه بدين صادقانه بگم Flex ابزار قدرتمنديه که ميتونين استفاده هاي گسترده اي ازش بکنين ولي محيط توسعه اي در اختيارتون قرار نميده مگر سطر فرمان بسيار خشک و با امکانات محدود ، پس سعي کنين عجولانه حرکت نکنين.

    بعد از اينکه برنامتون رو نوشتين بايد Save کنيد ، نکته اي که در بخش Save کردن وجود داره و حتما بايد رعايت بشه اينه که حتما گزينه All File رو در بخش Type وارد کنيد در غير اينصورت مثلا اگر نام A.L را براي فايل خروجي انتخاب کنيد برنامه بطور اتوماتيک نام A.L.Txt رو به فايلتون ميده که در فرآيند باز کردن با Flex به مشکل بر ميخورين.براي هماهنگي بهتر براي ادامه کار برنامه تون رو با نام A.l ذخيره کيند ، ميتونين براي شروع از اين برنامه براي تبديل استفاده کنين .

    اگر هنوز Flex رو دانلود نکردين از اينجا اين فايل رو دانلود کنين ، ابزارهاي مرتبط ديگه هم در اينجا قرار داره. خب ، نوبت به اجراي Flex ميرسه ، از منوي Start گزينه Run رو انتخاب کنيد (يا از کليد ترکيبي Start+R استفاده کنين) ، cmd رو تايپ کنيد و ok کنين .

    صفحه مشکي آشناي سطر فرمان داس (Command prompt) رو مشاهده ميکنين ، باري هماهنگي بيشتر جهت ادامه فايل Flex.Exe و فايل A.L رو دز ريشه درايو C کپي کنين . همانطور که در سطر فرمان اعلان شده دو دستور زير را تايپ کنيد تا به ريشه درايو C منتقل شويد.


    c:

    cd\


    نوبت به اجراي برنامه Flex ميرسه ! براي اجراي Flex ، دو راه وجود داره که راه اول بهيچ وجه توصيه نميشه ولي جهت آشنايي بد نيست بدونين !

    1-در روش اول کافيه بطور مستقيم فايل Flex.exe رو از طريق سطر فرمان باز کنين و سپس گرامر رو تا انتها بنويسين ، هر وقت هم که تموم شد کليد Ctr+Z (نشانگر پايان فايل) رو بزنين تا از ويرايشگر فرمان خارج شده و در صورت صحت گرامر فايل خروجي رو مشاهده کنين .

    2-در روش دوم اول همونطور که اين بخش مشاهده کرديد ابتدا يک فايل (پيشنهاد ميشه با پسوند L) ايجاد کرده و سپس فايل رو از طريق سطر فرمان به کامپايلر Flex پاس ميدين و در نهايت در صورتي که فايل مبداء وجود داشته باشه و گرامر صحيح باشه فايل خروجي ايجاد خواهد شد . در اين بخش هم مثل بخش اول (نوشتن گرامر) دقت لازمه رو به خرج بدين که تقريبا با تمام مشکلاتي که مواجه ميشين در اين دو بخش قرار دارن .

    نکاني در اين بخش ضروري ميرسه که به اختصار ميگم:

    الف- در صورتي که نام فايل مقصد ذکر نشه (فايلي به زبان C که قراره فايل خروجي باشه) ، نام Yylex.l بصورت نام پيش فرض درنظر گرفته خواهد شد.

    ب- در صورت عدم مواجهه با پيغام خطا ، ميتونين يکم خوشحال بشين ! از مرحله اول به سلامتي در رفتين و گرامرتون با گرامر استاندارد Flex مغايرت نداشته و فايل C با موفقيت ايجاد شده ، ولي خيلي هم خوشحال نشين که هنوز خيلي کار مونده !

    ج- حتما فايل قبلي که Flex ايجاد کرده رو در هر مرحله ايجاد کرده رو حذف کنين ، اين کار باعث ميشه تا در صورت عدم موفقيت در کامپايل فايل به زبان Flex و عدم توجه به اين مهم ، از اجراي فايل کامپايل شده قبلي جلوگيري شود .

    تقريبا کارتون تمومه فقط ميمونه بخش اجرا و اشکال زدايي ، براي اجرا به کامپايلر C يا C++ نياز دارين .

    به دو روش ميتونين از برنامه نوشته شده به اين طريق خروجي بگيرين :

    1- تعامل مستقيم : يعني بعد ار کامپايل برنامه با کامپايلر C يا ++C بصورت تعاملي گرامر زبون مورد نظرتون رو بنويسين و نتايج رو در خروجي مشاهده کنين ، در ذيل برنامه نمونه اي که در ابتداي اين نوشتار معرفي شده به روش تعاملي مشاهده ميکنين ، جهت پايان دادن به تعامل ميتونين کليد ترکيبي CTR+Z را بفشاريد.



    2- ارسال فايل به برنامه : روش کاربردي کار با Flex محسوب ميشه و پس از تست و اشکالزدايي عموما از اين روش استفاده ميشه تا گرامر مورد نظر رو به برنامه پاس بديم و خطاهاي گرامر رو بسته به شيوه طراحي مشاهده کنيم ، بعنوان مثال برنامه فوق که جنبه آموزشي دارد و به شيوه تعاملي نوشته شده را ميتوان به صورت زير از طريق سطر فرمان اجرا کرد و فايل گرامر را به برنامه پست کرد .

    دستور زير فايل a.c را تحليل لغوي کرده و در صفحه نمايش حاصل اين تحليل رو به نمايش ميزاره :
    a.exe<a.c

    و در نهايت ميتونين نتيجه تحليل لغوي رو در يک فايل بريزيد :
    a.exe<a.c>b.txt

  8. #8
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    ولی باز پیشنهاد میکنم اگه میتونی با ParserGenerator کار کن

  9. #9
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2007
    پست ها
    7

    پيش فرض

    ولی باز پیشنهاد میکنم اگه میتونی با ParserGenerator کار کن
    واقعا ممنونم از کمک عالی و مفیدتون.
    همه توضیحاتتون عالی بود اما استاد ما در این حد ازمون نخواستن

    فقط در همین حد که بدونیم گرامر و به چه شکل وارد کنیم تا خطا نگیره و پارس شه

  10. #10
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    واقعا ممنونم از کمک عالی و مفیدتون.
    همه توضیحاتتون عالی بود اما استاد ما در این حد ازمون نخواستن

    فقط در همین حد که بدونیم گرامر و به چه شکل وارد کنیم تا خطا نگیره و پارس شه
    اگه با Flex مشکل نداره بگو فکر کنم یه جزوه و بخشی از کتابم در این مورد هست واست اسکن کنم هر چند تو پروژه خودم کاملا مشخصه

صفحه 1 از 3 123 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •