آموزش حل مسئله با C++ – زبانهای سطح بالا و کامپایلر

آشنایی با کامپیوتر و برنامه نویسی ++ C

هم برنامه ای که باید دنبال شود و هم برخی داده ها برای برنامه ، گفته می شود که ما برنامه را روی داده ها اجرا می کنیم ، و گفته می شود که کامپیوتر برنامه را روی داده ها اجرا می کند. کلمه داده همچنین معنای کلی تری نسبت به آنچه که ما به آن ارائه کرده ایم دارد. در کلی ترین مفهوم آن ، به معنای هرگونه اطلاعاتی است که در دسترس کامپیوتر است. این کلمه معمولاً هم به معنای خاص و هم به معنای عام تر استفاده می شود.

زبانهای سطح بالا

زبانهای زیادی برای نوشتن برنامه وجود دارد. در این متن ما به زبان برنامه نویسی C ++ می پردازیم و از آن برای نوشتن برنامه های خود استفاده می کنیم. C ++ یک زبان سطح بالا است ، مانند اکثر زبان های برنامه نویسی دیگری که احتمالاً در مورد آنها شنیده اید ، مانند C ، C#، Java ، Python ، PHP ، Pascal ، Visual Basic ، FOrTrAN ، COBOl ، lisp ، schema و آدا زبانهای سطح بالا از جهات زیادی شبیه زبانهای انسانی هستند. آنها طوری طراحی شده اند که نوشتن برنامه در آنها برای انسان ها آسان و خواندن آنها برای انسان ها آسان باشد. یک زبان سطح بالا ، مانند C ++ ، حاوی دستورالعمل هایی است که بسیار پیچیده تر از دستورالعمل های ساده ای است که پردازنده کامپیوتر (CPU) قادر به انجام آن است.

نوع زبانی که یک کامپیوتر می تواند بفهمد ، زبان سطح پایین نامیده می شود. جزئیات دقیق زبانهای سطح پایین از نوع رایانه ای به نوع دیگر متفاوت است. یک دستورالعمل معمولی سطح پایین ممکن است شامل موارد زیر باشد:

 

این دستورالعمل ممکن است به این معنی باشد که شماره موجود در محل حافظه به نام X را به شماره موجود در حافظه به نام Y اضافه کنید و نتیجه را در محل حافظه به نام Z قرار دهید.” دستورالعمل نمونه بالا به آنچه زبان اسمبلی نامیده می شود نوشته شده است. اگرچه زبان اسمبلی تقریباً همان زبانی است که توسط رایانه قابل درک است ، اما قبل از اینکه کامپیوتر بتواند آن را بفهمد ، باید یک ترجمه ساده انجام دهد.

برای اینکه کامپیوتر از دستور زبان اسمبلی پیروی کند ، باید کلمات را به رشته های 0 و 1 تبدیل کند. به عنوان مثال ، کلمه ADD ممکن است به 0110 ، X ممکن است به 1001 ، Y به 1010 ، و Z به 1011 ترجمه شود. نسخه دستورالعمل بالا که کامپیوتر در نهایت از آن پیروی می کند ، به این صورت است:

 

دستورالعمل های زبان اسمبلی و ترجمه آنها به 0 و 1 در ماشین به ماشین متفاوت است.

گفته می شود برنامه هایی که به شکل 0 و 1 نوشته شده اند به زبان ماشین نوشته شده اند ، زیرا این نسخه برنامه ای است که کامپیوتر (دستگاه) در واقع آن را می خواند و دنبال می کند. زبان اسمبلی و زبان ماشین تقریباً یک چیز هستند و تمایز بین آنها برای ما مهم نخواهد بود. تفاوت مهم بین زبان ماشین و زبانهای سطح بالا مانند C ++ چنین است که هر برنامه زبان سطح بالا باید قبل از اینکه کامپیوتر بتواند برنامه را بفهمد و دنبال کند ، به زبان ماشین ترجمه شود.

کامپایلرها

برنامه ای که یک زبان سطح بالا مانند C ++ را به زبان ماشین ترجمه کند ، کامپایلر نامیده می شود. بنابراین کامپایلر یک نوع برنامه تا حدودی عجیب است ، زیرا ورودی یا داده های آن برنامه دیگری است و خروجی آن نیز برنامه دیگری است. برای جلوگیری از سردرگمی ، برنامه ورودی معمولاً برنامه منبع یا کد منبع و نسخه ترجمه شده توسط کامپایلر برنامه شی یا کد شی نامیده می شود. کلمه کد غالباً به معنای برنامه یا قسمتی از برنامه استفاده می شود و این استفاده به ویژه هنگام مراجعه به برنامه های شیء رایج است. حال ، فرض کنید می خواهید برنامه C ++ را که نوشته اید اجرا کنید. برای اینکه کامپیوتر از دستورالعمل های ++ C شما پیروی کند ، موارد زیر را دنبال کنید. ابتدا کامپایلر را با استفاده از برنامه C ++ خود به عنوان داده اجرا کنید. توجه داشته باشید که در این مورد ، برنامه C ++ شما به عنوان مجموعه ای از دستورالعمل ها مورد توجه قرار نمی گیرد. از نظر کامپایلر ، برنامه C ++ شما فقط یک رشته طولانی از کاراکترها است. خروجی یک رشته طولانی دیگر از کاراکترها خواهد بود که معادل زبان ماشین برنامه C ++ شما است. در مرحله بعد ، این برنامه زبان ماشین را بر اساس آنچه ما معمولاً داده های برنامه C ++ می پنداریم ، اجرا می شود. خروجی همان چیزی است که ما معمولاً به عنوان خروجی برنامه C ++ تصور می کنیم. اگر دو کامپیوتر در دسترس دارید ، همانطور که در صفحه 1.4 نشان داده شده است ، تصور آن ساده تر است. در واقع ، کل فرایند با استفاده از یک کامپیوتر دو بار انجام می شود.

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *