پارس‌کدرز چگونه کار می‌کند؟

از پارس‌کدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.

پارس‌کدرز خریداران یا کارفرمایان را به مجری‌ها /فریلنسرهای خبره‌ای متصل می‌کند که برای انجام پروژه آماده هستند.

طراحی کامپایلر ساده

چهار سال پیش منتشر شده

تعداد بازدید: 366

کد پروژه: 208486


شرح پروژه

پروژه شماره یک:

هدف از اين پروژه ساخت يك كامپايلر ساده براي يك زبان جديد است. براي توليد كامپايلر يك زبان جديد می‌توان از امكانات زبانهاي موجود بهره برداري كرد. به اين منظور ابتدا زبان جديد را به يكي از زبان C++ تبدیل كرده و با استفاده از كامپايلر زبان موجود، برنامه را به زبان ماشين و قابل اجرا ترجمه می‌كنيم. 

زبان ساده اي را با ساختار ذيل در نظر بگيريد. در اين عبارات operator يكي از عملگرهاي + ,/ ,* , - و operand  شناسه‌ یا عدد است و num يك عدد صحيح است. 

operand = num 

operand = operand   operator   operand   

همچنین دستور in عددی را از کاربر خوانده و در متغیر قرار می دهد دستور out مقدار متغیری را نشان می دهد. ساختار این دستورات به صورت زیر است:

in     operand

out   operand

برنامه اي بنويسيد كه عبارات با ساختارهای فوق را از یک فایل بخواند و اين عبارات را به زبان C++ ترجمه كند. به عنوان مثال اگرورودي، عبارات ذيل باشند. 

A = 2

B =3

C= A+B

B=2

A= B * C

برنامه‌اي به زبان C++ به صورت ذيل توليد می‌شود. 

#include<iostream.h>

int main()

{

int A,B,C,D;

A=2;

B=3;

C=A + B;

B=2;

A= B * C;

cout<<A;

return 0;

}

با كامپايل اين برنامه و اجراي برنامه، عدد 10 چاپ خواهد شد كه نتيجه برنامه مبدا است. 

و در ادامه ، برنامه‌هاي مربوط به توليد مفسر و كامپايلر را طوري تغيير دهيد كه اگر در برنامه ورودي خطايي وجود داشت آن را گزارش كند. به عنوان مثال هر دو برنامه بايد با دريافت عبارات ذيل پيغام خطاي مناسب ارائه كنند.

A = 2 * 4

B =3  

C= A %  B

B=2

A= B * C

در اين عبارات استفاده از % غير مجاز است و همچنين انجام عمليات مستقيم روي اعداد نيز غير مجاز است.

پروژه شماره دوم: 

هدف از اين پروژه ساخت يك مفسر ساده براي يك زبان است. زبان ساده اي را با ساختار ذيل در نظر بگيريد. در اين عبارات operator يكي از عملگرهاي + ,/ ,* , - و operand  شناسه‌ یا عدد است و num يك عدد صحيح است. 

operand = num 

operand = operand   operator   operand   

همچنین دستور in عددی را از کاربر خوانده و در متغیر قرار می دهد دستور out مقدار متغیری را نشان می دهد. ساختار این دستورات به صورت زیر است:

in     operand

out   operand

برنامه اي بنويسيد كه عبارات با ساختارهای فوق را از یک فایل بخواند عمليات ها را انجام داده نتیجه را نمایش دهد.  به عنوان مثال اگر ورودي عبارات ذيل باشد برنامه عدد 10 را چاپ مي‌كند. 

A = 2

B =3

C= A+B

B=2

A= B * C

برنامه به زبان c#نوشته شود.

مهارت ها و تخصص های مورد نیاز


مهلت برای انجام

2روز

وضعیت مناقصه

بسته


درباره کارفرما

عضویت چهار سال پیش

1 پروژه ثبت شده ،
0 پروژه در حال انجام ،
0 پروژه آماده دریافت پیشنهاد ،
نرخ پذیرش پیشنهاد 0%

برای پیدا کردن پروژه‌های مشابه ثبت نام کنید و پروفایل خود را بسازید.

ورود با گوگل
یا
نام نباید خالی باشد.
نام خانوادگی نباید خالی باشد.

نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟

سفارش پروژه مشابه

نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟

سفارش پروژه مشابه

قادر به انجام این پروژه هستید؟

ثبت نام کنید

متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصت‌های متعددی در سایت موجود می‌باشد.

سری به پروژه‌های مشابه بزنید

روش کار در پارس‌کدرز

به رایگان یک حساب کاربری بسازید

مهارت‌ها و تخصص‌های خود را ثبت کنید، رزومه و نمونه‌کارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.

به شیوه‌ای که دوست دارید کار کنید

برای پروژه‌های دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصت‌های شغلی منحصر به فرد دسترسی پیدا کنید.

با اطمینان دستمزد دریافت کنید

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

می‌خواهید شروع به کار کنید؟

یک حساب کاربری بسازید


بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارت‌های شما است.

پیدا کردن کار (پروژه)

تماشای دمو روش کار