PDA

View Full Version : زبان سی رو با چی نوشتن ؟؟؟ منظورم اینه ....



mohammad_amini
شنبه 25 آبان 1392, 18:38 عصر
سلام

کسی هست که بدونه زبان سی رو با چی نوشتن ؟؟؟

منظورم اینه که اگه با یه زبان دیگه طراحی شده اون زبان چیه و کامپایلرش چی بوده ؟؟؟ :متفکر::متفکر::متفکر:

یا اگه این طور نیست اون برنامه ای ( یا کامپایلری ) که سی ( C ) رو باهاش نوشتن چی بوده .


ممنون می شم از توجهتون :لبخند: :تشویق: :لبخند: :تشویق: :لبخند:

mehdy.programmer
شنبه 25 آبان 1392, 20:09 عصر
اگه اشتباه نکنم (استاید اگه اشتباه کردم بگید لطفا) خوب سوال شما فک کنم اینه که اولین زبون برنامه نویسی یا اولین کامپایلر چطوری به وجود اومد؟ خوب کار زبون های برنامه نویسی و کامپایلر هاشون اینه که چیز هایی رو که ما نوشتیم، به زبون ماشین تبدیل کنن، طبیعتا به نظرم اولین زبون ها رو هم با همون زبون ماشین نوشته باشن.

mohammad_amini
سه شنبه 28 آبان 1392, 22:00 عصر
ممنون از توجهتون

ولی منظورم این نبود .

هر زبان برنامه نویسی سطح بالا که در نظر بگیرید بعد از یه سری از تحلیل ها که روی برنامه های نوشته شده به وسیله ی آن ها انجام می دن ، بعدش کدهای اونو به زبان سطح ماشین تبدیل می کنه .

من منظورم اینه که اون زبانی که کامپایلر زبان سی رو باهاش نوشتن چی بوده ؟؟؟

مسعود اقدسی فام
سه شنبه 28 آبان 1392, 23:13 عصر
فک کنم کامپایلر C مستقیم با اسمپلی نوشته شده. خود اسمبلی هم اصولا مستقیم با زبان ماشین نوشته شده. زبانی قبل اسمبلی وجود نداشته که بخواد با اون نوشته بشه. اسمبلی صرفا یه نگاشت بین اعداد هگزادسیمال دستوری و عبارت‌هایی مثل ADD و MOV برقرار کرده. یه دلیل اینکه C و ++C قدرتمند هستن همینه که مستقیم با اسمیلی نوشته شده و حتی می‌شه داخل کد C یا ++C از کد اسمبلی هم استفاده کرد.

habibb
چهارشنبه 29 آبان 1392, 00:40 صبح
تا اونجایی که می دونم در گذشته سیستم عامل ها رو با زبان اسمبلی می نوشتن.
بعد شرکت بل به کمک دنیس ریچی 1972 سیستم عامل unix رو با زبان C نوشتن.
اگر بفهمید زبان AlGOL 1960 چه گونه ساخت شد .

RoboC0der
چهارشنبه 29 آبان 1392, 01:30 صبح
طراحی کامپایلر+اسمبلی

http://en.wikipedia.org/wiki/C_(programming_language)
کتاب Let's Build Compiler نوشته Jack Crenshaw توصیه میشه.

habibb
چهارشنبه 29 آبان 1392, 01:40 صبح
یک کامپایلر خود برنامه‌ای است که توسط زبان پیاده ساز تولید شده‌است. اولین کامپایلر خود محور که می‌توانست کد خود را کامپایل کند برای زبان Lisp و توسط Hart و Levin در سال ۱۹۶۲ و در دانشگاه MIT ایجاد شد. در دهه ۷۰ از زبانهای سطح بالایی مثل پاسکال و سی جهت نوشتن کامپایلرها استفاده شد. ساخت کامپایلرهای خود محور دارای مشکل راه اندازی است، چونکه هر کامپایلری باید توسط کامپایلر نوشته شده‌ای به زبان دیگر کامپایل شود یا برای این مشکل دست به دامن مفسری بشود.




GCC از ابتدا مخفف Gnu C Compiler بود ولی از زمانی که توانست زبانهای دیگری غیر از C از قبیل C++،Ada،Java،Objective C و Fortran را کامپایل کند به Gnu Compiler Collection تغییر نام داد. پدید آورنده اصلی GCC ریچارد استالمن است کسی که بنیانگذار پروژه Gnu محسوب می‌شود. نخستین نسخه GCC در سال ۱۹۸۷ انتشار یافت که یک پیشرفت مهم محسوب می‌شد زیرا محصول جدید اولین کامپایلر بهینه سازی شده قابل حمل ANSI C به عنوان یک نرم‌افزار آزاد محسوب می‌شد. در سال ۱۹۹۲ نسخه ۲٫۰ کامپایلر GCC عرضه شد. نسخه جدید قابلیت کامپایل کدهای ++C را نیز داشت. در سال ۱۹۹۷ یک انشعاب آزمایشی در GCC به نام EGCC به منظور بهینه سازی کامپیایلر و پشتیبانی کامل تر از ++C ایجاد شد. در ادامه EGCC به عنوان نسل بعدی کامپایلر GCC پذیرفته شد و تکامل آن باعث انتشار نسخه سوم GCC در سال ۲۰۰۴ گردید. چهارمین نسخه از کامپایلر GCC در سال ۲۰۰۵ عرضه شد.