مقدمهای بر زبان C
زبان C
C یک زبان برنامه نویسی سطح متوسط است که توسط دنیس ریچی در اوایل دهه 1970 در حین کار در آزمایشگاه AT&T Bell در ایالات متحده توسعه یافت. هدف از توسعه آن در زمینه طراحی مجدد سیستم عامل UNIX برای امکان استفاده از آن در چندین رایانه بود.
قبلاً زبان B (BCPL) برای توسعه سیستم UNIX استفاده می شد. B به عنوان یک زبان سطح بالا، امکان تولید کد بسیار سریعتر را نسبت به زبان اسمبلی فراهم کرد. با این حال، B دارای اشکالاتی بود زیرا انواع داده ها را درک نمی کرد و استفاده از “ساختارها” را ارائه نمی داد.
این اشکالات سبب شد تا ریچی به فکر توسعه یک زبان برنامه نویسی جدید به نام C بیافتد. او بیشتر گرامر زبان B را حفظ کرد و انواع داده ها و بسیاری تغییرات مورد نیاز دیگر را اضافه کرد. در نهایت، C در طول سال های 1971-1973 توسعه یافت، که شامل عملکردهای سطح بالا و ویژگی های دقیق مورد نیاز برای برنامه ریزی یک سیستم عامل بود. از این رو، در نهایت بسیاری از اجزای UNIX از جمله هسته UNIX در C بازنویسی شدند.
مزایای زبان C
- به عنوان یک زبان سطح متوسط، C ویژگی های هر دو زبان سطح بالا و سطح پایین را ترکیب می کند. می توان از آن برای برنامه نویسی سطح پایین مانند برنامه نویسی برای درایورها و هسته ها استفاده کرد و همچنین از عملکردهای زبان های برنامه نویسی سطح بالا مانند اسکریپت نویسی برای برنامه های نرم افزاری و غیره پشتیبانی می کند.
- C یک زبان برنامه نویسی ساخت یافته است که به یک برنامه پیچیده اجازه می دهد تا به برنامه های ساده تری به نام توابع تقسیم شود. همچنین امکان جابجایی آزاد داده ها در این توابع را فراهم می کند.
- ویژگیهای مختلف C از جمله دسترسی مستقیم به APIهای سختافزار سطح ماشین، وجود کامپایلرهای C، استفاده قطعی از منابع و تخصیص حافظه پویا، زبان C را به گزینهای بهینه برای برنامههای اسکریپتنویسی و درایورهای سیستمهای تعبیهشده تبدیل میکند.
- زبان C به حروف بزرگ و کوچک حساس است.
- C بسیار قابل حمل است و برای برنامه های کاربردی سیستم اسکریپت که بخش عمده ای از سیستم عامل ویندوز، یونیکس و لینوکس را تشکیل می دهند استفاده می شود.
- C یک زبان برنامه نویسی همه منظوره است و می تواند به طور موثر روی برنامه های کاربردی سازمانی، بازی ها، گرافیک ها و برنامه هایی که نیاز به محاسبات و غیره دارند کار کند.
- زبان C دارای یک کتابخانه غنی است که تعدادی توابع داخلی را ارائه می دهد. همچنین تخصیص حافظه پویا را ارائه می دهد.
- C الگوریتمها و ساختارهای داده را به سرعت پیادهسازی میکند و محاسبات سریعتر را در برنامهها تسهیل میکند. این امکان استفاده از C را در برنامه هایی که به درجات بالاتری از محاسبات نیاز دارند مانند MATLAB و Mathematica را ممکن کرده است.
با استفاده از این مزایا، C غالب شد و به سرعت فراتر از آزمایشگاههای بل گسترش یافت و جایگزین بسیاری از زبانهای معروف آن زمان، مانند ALGOL، B، PL/I، FORTRAN و غیره شد. زبان C در طیف گستردهای از پلتفرمها در دسترس است. ، از میکروکنترلرهای embedded تا ابررایانه ها.
زبان C اساس بسیاری از زبان ها از جمله C++، C–، C#، Objective-C، BitC، C-shell، csh، D، Java، JavaScript، Go، Rust، Julia، Limbo، LPC، PHP، Python، Perl، Seed7، Vala، Verilog و بسیاری از زبان های موجود دیگر است.
زبان C ويژه میکروکنترلرها
زبان C ارتباط نزدیکی با زبان اسمبلی دارد و جزء زبان های میانی است اما با توجه به کارآیی بالای این زبان در برنامه نویسی میکروکنترلرها، آن را می توان یک زبان قدرتمند و سطح بالا دانست. این زبان قابلیت انعطاف پذیری را دارد و تمام ضعف های زبان اسمبلی را پوشش می دهد و با وجود اینکه تعداد کلمات کلیدی در این زبان بسیار کمتر از از زبان بیسیک بسیار قدرتمندتر است. شرکت های سازنده میکروکنترلر بعد از طراحی تراشه، کامپایلر (مفسر) آن را به بازار عرضه می کنند معمولا برنامه نویسی استاندارد میکروکنترلرها به زبان های اسمبلی، C، بیسیک و پاسکال وجود دارند که ارتباط بسیار نزدیکی با معادل این زبان ها در کامپیوتر دارند. به عنوان مثال زبان C مبتنی بر میکروکنترلر تمام قوانین زبان سیستم را می پذیرد و مواردی به آن اضافه شده است. شما برای یادگیری زبان C میکروکنترلر میبایست زبان C سیستم را فرابگیرید اما فراموش نکنید که برخی از توابع و فرمول های الحاقی (سرآمد) فقط برای زبان C کامپیوتر کارایی دارد در این آموزش شما با زبان C مخصوص میکروکنترلر ها آشنا می شوید. یکی از مزایای این زبان این است که فرقی در برنامه نویسی بین میکروکنترلرها وجود ندارد و این فقط قابلیتهای کامپایلرها و رجیسترهای تراشه هاست که برنامه نویسی آنها را از هم متمایز ساخته است.
در این مقاله مقدمه ای از زبان C و مزایای آن را ذکر کردیم. در مقالات بعدی از همین بخش به آموزش زبان C ویژه میکروکنترلرها خواهیم پرداخت.
- لینک دانلود به صورت پارت های 1 گیگابایتی در فایل های ZIP ارائه شده است.
- در صورتی که به هر دلیل موفق به دانلود فایل مورد نظر نشدید به ما اطلاع دهید.
پسورد فایل : پسورد ندارد گزارش خرابی لینک
دیدگاهتان را بنویسید