PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : کامپایلر زبان سی



y_dehgan
23-03-2008, 04:48
با سلام
من می خوام تو ویژوال سی یه برنامه بنویسم که توش یه کامپایلر زبان سی برای avr داره. چطوری می تونم این کار رو انجام بدم
ممنون

alitaroosheh
23-03-2008, 12:18
منظورتون رومتوجه نميشم يعني چي توش يه كامپايلر براي avr داره

ميخواين كامپايلر بنوسيد؟؟؟؟!!!!!!

saeed_niknami
23-03-2008, 21:52
با سلام
شما مي خواهين واسه كامپايلر تون يه پوسته بنويسين
خوب ميشه اين كار رو براحتي با دلفي و يا ويژوال بيسيك كرد
همون طور كه كد ويژن رو كردند يا وين اور
واسه برنامه نويسي ويژوال شما ام اف سي مي خواهي بنويسي يا اس دي كا ؟؟؟؟
بگين راهنمايي كنم

alitaroosheh
23-03-2008, 23:11
:k01: :k01:

باز هم سوالمو تكرار ميكنم

شما ميخواين يه كامپايلر سي بنويسيد براي avr؟

و به نظر دوستمون اين كار نداره؟؟؟

راستي منظور از پوسته چيه؟

منظورتون يه IDE و يه ويزارده؟؟؟

:k01: :k01: :k01: :k01: :k01:

alitaroosheh
28-03-2008, 13:49
كماكان منتظريم

saeed_niknami
30-03-2008, 21:21
اره
پوسته همون شل shell هستش
اما نوشتن اي دي اي ....؟؟؟؟؟

1nafar
31-03-2008, 00:46
اگه بتونی خصوصیات کامپایلر(ت) رو بگی میتونم کمک کنم

alitaroosheh
31-03-2008, 01:01
IDE همون محيط ويرايشه

اما اگه بتونيد كامپايلر بنويسيد خيلي كارتون درسته!!!!!!

فكرش رو بكنيد مثلا براي يه دستور if elseif else چند حالت وجود داره كه يه كاربر ميتونه بنويسه و فكر كنم با دستورات معمولي كه بلديم نشه از اين كارا رو به راحتي كرد
اقلا كار يكي دو نفر برنامه نويس حرفه اي هم نيست

اين رو هم ميتونيد به عينه ببينيد كه چند شركت هستن كامپايلر مينويسن

saeed_niknami
31-03-2008, 16:18
عاليه
مي خواهيم كامپايلر بنويسم :wink: 8O :o :o

alitaroosheh
01-04-2008, 00:21
[align=left:3dba198801]يكم فكر كنيد فقط يه دستور شرطي چه حالتهايي داره

به شكل ساده مثلا داريم :
if(a>100){...

يه حالت ديگه داريم :
if(!(a&50)){...

يه حالت ديگه داريم :
if (a>100 && b>200 || c==10.908){...

حالا يه شكل ديگه نگاه ميكنيم. يه تابع داريم به صورت زير:
float function(int a,float c,int b){...

حالا اين شكلي اين تابع رو صدا ميكنيم: if (function(x,y,z)==12034.904375 && function(x-z,y*14.34-x,pow(x,z))>=0.923971){...

فقط دستور شرطي بالا رو با ويژوال سي بنويسيد كه حالتهاي مختلف رو در نظر بگيره و براي 8051 كد درست كنه!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

در واقع با دستور هاي اسمبلي 8051 الگورتمي توي سي بنويسيد كه شرطي بالا رو ايجاد كنه

اين ها حالت هاي معمولي استفاده از يه دستور شرطيه كه از اين وحشتناك تر استفاده ميشن و من چند نمونه ساده از اون رو اوردم
حالا به نظر شما پياده سازي فقط يكي از اين حالتها به زبان اسمبلي چه جوريه (ميشه ولي اذيت كنندست نه) و
از اون بد تر بخوايد به كامپيوتر بگيد اين الگوريتم رو بسازه و كد سيستم رو واسه اون ميكروكنترلر بسازه
يعني با دستورهايي كه در اسمبلي داريم بخواييم اين دستور رو پياده كنيم
در هر حال فكر كنم خيلي درست نباشه به همين راحتي از نوشتن كامپايلر صحبت بكنيم[/align:3dba198801]

y_dehgan
01-04-2008, 02:27
منظورم اینه که یه محیط گرافیکی توی ام اف سی که با استفاده از رابط های ویژوال دستوراتی تولید بشه و بعد هم یه فایل هگز ازش بسازه بعد باهاش میکرو رو پروگرام کنم
ممنون

alitaroosheh
01-04-2008, 14:24
باز هم شد همون موضوع بالا

شما الگوريتمي از توليد يه دستور سي داريد كه با اسمبلي پياده سازي بشه
و الگوريتمي داريد براي اينكه حالتهاي مختلف استفاده از يه دستور توي سي رو با ويژوال در نظر بگيريد و از اون استفاده كنيد براي توليد كد

فقط برنامه فرانكلين براي 8051 يادمه كه خروجي اسمبلي ميداد شايد بتونيد براي پيشرفت كار يه دستور سي رو ببينيد چه جوري به اسمبلي پياده ميشه

كار سخت كه چه عرض كنم كاري رو ميخوايد انجام بديد كه تنهايي محاله

saeed_niknami
01-04-2008, 22:00
ببخشين win avr & iar & codevision كارتو راه نمي اندازه