زبان برنامه نویسی سی/پیش درآمدی بر برنامه نویسی: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
خط ۱:
{{سرص|زبان برنامه نویسی سی|زبان برنامه نویسی سی/آشنایی با زبان های برنامه نویسی}}
امروزه بیشتر امور به صورت خودکار انجام میشود . بعد از انقلاب رنسانس و صنعتی در اروپا ، جهان به سمت ماشینی و روتین شدن پیش رفت . اما باعلم اختراع خازن و ساخت مقاومت کهالکترونیک باعث شکلشد گیری علم الکترونیک شدتا کارها با دقت و کلیت و سرعت بیشتری انجام می گرفتندپذیرند . اختراع ترانزیستور و در نهایت مدار های میکروسکوپی و کوانتومی ، منجر به اختراع کامپیوتر یا همان رایانه شد که قابل برنامه ریزی بود . اما این برنامه ریزی در ابتدا با ورق هایی پر از حفره انجام میشد که همانند خط بریل برای افراد نابینا ، می توانست به پردازشگر بفهماند که باید چه کاری انجام دهد .( به این ورقه‌ها punch card گفته می‌شد )
 
برخلاف یک دستگاه دیدی‌وی‌دی وی دی ،که تنها می تواندمی‌تواند کارهایی را که از پیش برای آن در نظر گرفته شده انجام دهد . اما؛ یک رایانه که امروز شامل تبلت هاتبلت‌ها و گوشی هایگوشی‌های همراه هوشمند و بسیاری دیگر از دستگاه هایدستگاه‌های الکترونیکی می شود می تواندمی‌تواند مدام برنامه هایبرنامه‌های مختلفی را دریافت کند و بر اساس آنها عمل کند . همان طور که گفته شد در ابتدای امر ، کار بسیار مشکل بود ، گرچه کارهایی که در آن زمان انجام میشدندمی‌شدند آنقدر ساده بودند که به هیچ وجه قابل مقایسه با پردازش هاییپردازش‌هایی که رایانهرایانه‌ها و هایبرنامه‌های امروزی انجام میدهندمی‌دهند نیستنیستند . اما این حفره ها به مثابه 0 و 1 بودند !
 
بلهرایانه یک دستگاه دیجیتالی است ؛ بر خلاف دستگاه‌های الکترونیکیِ قدیمی ، چونکه اساسآنالوگ پردازشبودند رایانهو دیجیتالسیگنال‌ها استاز طریق موج‌هایی که بر روی جریان الکتریکی ایجاد می‌شدند ، رفت و آمد می‌کردند ؛ در دستگاه‌های الکترونیکی دیجیتالی ، سیگنال‌ها با قطع و وصلِ جریان ، رفت و آمد می‌کنند . وجود جریان نماینده عدد ۱ و عدم وجود جریان نماینده عدد ۰ می‌باشند و بدین‌ترتیب با جریان الکتریکی که مرتب قطع-و-وصل می‌شود که تحت استانداردها و پروتکل‌های الکترونیکی است ، سیگنال‌ها رفت و آمد می‌کنند ( سیگنال به معنی پیام است که در علوم برق و الکترونیک به جریان الکتریکی یا امواج الکترومغناطیسی‌ای گفته می‌شود که دارای معنای خاصی باشد ) . بنابراین زبان واقعی ماشین و از جمله رایانه یا کامپیوتر ، زبان 0 و 1 می باشد که جهت سهولت در کار ، سیگنال ها را که همان اعداد0 و 1 می باشند و در مبنای دو هستند ( دودویی ) به مبناهای دیگری همچون ۴ ، ۸ ، ۱۰ و ۱۶ تبدیل می نمایند . اما این کار باز هم باعث سهولت مطلوبی نمی گردد . برنامه نویسی به زبان ماشین فوق العاده امری دشوار و وقت گیر است . اما فراموش نکنید که برای نوشتن یک سیستم عامل یا درایور یک قطعهدستگاه الکترونیکی ، مطمئناً باید از زبانزبان‌های ماشینسطح نیزپائین استفاده نمائید .و با سخت‌افزار ارتباط برقرار نمائید
 
