زبان برنامه نویسی پاسکال
مزایا و معایب زبان برنامه نویسی پاسکال
تاکنون دهها زبان برنامه نویسی مختلف در جهان به وجود آمده و از بین رفته اند که هر یک از آنها دارای مزایا و معایبی بوده اند ، زبان پاسکال نیز همانند دیگر زبانهای برنامه نویسی دارای مزایا و معایبی است . مزایای زبان پاسکال از معایب آن بیشتر است و این امر باعث دوام چند دههای آن شده است .
از مهمترین مزایای پاسکال ، قابل فهم بودن دستورات آن میباشد ، چرا که دستورات پاسکال به زبان محاورهای نزدیک هستند . مزیت دیگر زبان پاسکال ، داشتن توابع کتابخانهای است که باعث ایجاد سرعت و سهولت در برنامه نویسی میگردد . توابع کتابخانهای در حقیقت زیر برنامههایی هستند که از قبل نوشته شده اند و شما میتوانید از آنها در برنامههایتان استفاده کنید . برای مثال اگر بخواهید قدرمطلق عددی را به دست آورید میتوانید از تابع مربوطه که از قبل نوشته شده است ، استفاده کنید . همچنین از دیگر مزیتهای زبان پاسکال پشتیبانی از انواع اطلاعات میباشد و این مزیتی است که باعت برتری زبان پاسکال نسبت به بسیاری از زبانهای برنامه نویسی میگردد . زبان پاسکال از اعداد صحیح ، اعداد اعشاری ، کاراکترها ، مجموعه ها ، آرایه ها و . . . پشتیبانی میکند . ساخت یافته (structure base) بودن زبان پاسکال نیز از مهمترین مزایای آن است . برنامه ساخت یافته به برنامهای گفته میشود که از بلوکهای پی در پی یا متداخل تشکیل شده باشد .
برنامه نویسی ساخت یافته دارای مزایای متفاوتی است :
-
- با توجه به اینکه برنامه به قسمتهای کوچک تر تقسیم بندی میگردد ، بنابراین اشکال زدایی (debugging) آن ساده تر خواهد بود .
- خوانایی و درک برنامه ساده تر میگردد.
- اعمال تغییرات در برنامه ساده تر انجام میگیرد.
آخرین مزیتی را که میتوان مورد اشاره قرار داد ، داشتن محیط مجتمع برنامه نویسی است که به طور خلاصه به آن IDE گفته میشود . مترجم پاسکال قابلیت ترجمه برنامهها را در دو حالت مجتمع و خط فرمان دارا میباشد . در حالت اول میتوان برنامه را درون ویراستار مخصوص پاسکال نوشته و اجرا کرد . این ویراستار دارای امکانات ویرایشی متعددی میباشد که موجب ایجاد سرعت و سهولت در نوشتن برنامه میگردد . در حالت دوم میتوان برنامه را با استفاده از هر ویراستاری تهیه نموده سپس عمل ترجمه را از طریق خط فرمان سیستمعامل ویندوز انجام داد. پس از ذکر مزایای زبان پاسکال بهتر است به معایب آن اشاره داشته باشیم . نداشتن قابلیت انعطاف ، نداشتن قابلیت انتقال و عدم امکان تعریف رکورد با طول متغیر ، از جمله معایب این زبان هستند .
اجزای تشکیل دهنده یک برنامه
یک برنامه به زبان پاسکال از قسمتهای مختلفی تشکیل میشود . کوچکترین واحدهای معنی دار در زبان پاسکال توکن ( Token ) نامیده میشود که عبارت اند از :
- حروف : حروف الفبای بزرگ ( از A تا Z ) و حروف الفبای کوچک ( a تا z )
- ارقام مبنای 10 : ارقام 0 تا 9
- ارقام مبنای 16 : ارقام 0 تا 9 و حروف A تا F و یا a تا f
- کاراکترهای تکی : + ، - ، / ، * ، = و . . .
- جفت کاراکترها : مانند <> ، => ، =< ، = و . . .
- شناسه ( Identifier ) : از شناسهها برای نام گذاری استفاده میشود . شناسه ترکیبی از حروف ، ارقام و کاراکتر زیر خط (-) است که میتواند دارای طول دلخواهی باشد اما پاسکال فقط 63 کاراکتر اول را در نظر خواهد گرفت . شناسه حتماً باید با یک حرف یا علام زیر خط (-) آغاز شود . شناسههای به دو دسته تقسیم میشوند :
-
- الف ) شناسههای استاندارد : این شناسهها از قبل در پاسکال تعریف شده اند برای نمونه میتوان به Write و Read اشاره نمود .
- ب ) شناسههای غیر استاندارد : این شناسهها به وسیله کاربر به طور مجزا تعریف میشوند به همین دلیل به آنها User defined گفته میشود .
لازم به ذکر است که پاسکال در تعریف شناسهها تفاوتی میان حروف بزرگ و کوچک قائل نمیشود بنابراین شناسههای counter و COUNTER با یکدیگر معادل اند .
- برچسب ( label ) : از برچسب برای مشخص نمودن خطوط خاصی از برنامه استفاده میشود . با استفاده از دستور goto میتوان کنترل برنامه را به خط مشخصی از برنامه منتقل نمود . برچسبها میتوانند عدد صحیح در محدوده 0 تا 9999 و یا یک شناسه باشد .
- اعداد : اعداد میتوانند حقیقی یا صحیح ، مثبت یا منفی باشند . هرکدام به چند نوع تقسیم میشوند . باید توجه داشت که اعداد صحیح میتوانند از نوع هگزادسیمال نیز باشند که در این صورت باید اولا با علامت $ شروع شوند و ثانیا طول آن نباید از هشت رقم هگزادسیمال بیشتر باشد بنابراین محدوده قابل قبول برای اعداد صحیح هگزادسیمال از 00000000$ تا FFFFFFFF$ است و در ضمن نباید شامل علامت + یا – باشند .
- ثابت های رشته ای ( string constants ) : ثابت رشتهای ، عبارت از تعدادی کاراکتر است که درون دو علامت آپوستروف ( ' ) قرار میگیرند . استفاده از کاراکترهای کنترلی ( کاراکترهایی که دارای کد ASCII تا 30 میباشند ) در یک ثابت رشتهای مجاز است اما استفاده از کاراکترهای آپوستروف ( ' ) و carriage Return ( <cr> ) غیرمجاز است . همچنین در صورتی که از علامت # به همراه یک عدد مثبت بین 0 تا 255 استفاده شود باعث جایگزینی کاراکتر متناظر با عدد مربوط در جدول کدهای ASCII خواهد شد . کلمات رزرو شده ( Reserved words ) : به مجموعهای از کاراکترها اطلاق میشود که برای پاسکال دارای معنای خاصی میباشند و هرگز نمیتوان از آنها به عنوان شناسه غیراستاندارد استفاده نمود .
ساختار کلی برنامه در زبان پاسکال
اجزای اصلی یک برنامه به زبان پاسکال عبارت اند از:
- عنوان برنامه ( program Heading )
- قسمت اطلاعات (Data section )
- قسمت دستورالعملها ( code section )
- عنوان برنامه شامل دو قسمت زیر است:
- نام برنامه ( program Name )
- فرمانهای کامپایلر ( compiler Directives ): این قسمت که به عنوان اولین بخش از ساختمان یک برنامه در نظر گرفته میشود محل قرار گرفتن نام برنامه به همراه پارامترهای ورودی و خروجی و همچنین فرمانهای کامپایلر که کنترل عمل کامپایل شدن برنامه را برعهده دارند میباشد . قسمتهای الف و ب هر دو اختیاری بوده ، وجود آنها باعث روشن شدن هر چه بیشتر وظیفه برنامه و شرایط ترجمه آن به زبان ماشین میباشد.
- قسمت اطلاعات ( Data section ): این قسمت خود شامل 4 قسمت دیگر میباشد که عبارت اند از:
- اعلان ثابتها Constant Declaration
- اعلان انواع اطلاعات
- اعلان متغیرها Variable Declatration
- اعلان برچسبها Label Declatration
- در این قسمت دستورات به ترتیب اجرا مرحله به مرحله گنجانیده میشوند . این قطعه ، همواره شامل بلوک اصلی برنامه ( Main program Block ) بوده و میتواند در صورت لزوم شامل پروسیجرها و توابع نیز باشند . در بلوک اصلی برنامه که خود با کلمه رزرو شده begin شروع و با end ختم میگردد . دستورات عملیاتی مانند نسبت دادن مقادیر معلوم به متغیرها ، فراخوانی پروسیجرها و توابع اجرای حلقههای مختلف و غیره انجام میشود . این قسمت خود شامل سه قسمت دیگر میباشد که عبارت اند از:
- پروسیجرها ( procedures )
- توابع ( function )
- بلوک اصلی برنامه