PDA

View Full Version : ساخت کامپایلر



1485159
چهارشنبه 07 مرداد 1388, 13:43 عصر
من میخوام که یه کامپایلر ساده بنویسم به طوری که وقتی مینویسم که
x+y=w این دو عدد عدد رو در w بریزه
در ضمن باید متغیر ها رو هم قبلا معرفی کرده باشه
حالا چطوری باید اینکار رو بکنم نمیدوم.....
اگه یه کتابی چیزی به زبان فارسی معرفی کنید ممنون میشم.
آیا با دلفی میشه چنین کاری کرد؟

mamali24
چهارشنبه 07 مرداد 1388, 15:02 عصر
سلام یه کتاب هست به اسم :
C نویسنده اش آقای جعفرنژاد قمی توی اون یه کامپایلر بیسیک خودش نوشته:گیج:

1485159
پنج شنبه 08 مرداد 1388, 21:40 عصر
الگوریتم های شناخته شده ایی برای Parse کردن کد توسط کامپایلرها وجود دارند، که در کتب مربوط به طراحی کامپایلر به آنها پرداخته شده. در هر حال، این سوال را باید در تالار الگوریتم ها و کامپایلرها، که زیرمجموعه بخش مهندسی نرم افزار سایت هست، بپرسید.

خوب در باره اینکسی چیزی نمیدونه؟

mike
یک شنبه 11 مرداد 1388, 01:49 صبح
سلام
دوست عزیز اگر شما بخواید یه کامپایلر(ولو کوچولو) که قابلیت Parse کردن عبارات به معنای واقعی رو داشته باشه بنویسید بایستی با دروسی مثل نظریه زبانها و ماشینها و کامپایلر آشنا باشید که با توجه به سوالتون فکر می کنم که اینطور نیست.

ولی حدس می زنم که شما می خواید برنامه ای بنویسید که با دریافت یه عبارت ریاضی و مقدار متغیرهای اون،حاصل را محاسبه کنه،برای اینکار می تونید از روشهایی مثل Postfix یا prefix کردن عبارت استفاده کنید.
توی همین سایت اگه جستجو کنید نمونه های خوبی هست.

1485159
یک شنبه 11 مرداد 1388, 01:59 صبح
ولی حدس می زنم که شما می خواید برنامه ای بنویسید که با دریافت یه عبارت ریاضی و مقدار متغیرهای اون،حاصل را محاسبه کنه،برای اینکار می تونید از روشهایی مثل Postfix یا prefix کردن عبارت استفاده کنید.
توی همین سایت اگه جستجو کنید نمونه های خوبی هست.

آره ولی بلد نیست اگه میشه یه توضیحی بدین..
جست و جو کردم چیزی نبود..

1485159
پنج شنبه 15 مرداد 1388, 15:15 عصر
کسی چیزی نداره که بگه؟

tabriz
پنج شنبه 15 مرداد 1388, 15:54 عصر
یه کتابی هستش با

اسم : طراحی کامپایلر
نویسنده : مهندس ایرج صادقی
انتشارات : ناقوس

به طور کامل توضیح داده فکر کنم به دردت بخوره

1485159
چهارشنبه 04 شهریور 1388, 01:52 صبح
از دوستان تقاضا میکنم که نظر شخصی خودشون رو بگن.

alireza.alallah
سه شنبه 24 اسفند 1389, 22:11 عصر
سلام ، من با نظر دوستمون که گفتن از عبارت Postfix , .... استفاده کنید موافق هستم ، برای ساخت کامپایلر باید اصول کار کامپایلر که فاز های مختلفی تشکیل شده آگاهی داشت ( تحلیل گر لغوی ، تحلیل گر دستور، تحلیل گر معنایی ، تولیید کننده کد میانی ، بهینه ساز کد ، تولید کننده کد ) و به غیر از آن از مفاهیمی از جمله زبان ، گرامر ، ماشین های اتوماتا باید آگاهی داشته باشید، در این مورد کتاب لینز از درس نظریه و زبان ها و کتاب قلزم از درس کامپایلر می توان مطالعه کرد.
در مورد عبارات میاموندی و پیشوندی ،.. کتاب ساختمان داده درمورد پشته ها رو بخون !:لبخندساده:

IamOverlord
یک شنبه 30 مرداد 1390, 16:06 عصر
اونی که شما خواستید بنویسید شاید کار یه شبانه روز من باشه. دوستان خیلی بحث رو پیچیده می کنند الکی. می تونم بهتون برای شروع یه سری روش بگم تا یواش یواش راه بیافتید.

gbg
دوشنبه 31 مرداد 1390, 12:13 عصر
سلام
اگه فقط میخوای جمع و تفریق و ... رو انجام بده نیاز به کامپایلر نداره که
خیلی ساده می تونی برنامش رو بنویسی
من قبلا با C نوشتم و با دلفی هم میشه نوشت

IamOverlord
یک شنبه 06 شهریور 1390, 22:14 عصر
یه راهنمایی بهت می کنم : این کاری که گفتی مربوط به یه تکه ی ساده ای از BNF می شه، اول باید اون عبارتت رو تجزیه کنی، برای این کار در مورد BNF Parser Generator یه جست و جو کن کارت راحت شه.