براي نوشتن برنامه هاي كامپيوتري، از زبان هاي برنامه نويسي استفاده مي كنيم. گرچه در حال حاضر زبان هاي برنامه نويسي بسياري وجود دارند، اما آنچه كه امروزه بصورت متداول تري مورداستفاده قرار مي گيرد، زبان هاي سطح بالاهستند. براي درك مزاياي زبان هاي سطح بالا، ابتدا بايد نحوه ارتباط با كامپيوتر را بفهميم.
زبان ماشين
زبان بومي يك كامپيوتر، زبان ماشين است. هريك از دستورات زبان مجموعه اي از صفرها و يك هاست كه عملكرد خاصي را مشخص كرده و سلولهايي از حافظه را كه طي آن عملكرد مورد استفاده قرار ميگرند تعريف مي كند. به عنوان مثال اگرمعادله جبري cost=price + tax را بخواهيم با يك برنامه ماشين نشان دهيم. به دستوراتي نظير اين دستور نياز خواهيم داشت:
۰۰۱۰ ۰۰۰۰ ۰۰۰۰ ۰۱۰۰
۰۱۰۰ ۰۰۰۰ ۰۰۰۰ ۰۱۰۱
۰۰۱۱ ۰۰۰۰ ۰۰۰۰ ۰۱۱۰
در هر يك از دستورات زبان ماشين، عملياتي كه بايد انجام شود و آدرسي كه داده هاي آن مورد پردازش قرار مي گيرند، بصورت اعداد دودويي نوشته مي شوند. گرچه كامپيوتر به راحتي مفهوم دستورات فوق را درك مي كند ولي آنها براي اكثر مردم نامفهومند.
زبان هاي سطح بالا
هنگام نوشتن برنامه ها در زبان سطح بالا(High-level language)، از دستورالعمل هايي استفاده مي كنيم كه شبيه مكالمات روزمره هستند. در پاسكال از دستور cost:=price + tax استفاده مي كنيم كه شباهت زيادي به فرمول مبحث قبلي دارد. معني اين دستور اين است كه «مقادير price و Tax را با يكديگر جمع كن و حاصل را در متغير cost قرار بده » هنگام نوشتن برنامه اي در زبان سطح بالا، با استفاده از اسامي توصيفي مي توانيم به داده هايي كه در حافظه ذخيره شده اند مراجعه كنيم از جمله نام هاي توصيفي، price و cost و tax مي باشند. بدين ترتيب نيازي نخواهد بود كه محتويات سلول هاي حافظه مستقيما بازيابي شوند. براي توضيح نوع عملي كه مي خواهيم انجام شود نيز مي توانيم از علائم متداول ( نظير + ) استفاده كنيم.
يك زبان سطح بالا يك استاندارد زبان دارد كه قواعد آن زبان را شرح مي دهد. هر يك از دستورات زبان سطح بالا بايد مطابق با قواعدي باشد كه در استاندارد زبان مشخص شده است. اين قواعد بسيار دقيق هستند، يعني براي دستوراتي كه تقريبا درست هستند، جايي وجود ندارد.
برنامه هايي كه مطابق با اين قوانين نوشته شده اند، از قابليت انتقال برخوردار خواهند بود، به اين معنا كه بدون انجام تغييرات مي توان آنها را روي كامپيوتر مختلف اجرا كرد. در حالي كه يك برنامه زبان ماشين تنها روي يك نوع كامپيوتر قابل اجراست.
زبان هاي پاسكال ، فرترن، بيسيك، كوبول(Cobol) ، c ،c++ ، از جمله زبان هاي برنامه نويسي سطح بالا هستند. گرچه هر يك از اين زبان ها براي هدف خاصي طراحي شده اند، ولي همه ي آنها براي نوشتن نرم افزار هاي كاربردي (application software) مختلف به كار مي روند. كه نرم افزاري است كه براي كاربر كامپيوتر كاري را انجام مي دهد. زبان هاي برنامه نويسي c و c++ معمولا براي نوشتن نرم افزار هاي سيستم (system software) مورد استفاده قرار مي گيرند. نرم افزار سيستم نرم افزاري است كه عمليات لازم براي هدايت سيستم كامپيوتر را انجام مي دهد
|
اسكال |
زباني آموزشي است كه براي فراگيري برنامه سازي به شكلي دقيق و منظم به كارمي رود. |
|
فرترن |
براي مهندسي و كاربرد هاي عملي مورد استفاده قرار مي گيرد. |
|
بيسيك |
زباني ساده كه براي كاربرد دانش آموزان دبستاني طراحي شده است. |
|
كوبول |
براي برنامه سازي تجاري مورد استفاده قرار مي گيرد. |
|
C |
براي نوشتن نرم افزار هاي سيستم به كار مي رود. |
|
C++ |
نسخه توسعه يافته اي از c است كه برنامه سازي شيء گرا را حمايت مي كند. |
ارتباط ميان زبان ماشين و زبان سطح بالا
چون كامپيوتر فقط برنامه هايي را درك مي كند كه به زبان ماشين نوشته شده باشند، بنابراين هر يك از دستورالعمل هاي يك زبان سطح بالا قبل از اين كه قابل اجرا باشند بايد به زبان ماشين تبديل شوند. برنامه اصلي زبان سطح بالا، برنامه منبع (sourceprogram) ناميده مي شود ، نسخه زبان ماشين اين برنامه، برنامه ي مقصود (programobject) نام دارد. در مبحث بعد مراحل لازم براي پردازش يك برنامه ي زبان سطح بالا را شرح خواهم داد.