در دهه های دور ، زبانی برای تلفیق با زبان ماشین و سهولت در برنامه‌نویسی ابداع شد که زبان اسمبلی ( Assembly ) نام داشتدارد و هنوز هم به کار می‌رود و این زبان دارای کدهایی می باشد که که هر کد نماینده یک عمل پردازنده رایانه ( واحد پردازشگر مرکزی Central Processing Unit - CPU ) می باشد و بدین ترتیب کار تا حدی آسان شد . بعد از گذشت زمان ، مهندسین دانش رایانه زبان های بسیار زیادی را ارائه کردند که همگی جزء زبان های سطح بالا به شمار می روند .
 
این نکته را فراموش نکنید که زبان ماشین برای هر پردازنده مجزا می باشد . به دنبال آن نیز زبان اصیلاسمبلی سی‌پی‌یو ( و نه اسمبلی سطح بالا ) نیز برای هر پردازنده جدا می باشد . به غیر از این دو زبان ، تمامی زبان هازبان‌ها ، سطح بالا به شمار می روند و اینکه گفته می شود زبانی سطح میانی دارد از منظر دانش رایانه ناصحیح می باشد ، شاید تنها بتوان اسمبلی های سطح بالا را سطح میانی پنداشت . مزیت زبان هایزبان‌های سطح پائین این است که شما هیچ گونه محدودیتی در نوشتن برنامه ندارید و از سیستم عامل گرفته تا برنامه های جانبی و، خدماتی ، کاربردی و ... همه را می توانید بنویسید . اما این نکته مهم همچنان وجود دارد که اگر برنامه ای را بخوایدبخواهید برای ماشین های مختلف بنویسید باید برای هر کدام از نو برنامه را نوشته و سپس اجرا کنید . از طرفی اگر اشتباهی مرتکب شوید ممکن است به سیستم آسیب وارد کنید . از زبان‌های سطح پائین ، معمولاً فقط در نوشتن میان‌افزار و کرنل سیستم عامل استفاده می‌شود
 
زبان های سطح بالا و خیلی سطح بالا ، زبان هایی هستند که مجموعه ای از نیاز های یک برنامه نویس را مهیا می کنند تا به راحتی و در کم ترینکم‌ترین زمان ، برنامه مورد نیاز خود را بنویسد و بدون نیاز به تغییر کد ( یا با کم‌ترین تغییر در کد ) آن را روی هر ماشینی پیاده سازی نماید . زبان هایی همچون Pascal ، Delphi ، ALGOL 68 ، Ada و در نهایت زبان C و خانواده آن که شامل Objective -C و C++ و C# می شود و بسیاری از زبان ها که تأثیر گرفته از سی هستند و یا در زبان سی نوشته شده اند همگی زبان های سطح بالا هستند و زبان هایی همچون COBOL ( کوبول ) یا Python ( پایتون ) زبان های خیلی سطح بالا محسوب می شوند . با نوشتن برنامه ، شما قابلیت این را به رایانه می دهید تا به صورت روتین کارهای مورد نیاز یا مد نظر شما را به صورت روتین انجام دهد .
 
زبانزبان‌های هایبرنامه‌نویسی برنامهبا نویسیکمک دستورها و عملگرها و داده‌ها ، امکاناتی را نظیر پردازش بر روی اعداد ، حروف و متون و، برقراری ارتباط با سخت افزار و درارتباط ادامهبا خروجی هاورودی‌ها و ورودیخروجی‌های هاسیستم صوتی ، تصویری و ...را فراهم می نمایدنمایند . خطا در زبان های سطح بالا توسط مجموعه برنامه های به کارگیرنده رفع می گردد و به عبارتی Debug می( شوندرفع واشکال از) طرفیمی‌شود ،. نباید فراموش کنید که تقریباً همه به کارگیرنده های زبانزبان‌های خیلی سطح بالا و بسیاری از زبان‌های سطح بالا تنها با سیستم عامل ( که مجموعه ای از نرم افزار ها و میان افزار ها جهت مدیریت سخت افزار و از طرفی فراهم نمودن محیطی برای ایجاد برنامه می باشد ) ارتباط دارند و آنچه خروجی شما از برنامه می باشدمی‌باشد ، زبان ماشین نیست . بلکه زبانی نزدیک به زبان ماشین می باشدمی‌باشد که مختص سیستم عامل بوده و کدهای خروجی را با توجه به شرایط ، اجرا می نماید .می‌نماید
[[رده:زبان برنامه نویسی سی]]